Code coverage report for spec/algo/4-binaryTrees/isBalanced.spec.js

Statements: 100% (24 / 24)      Branches: 100% (0 / 0)      Functions: 100% (5 / 5)      Lines: 100% (24 / 24)      Ignored: none     

All files » spec/algo/4-binaryTrees/ » isBalanced.spec.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 391 1     1 1 1 1 1   1 3     1 1 1 1   1     1 1 1 1   1     1 1 1 1   1      
var isBalanced = require("../../../lib/algorithms/4-binaryTrees/isBalanced.js");
var bst = require("../../../lib/dataStructures/binarySearchTree.js");
 
 
describe('When testing a binary search tree using isBalanced()', function () {
	var tree;
	var value2 = 2;
	var value1 = 1;
	var value3 = 3;
 
	beforeEach(function() {
		tree = new bst();
	});
 
	it('if three elements are added in order (middle, least, greatest) the tree will be balanced.', function () {
		tree.add(value2);
		tree.add(value1);
		tree.add(value3);
 
		expect(isBalanced(tree.head)).toBe(true);
	});
 
	it('if the elements are added in order (least, middle, greatest) the tree will be unbalanced.', function () {
		tree.add(value1);
		tree.add(value2);
		tree.add(value3);
 
		expect(isBalanced(tree.head)).toBe(false);
	});
 
	it('if the elements are added in order (greatest, middle, least) the tree will be unbalanced.', function () {
		tree.add(value3);
		tree.add(value2);
		tree.add(value1);
 
		expect(isBalanced(tree.head)).toBe(false);
	});
});