Add quiz 2 content
This commit is contained in:
parent
8f668a032f
commit
9a62c4918f
14
tests/Q2/objectSum.js
Normal file
14
tests/Q2/objectSum.js
Normal 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
|
20
tests/Q2/spec/objectSum.spec.js
Normal file
20
tests/Q2/spec/objectSum.spec.js
Normal 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);
|
||||
});
|
||||
});
|
13
tests/Q2/spec/support/jasmine.json
Normal file
13
tests/Q2/spec/support/jasmine.json
Normal file
@ -0,0 +1,13 @@
|
||||
{
|
||||
"spec_dir": "spec",
|
||||
"spec_files": [
|
||||
"**/*[sS]pec.?(m)js"
|
||||
],
|
||||
"helpers": [
|
||||
"helpers/**/*.?(m)js"
|
||||
],
|
||||
"env": {
|
||||
"stopSpecOnExpectationFailure": false,
|
||||
"random": true
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user