"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const assert = require("assert");
const debug_1 = require("../../../debug");
const fromSpec_1 = require("../../../spec/fromSpec");
const _specs_1 = require("../../../system/_specs");
const system_1 = require("../../util/system");
const spec = require('../../../system/core/array/HeadOrDefault/spec.json');
const HeadOrDefault = (0, fromSpec_1.fromSpec)(spec, _specs_1.default);
const headOrDefault = new HeadOrDefault(system_1.system);
false && (0, debug_1.watchUnitAndLog)(headOrDefault);
false && (0, debug_1.watchGraphAndLog)(headOrDefault);
headOrDefault.play();
headOrDefault.push('a', []);
headOrDefault.push('default', 1000);
assert.deepEqual(headOrDefault.peakInput('a'), []);
assert.deepEqual(headOrDefault.peakInput('default'), 1000);
assert.deepEqual(headOrDefault.take('a'), []);
assert.deepEqual(headOrDefault.take('head'), 1000);
assert.deepEqual(headOrDefault.take('empty'), true);
assert.deepEqual(headOrDefault.peakInput('a'), undefined);
assert.deepEqual(headOrDefault.peakInput('default'), undefined);
//# sourceMappingURL=HeadOrDefault.js.map