Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit f5494e9

Browse files
Added tests for BST insertion
1 parent e78eae5 commit f5494e9

File tree

1 file changed

+51
-0
lines changed

1 file changed

+51
-0
lines changed
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
const BinarySearchTree = require('./index');
2+
3+
describe('Binary Search Tree', () => {
4+
let bst;
5+
let rootsLeftChild, rootsRightChild;
6+
let rootsLeftChildsLeftChild, rootsLeftChildsRightChild;
7+
let rootsRightChildsLeftChild, rootsRightChildsRightChild;
8+
9+
describe('Creates a binary search tree', () => {
10+
it('should create a bst with root 100', () => {
11+
bst = new BinarySearchTree(100);
12+
expect(bst.root.value).toEqual(100);
13+
});
14+
15+
it('should add element 20 to the left of root node', () => {
16+
bst.add(20);
17+
rootsLeftChild = bst.root.leftChild;
18+
expect(rootsLeftChild.value).toEqual(20);
19+
});
20+
21+
it('should add element 500 to the right of root node', () => {
22+
bst.add(500);
23+
rootsRightChild = bst.root.rightChild;
24+
expect(rootsRightChild.value).toEqual(500);
25+
});
26+
27+
it('should add element 10 to the left of root"s left child', () => {
28+
bst.add(10);
29+
rootsLeftChildsLeftChild = bst.root.leftChild.leftChild;
30+
expect(rootsLeftChildsLeftChild.value).toEqual(10);
31+
});
32+
33+
it('should add element 30 to the right of root"s left child', () => {
34+
bst.add(30);
35+
rootsLeftChildsRightChild = bst.root.leftChild.rightChild;
36+
expect(rootsLeftChildsRightChild.value).toEqual(30);
37+
});
38+
39+
it('should add element 400 to the left of root"s right child', () => {
40+
bst.add(400);
41+
rootsRightChildsLeftChild = bst.root.rightChild.leftChild;
42+
expect(rootsRightChildsLeftChild.value).toEqual(400);
43+
});
44+
45+
it('should add element 600 to the right of root"s right child', () => {
46+
bst.add(600);
47+
rootsRightChildsRightChild = bst.root.rightChild.rightChild;
48+
expect(rootsRightChildsRightChild.value).toEqual(600);
49+
});
50+
});
51+
});

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /