* chore: make aware eslint that we use jest By setting up the jest environment, we no longer need to declare the 'test' global in the configuration. * chore: don't need to import expect, it's a jest environment global * chore: don't need to import expect when creating undefined test
22 lines
450 B
JavaScript
22 lines
450 B
JavaScript
const {collatz} = require('./_30s.js');
|
|
|
|
test('collatz is a Function', () => {
|
|
expect(collatz).toBeInstanceOf(Function);
|
|
});
|
|
test('When n is even, divide by 2', () => {
|
|
expect(collatz(8)).toBe(4);
|
|
});
|
|
test('When n is odd, times by 3 and add 1', () => {
|
|
expect(collatz(9)).toBe(28);
|
|
});
|
|
test('Eventually reaches 1', () => {
|
|
let n = 9;
|
|
while (true) {
|
|
if (n === 1) {
|
|
expect(n).toBe(1);
|
|
break;
|
|
}
|
|
n = collatz(n);
|
|
}
|
|
});
|