UNPKG

data-balanced-tree

Version:

Efficient balanced tree implementation in TypeScript

45 lines 1.56 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const tape_1 = __importDefault(require("tape")); const BalancedTree_1 = require("./BalancedTree"); tape_1.default('BalancedTree', t => { t.test('#insert', t => { const tree = new BalancedTree_1.BalancedTree((a, b) => a - b); tree.insert(1); tree.insert(3); tree.insert(2); tree.insert(5); t.looseEquals(Array.from(tree), [1, 2, 3, 5]); t.looseEquals(tree.size, 4); t.looseEquals(tree.depth, 3); t.end(); }); t.test('#delete', t => { const tree = new BalancedTree_1.BalancedTree((a, b) => a - b); tree.insert(1); tree.insert(3); tree.insert(2); tree.insert(5); tree.delete(2); t.looseEquals(Array.from(tree), [1, 3, 5]); t.looseEquals(tree.size, 3); t.looseEquals(tree.depth, 2); t.end(); }); t.test('#delete non existing value', t => { const tree = new BalancedTree_1.BalancedTree((a, b) => a - b); tree.insert(1); tree.insert(3); tree.insert(2); tree.insert(5); tree.delete(6); t.looseEquals(Array.from(tree), [1, 2, 3, 5]); t.looseEquals(tree.size, 4); t.looseEquals(tree.depth, 3); t.end(); }); }); //# sourceMappingURL=BalancedTree.test.js.map