Completed sumAll exercise

This commit is contained in:
Don 2022-06-23 15:28:30 -04:00
parent b8913a605e
commit f7aa76e904
2 changed files with 28 additions and 6 deletions

View File

@ -1,5 +1,27 @@
const sumAll = function() {
const sumAll = function(x, y) {
if (x < 0 || y < 0) {
return "ERROR"
} else if (typeof x != "number" || typeof y != "number") {
return "ERROR"
}
let diff = x - y
if (diff < 0) {
diff *= -1
}
let sum = 0
let min = x
if (x > y) {
min = y
}
for (let i = 0; i <= diff; i++) {
sum += min
min++
}
return sum
};
// Do not edit below this line

View File

@ -4,19 +4,19 @@ describe('sumAll', () => {
test('sums numbers within the range', () => {
expect(sumAll(1, 4)).toEqual(10);
});
test.skip('works with large numbers', () => {
test('works with large numbers', () => {
expect(sumAll(1, 4000)).toEqual(8002000);
});
test.skip('works with larger number first', () => {
test('works with larger number first', () => {
expect(sumAll(123, 1)).toEqual(7626);
});
test.skip('returns ERROR with negative numbers', () => {
test('returns ERROR with negative numbers', () => {
expect(sumAll(-10, 4)).toEqual('ERROR');
});
test.skip('returns ERROR with non-number parameters', () => {
test('returns ERROR with non-number parameters', () => {
expect(sumAll(10, "90")).toEqual('ERROR');
});
test.skip('returns ERROR with non-number parameters', () => {
test('returns ERROR with non-number parameters', () => {
expect(sumAll(10, [90, 1])).toEqual('ERROR');
});
});