UNPKG

ts-prime

Version:

A utility library for JavaScript and Typescript.

34 lines (33 loc) 1.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var flatten_1 = require("./flatten"); var pipe_1 = require("./pipe"); var find_1 = require("./find"); var _counter_1 = require("./_counter"); test('flatten', function () { expect(flatten_1.flatten([[1, 2], 3, [4, 5]])).toEqual([1, 2, 3, 4, 5]); }); test('nested', function () { expect(flatten_1.flatten([ [1, 2], [[3], [4, 5]], ])).toEqual([1, 2, [3], [4, 5]]); }); describe('pipe', function () { test('flatten multiple values', function () { var result = pipe_1.pipe([[1, 2], 3, [4, 5]], flatten_1.flatten()); expect(result).toEqual([1, 2, 3, 4, 5]); }); test('flatten single value', function () { var result = pipe_1.pipe([[1]], flatten_1.flatten()); expect(result).toEqual([1]); }); test('with find', function () { var counter1 = _counter_1.createCounter(); var counter2 = _counter_1.createCounter(); var result = pipe_1.pipe([[1, 2], 3, [4, 5]], counter1.fn(), flatten_1.flatten(), counter2.fn(), find_1.find(function (x) { return x - 1 === 2; })); expect(counter1.count).toHaveBeenCalledTimes(2); expect(counter2.count).toHaveBeenCalledTimes(3); expect(result).toEqual(3); }); });