@@ -19,17 +19,28 @@ describe('reverseTraversal', () => {
19
19
20
20
expect ( traversedNodeValues ) . toEqual ( [ 3 , 2 , 1 ] ) ;
21
21
} ) ;
22
- } ) ;
23
22
24
- // it('should reverse traversal the linked list with callback', () => {
25
- // const linkedList = new LinkedList();
26
- //
27
- // linkedList
28
- // .append(1)
29
- // .append(2)
30
- // .append(3);
31
- //
32
- // expect(linkedList.toString()).toBe('1,2,3');
33
- // expect(linkedList.reverseTraversal(linkedList.head, value => value * 2)).toEqual([6, 4, 2]);
34
- // expect(() => linkedList.reverseTraversal(linkedList.head)).toThrow();
35
- // });
23
+ // New Test: Should throw an error if no callback is provided
24
+ it ( 'should throw an error if no callback function is provided' , ( ) => {
25
+ const linkedList = new LinkedList ( ) ;
26
+ linkedList . append ( 1 ) ;
27
+
28
+ expect ( ( ) => reverseTraversal ( linkedList ) ) . toThrow ( 'Callback function is required for reverseTraversal' ) ;
29
+ } ) ;
30
+
31
+ // New Test: Should throw an error if the linked list is empty
32
+ it ( 'should throw an error if linked list is empty' , ( ) => {
33
+ const linkedList = new LinkedList ( ) ;
34
+
35
+ expect ( ( ) => reverseTraversal ( linkedList , ( value ) => console . log ( value ) ) ) . toThrow (
36
+ 'Cannot reverse traverse an empty linked list' ,
37
+ ) ;
38
+ } ) ;
39
+
40
+ // New Test: Should throw an error if linked list is null
41
+ it ( 'should throw an error if linked list is null' , ( ) => {
42
+ expect ( ( ) => reverseTraversal ( null , ( value ) => console . log ( value ) ) ) . toThrow (
43
+ 'Cannot reverse traverse an empty linked list' ,
44
+ ) ;
45
+ } ) ;
46
+ } ) ;
0 commit comments