Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
200 changes: 200 additions & 0 deletions .results.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,200 @@
{
"stats": {
"suites": 5,
"tests": 13,
"passes": 13,
"pending": 0,
"failures": 0,
"start": "2024-03-19T13:39:15.972Z",
"end": "2024-03-19T13:39:16.420Z",
"duration": 448
},
"tests": [
{
"title": "returns a distance in blocks",
"fullTitle": "index.js distanceFromHqInBlocks() returns a distance in blocks",
"duration": 1,
"currentRetry": 0,
"err": {}
},
{
"title": "returns a distance in blocks",
"fullTitle": "index.js distanceFromHqInBlocks() returns a distance in blocks",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "calculates distances below 42nd street",
"fullTitle": "index.js distanceFromHqInBlocks() calculates distances below 42nd street",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "returns a distance in feet",
"fullTitle": "index.js distanceFromHqInFeet() returns a distance in feet",
"duration": 1,
"currentRetry": 0,
"err": {}
},
{
"title": "returns a distance in feet",
"fullTitle": "index.js distanceFromHqInFeet() returns a distance in feet",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "calculates distances below 42nd street",
"fullTitle": "index.js distanceFromHqInFeet() calculates distances below 42nd street",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "returns the distance travelled in feet",
"fullTitle": "index.js distanceTravelledInFeet() returns the distance travelled in feet",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "returns a distance in feet",
"fullTitle": "index.js distanceTravelledInFeet() returns a distance in feet",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "returns distance when destination is below distance",
"fullTitle": "index.js distanceTravelledInFeet() returns distance when destination is below distance",
"duration": 1,
"currentRetry": 0,
"err": {}
},
{
"title": "gives customers a free sample",
"fullTitle": "index.js calculatesFarePrice(start, destination) gives customers a free sample",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "charges 2 cents per foot when total feet travelled is between 400 and 2000 (remember the first 400 feet are free!)",
"fullTitle": "index.js calculatesFarePrice(start, destination) charges 2 cents per foot when total feet travelled is between 400 and 2000 (remember the first 400 feet are free!)",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "charges 25 dollars for a distance over 2000 feet",
"fullTitle": "index.js calculatesFarePrice(start, destination) charges 25 dollars for a distance over 2000 feet",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "does not allow rides over 2500 feet",
"fullTitle": "index.js calculatesFarePrice(start, destination) does not allow rides over 2500 feet",
"duration": 0,
"currentRetry": 0,
"err": {}
}
],
"pending": [],
"failures": [],
"passes": [
{
"title": "returns a distance in blocks",
"fullTitle": "index.js distanceFromHqInBlocks() returns a distance in blocks",
"duration": 1,
"currentRetry": 0,
"err": {}
},
{
"title": "returns a distance in blocks",
"fullTitle": "index.js distanceFromHqInBlocks() returns a distance in blocks",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "calculates distances below 42nd street",
"fullTitle": "index.js distanceFromHqInBlocks() calculates distances below 42nd street",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "returns a distance in feet",
"fullTitle": "index.js distanceFromHqInFeet() returns a distance in feet",
"duration": 1,
"currentRetry": 0,
"err": {}
},
{
"title": "returns a distance in feet",
"fullTitle": "index.js distanceFromHqInFeet() returns a distance in feet",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "calculates distances below 42nd street",
"fullTitle": "index.js distanceFromHqInFeet() calculates distances below 42nd street",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "returns the distance travelled in feet",
"fullTitle": "index.js distanceTravelledInFeet() returns the distance travelled in feet",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "returns a distance in feet",
"fullTitle": "index.js distanceTravelledInFeet() returns a distance in feet",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "returns distance when destination is below distance",
"fullTitle": "index.js distanceTravelledInFeet() returns distance when destination is below distance",
"duration": 1,
"currentRetry": 0,
"err": {}
},
{
"title": "gives customers a free sample",
"fullTitle": "index.js calculatesFarePrice(start, destination) gives customers a free sample",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "charges 2 cents per foot when total feet travelled is between 400 and 2000 (remember the first 400 feet are free!)",
"fullTitle": "index.js calculatesFarePrice(start, destination) charges 2 cents per foot when total feet travelled is between 400 and 2000 (remember the first 400 feet are free!)",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "charges 25 dollars for a distance over 2000 feet",
"fullTitle": "index.js calculatesFarePrice(start, destination) charges 25 dollars for a distance over 2000 feet",
"duration": 0,
"currentRetry": 0,
"err": {}
},
{
"title": "does not allow rides over 2500 feet",
"fullTitle": "index.js calculatesFarePrice(start, destination) does not allow rides over 2500 feet",
"duration": 0,
"currentRetry": 0,
"err": {}
}
]
}
45 changes: 45 additions & 0 deletions index.js
Original file line number Diff line number Diff line change
@@ -1 +1,46 @@
// Code your solution in this file!
function distanceFromHqInBlocks(pickupLocation) {
const hqStreet = 42;
if (pickupLocation > 42) {
let distanceFromHqInBlocks = pickupLocation - hqStreet;
return distanceFromHqInBlocks;
} else {
let distanceFromHqInBlocks = hqStreet - pickupLocation;
return distanceFromHqInBlocks;
}
}
distanceFromHqInBlocks(50);

function distanceFromHqInFeet(value) {
let distanceFromHqInFeet = distanceFromHqInBlocks(value) * 264;
return distanceFromHqInFeet;
}

distanceFromHqInFeet(50);

function distanceTravelledInFeet(start, end) {
if (start > 42) {
let distanceTravelledInFeet = (end - start) * 264;
return distanceTravelledInFeet;
} else {
let distanceTravelledInFeet = (start - end) * 264;
return distanceTravelledInFeet;
}
}

function calculatesFarePrice(start,end){
let charges;
if (distanceTravelledInFeet(start,end)<=400){
return 0;
}else if(400<distanceTravelledInFeet(start,end)&&distanceTravelledInFeet(start,end)<2000){
charges=(distanceTravelledInFeet(start,end)-400)*0.02;
return charges;
}else if (2000<distanceTravelledInFeet(start,end)&&distanceTravelledInFeet(start,end)<2500){
charges =25;
return charges;

}else{ return "cannot travel that far";
}
}

calculatesFarePrice(47, 59);