doubly-linked-list-test.js 635 B

12345678910111213141516171819202122232425262728
  1. var tap = require("tap");
  2. var DLL = require("../lib/DoublyLinkedList");
  3. tap.test("operations", function(t) {
  4. var dll = new DLL();
  5. var item1 = { id: 1 };
  6. var item2 = { id: 2 };
  7. var item3 = { id: 3 };
  8. var item4 = { id: 4 };
  9. dll.insertBeginning(DLL.createNode(item1));
  10. t.equal(dll.head.data, item1);
  11. dll.insertEnd(DLL.createNode(item2));
  12. t.equal(dll.tail.data, item2);
  13. dll.insertAfter(dll.tail, DLL.createNode(item3));
  14. t.equal(dll.tail.data, item3);
  15. dll.insertBefore(dll.tail, DLL.createNode(item4));
  16. t.equal(dll.tail.data, item3);
  17. dll.remove(dll.tail);
  18. t.equal(dll.tail.data, item4);
  19. t.end();
  20. });