]> git.wincent.com - hextrapolate.git/blob - src/multiplyDigits.test.js
1e43f14018aa18c19e1e2f9cddcf79044b93041e
[hextrapolate.git] / src / multiplyDigits.test.js
1 /**
2  * Copyright 2003-present Greg Hurrell. All rights reserved.
3  * Licensed under the terms of the MIT license.
4  */
5
6 'use strict';
7
8 import multiplyDigits from './multiplyDigits';
9
10 describe('multiplyDigits()', () => {
11   it('multiplies by 0', () => {
12     expect(multiplyDigits([1], 0, 2)).toEqual([0]);
13     expect(multiplyDigits([5], 0, 8)).toEqual([0]);
14     expect(multiplyDigits([4], 0, 10)).toEqual([0]);
15     expect(multiplyDigits([12], 0, 16)).toEqual([0]);
16   });
17
18   it('multiplies by 1', () => {
19     expect(multiplyDigits([1], 1, 2)).toEqual([1]);
20     expect(multiplyDigits([5], 1, 8)).toEqual([5]);
21     expect(multiplyDigits([4], 1, 10)).toEqual([4]);
22     expect(multiplyDigits([12], 1, 16)).toEqual([12]);
23   });
24
25   it('multiplies by 2', () => {
26     expect(multiplyDigits([1], 2, 2)).toEqual([0, 1]);
27     expect(multiplyDigits([5], 2, 8)).toEqual([2, 1]);
28     expect(multiplyDigits([4], 2, 10)).toEqual([8]);
29     expect(multiplyDigits([12], 2, 16)).toEqual([8, 1]);
30   });
31
32   it('multiplies by 100', () => {
33     expect(multiplyDigits([1], 100, 2)).toEqual([0, 0, 1, 0, 0, 1, 1]);
34     expect(multiplyDigits([5], 100, 8)).toEqual([4, 6, 7]);
35     expect(multiplyDigits([4], 100, 10)).toEqual([0, 0, 4]);
36     expect(multiplyDigits([12], 100, 16)).toEqual([0, 11, 4]);
37   });
38
39   it('multiplies by 1000', () => {
40     expect(multiplyDigits([1], 1000, 2)).toEqual([0, 0, 0, 1, 0, 1, 1, 1, 1, 1]);
41     expect(multiplyDigits([5], 1000, 8)).toEqual([0, 1, 6, 1, 1]);
42     expect(multiplyDigits([4], 1000, 10)).toEqual([0, 0, 0, 4]);
43     expect(multiplyDigits([12], 1000, 16)).toEqual([0, 14, 14, 2]);
44   });
45 });