UNPKG

dist-javascript-algorithms-and-data-structures

Version:

Algorithms and data-structures implemented on JavaScript

27 lines (24 loc) 1.31 kB
"use strict"; var _fastPowering = _interopRequireDefault(require("../fastPowering")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } describe('fastPowering', () => { it('should compute power in log(n) time', () => { expect((0, _fastPowering.default)(1, 1)).toBe(1); expect((0, _fastPowering.default)(2, 0)).toBe(1); expect((0, _fastPowering.default)(2, 2)).toBe(4); expect((0, _fastPowering.default)(2, 3)).toBe(8); expect((0, _fastPowering.default)(2, 4)).toBe(16); expect((0, _fastPowering.default)(2, 5)).toBe(32); expect((0, _fastPowering.default)(2, 6)).toBe(64); expect((0, _fastPowering.default)(2, 7)).toBe(128); expect((0, _fastPowering.default)(2, 8)).toBe(256); expect((0, _fastPowering.default)(3, 4)).toBe(81); expect((0, _fastPowering.default)(190, 2)).toBe(36100); expect((0, _fastPowering.default)(11, 5)).toBe(161051); expect((0, _fastPowering.default)(13, 11)).toBe(1792160394037); expect((0, _fastPowering.default)(9, 16)).toBe(1853020188851841); expect((0, _fastPowering.default)(16, 16)).toBe(18446744073709552000); expect((0, _fastPowering.default)(7, 21)).toBe(558545864083284000); expect((0, _fastPowering.default)(100, 9)).toBe(1000000000000000000); }); });