Add quiz 2 content

This commit is contained in:
Isaac 2022-10-26 10:10:09 -03:00
parent 8f668a032f
commit 9a62c4918f
3 changed files with 47 additions and 0 deletions

14
tests/Q2/objectSum.js Normal file
View File

@ -0,0 +1,14 @@
function objectSum(obj) {
sum = 0
for (let number of obj){
//Case for when the number is actually not a number (eg, recursive list)
if (typeof(number) === "object")
sum = sum + objectSum(number)
//Case for when the number is a number
if(typeof(number) === "number")
sum = sum + number
}
return sum
}
exports.objectSum = objectSum

View File

@ -0,0 +1,20 @@
let sum=require ("../objectSum.js");
describe("objectSum",
function() {
it("List of numbers",
function() {
let obj = [1, 2, 3]
expect(sum.objectSum(obj)).toBe(6);
});
it("Skip non numbers",
function() {
let obj = [1, 2, "jellyfish", 3]
expect(sum.objectSum(obj)).toBe(6);
});
it("Recursive arrays",
function() {
let obj = [1, 2, [-6, 2, -2], 3]
expect(sum.objectSum(obj)).toBe(0);
});
});

View File

@ -0,0 +1,13 @@
{
"spec_dir": "spec",
"spec_files": [
"**/*[sS]pec.?(m)js"
],
"helpers": [
"helpers/**/*.?(m)js"
],
"env": {
"stopSpecOnExpectationFailure": false,
"random": true
}
}