UNPKG

dist-javascript-algorithms-and-data-structures

Version:

Algorithms and data-structures implemented on JavaScript

33 lines (27 loc) 1.18 kB
"use strict"; var _LinkedList = _interopRequireDefault(require("../../../../data-structures/linked-list/LinkedList")); var _reverseTraversal = _interopRequireDefault(require("../reverseTraversal")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } describe('reverseTraversal', () => { it('should traverse linked list in reverse order', () => { const linkedList = new _LinkedList.default(); linkedList.append(1).append(2).append(3); const traversedNodeValues = []; const traversalCallback = nodeValue => { traversedNodeValues.push(nodeValue); }; (0, _reverseTraversal.default)(linkedList, traversalCallback); expect(traversedNodeValues).toEqual([3, 2, 1]); }); }); // it('should reverse traversal the linked list with callback', () => { // const linkedList = new LinkedList(); // // linkedList // .append(1) // .append(2) // .append(3); // // expect(linkedList.toString()).toBe('1,2,3'); // expect(linkedList.reverseTraversal(linkedList.head, value => value * 2)).toEqual([6, 4, 2]); // expect(() => linkedList.reverseTraversal(linkedList.head)).toThrow(); // });