Add test cases for 1-js/06-advanced-functions/03-closure/9-sort-by-field

Just a simple check to see if the code works on the example given in the task.
This commit is contained in:
Logan Schelly 2020-06-04 23:07:25 -06:00
parent ecfcff24a4
commit a0383c07c0
3 changed files with 54 additions and 0 deletions

View file

@ -0,0 +1,6 @@
"use strict";
function byField(fieldName){
return (a, b) => a[field] > b[field] ? 1 : -1;
}

View file

@ -0,0 +1,7 @@
"use strict";
function byField(fieldName){
//Your code goes here.
}

View file

@ -0,0 +1,41 @@
"use strict";
describe("byField", function(){
let users = [
{ name: "John", age: 20, surname: "Johnson" },
{ name: "Pete", age: 18, surname: "Peterson" },
{ name: "Ann", age: 19, surname: "Hathaway" },
];
it("sorts users by name", function(){
let nameSortedKey = [
{ name: "Ann", age: 19, surname: "Hathaway" },
{ name: "John", age: 20, surname: "Johnson"},
{ name: "Pete", age: 18, surname: "Peterson" },
];
let nameSortedAnswer = users.sort(byField("name"));
assert.equal(JSON.stringify(nameSortedKey), JSON.stringify(nameSortedAnswer));
});
it("sorts users by age", function(){
let ageSortedKey = [
{ name: "Pete", age: 18, surname: "Peterson" },
{ name: "Ann", age: 19, surname: "Hathaway" },
{ name: "John", age: 20, surname: "Johnson"},
];
let ageSortedAnswer = users.sort(byField("age"));
assert.equal(JSON.stringify(ageSortedKey), JSON.stringify(ageSortedKey));
});
it("sorts users by surname", function(){
let surnameSortedKey = [
{ name: "Ann", age: 19, surname: "Hathaway" },
{ name: "John", age: 20, surname: "Johnson"},
{ name: "Pete", age: 18, surname: "Peterson" },
];
let surnameSortedAnswer = users.sort(byField("surname"));
assert.equal(JSON.stringify(surnameSortedAnswer), JSON.stringify(surnameSortedKey));
});
});