UNPKG

@rxx/worker

Version:

React MVI micro framework.

63 lines 4.86 kB
"use strict"; /** * The MIT License (MIT) * Copyright (c) Taketoshi Aono * * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * @fileoverview * @author Taketoshi Aono */ var _this = this; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var advice_1 = require("../advice"); var combine_advice_1 = require("../combine-advice"); var intent_1 = require("../../intent/intent"); var chai_1 = require("chai"); var subject_1 = require("../../subject"); describe('combine-advice.ts', function () { describe('combineAdvice', function () { it('should combine all advices', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () { var called, result, mi, advice1, advice2, intent, tree; return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: called = false; result = []; mi = new advice_1.MethodInvocation(function () { called = true; }, 1, [], '', ''); advice1 = function (mi) { result.push('advice1'); mi.proceed(); }; advice2 = function (mi) { result.push('advice2'); mi.proceed(); }; intent = new intent_1.Intent(); tree = new subject_1.SubjectTree(); return [4 /*yield*/, combine_advice_1.combineAdvice(advice1, advice2)(mi, function (type, payload) { intent.push(type, payload); tree.notify({ type: type, payload: payload }); })]; case 1: _a.sent(); chai_1.expect(result).to.be.deep.equal(['advice1', 'advice2']); return [2 /*return*/]; } }); }); }); }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZS1hZHZpY2Uuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9oYW5kbGVyL19fdGVzdHNfXy9jb21iaW5lLWFkdmljZS5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFFSCxpQkEyQ0E7OztBQTNDQSxvQ0FBNkM7QUFDN0Msb0RBQWtEO0FBQ2xELDhDQUE2QztBQUM3Qyw2QkFBOEI7QUFDOUIseUNBQTRDO0FBRTVDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRTtJQUM1QixRQUFRLENBQUMsZUFBZSxFQUFFO1FBQ3hCLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRTs7Ozs7d0JBQzNCLE1BQU0sR0FBRyxLQUFLLENBQUM7d0JBQ2IsTUFBTSxHQUFhLEVBQUUsQ0FBQzt3QkFDdEIsRUFBRSxHQUFHLElBQUkseUJBQWdCLENBQzdCOzRCQUNFLE1BQU0sR0FBRyxJQUFJLENBQUM7d0JBQ2hCLENBQUMsRUFDRCxDQUFDLEVBQ0QsRUFBRSxFQUNGLEVBQUUsRUFDRixFQUFFLENBQ0gsQ0FBQzt3QkFDSSxPQUFPLEdBQUcsVUFBQyxFQUFvQjs0QkFDbkMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzs0QkFDdkIsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO3dCQUNmLENBQUMsQ0FBQzt3QkFFSSxPQUFPLEdBQUcsVUFBQyxFQUFvQjs0QkFDbkMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzs0QkFDdkIsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO3dCQUNmLENBQUMsQ0FBQzt3QkFFSSxNQUFNLEdBQUcsSUFBSSxlQUFNLEVBQUUsQ0FBQzt3QkFDdEIsSUFBSSxHQUFHLElBQUkscUJBQVcsRUFBRSxDQUFDO3dCQUMvQixxQkFBTSw4QkFBYSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FDbkMsRUFBRSxFQUNGLFVBQUMsSUFBWSxFQUFFLE9BQWE7Z0NBQzFCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dDQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxNQUFBLEVBQUUsT0FBTyxTQUFBLEVBQUUsQ0FBQyxDQUFDOzRCQUNqQyxDQUFDLENBQ0YsRUFBQTs7d0JBTkQsU0FNQyxDQUFDO3dCQUNGLGFBQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQzs7OzthQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIn0=