@@ -3,10 +3,11 @@ import hanoiTower from '../hanoiTower';
3
3
describe ( 'hanoiTower' , ( ) => {
4
4
it ( 'should solve tower of hanoi puzzle with 2 discs' , ( ) => {
5
5
const moveCallbackMock = jest . fn ( ) ;
6
+ const numberOfDiscs = 2 ;
6
7
7
- hanoiTower ( 2 , moveCallbackMock ) ;
8
+ hanoiTower ( numberOfDiscs , moveCallbackMock ) ;
8
9
9
- expect ( moveCallbackMock ) . toHaveBeenCalledTimes ( 3 ) ;
10
+ expect ( moveCallbackMock ) . toHaveBeenCalledTimes ( ( 2 ** numberOfDiscs ) - 1 ) ;
10
11
11
12
expect ( moveCallbackMock . mock . calls [ 0 ] [ 0 ] ) . toBe ( 1 ) ;
12
13
expect ( moveCallbackMock . mock . calls [ 0 ] [ 1 ] ) . toEqual ( [ 1 , 2 ] ) ;
@@ -23,17 +24,19 @@ describe('hanoiTower', () => {
23
24
24
25
it ( 'should solve tower of hanoi puzzle with 3 discs' , ( ) => {
25
26
const moveCallbackMock = jest . fn ( ) ;
27
+ const numberOfDiscs = 3 ;
26
28
27
- hanoiTower ( 3 , moveCallbackMock ) ;
29
+ hanoiTower ( numberOfDiscs , moveCallbackMock ) ;
28
30
29
- expect ( moveCallbackMock ) . toHaveBeenCalledTimes ( 7 ) ;
31
+ expect ( moveCallbackMock ) . toHaveBeenCalledTimes ( ( 2 ** numberOfDiscs ) - 1 ) ;
30
32
} ) ;
31
33
32
34
it ( 'should solve tower of hanoi puzzle with 6 discs' , ( ) => {
33
35
const moveCallbackMock = jest . fn ( ) ;
36
+ const numberOfDiscs = 6 ;
34
37
35
- hanoiTower ( 6 , moveCallbackMock ) ;
38
+ hanoiTower ( numberOfDiscs , moveCallbackMock ) ;
36
39
37
- expect ( moveCallbackMock ) . toHaveBeenCalledTimes ( 63 ) ;
40
+ expect ( moveCallbackMock ) . toHaveBeenCalledTimes ( ( 2 ** numberOfDiscs ) - 1 ) ;
38
41
} ) ;
39
42
} ) ;
0 commit comments