UNPKG

nope-js-node

Version:

NoPE Runtime for Nodejs. For Browser-Support please use nope-browser

65 lines (64 loc) 3.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); require("reflect-metadata"); const chai_1 = require("chai"); const mocha_1 = require("mocha"); const index_1 = require("./index"); const plugin_1 = require("./plugin"); (0, mocha_1.describe)("PluginSystem", function () { // Describe the required Test: (0, mocha_1.it)("List Plugins", function () { (0, chai_1.assert)((0, plugin_1.allPlugins)().length == 3, "There Should be to Plugins"); }); (0, mocha_1.describe)("load single Plugins", function () { (0, mocha_1.it)("by-name", function () { delete require.cache[require.resolve("../index.nodejs")]; const nope = require("../index.nodejs"); (0, plugin_1.installPlugins)(nope, "hello", false); delete require.cache[require.resolve("../index.nodejs")]; }); (0, mocha_1.it)("by-path", function () { delete require.cache[require.resolve("../index.nodejs")]; const nope = require("../index.nodejs"); (0, plugin_1.installPlugins)(nope, "plugins.availablePlugins.hello", false); delete require.cache[require.resolve("../index.nodejs")]; }); (0, mocha_1.it)("by-plugin", function () { delete require.cache[require.resolve("../index.nodejs")]; const nope = require("../index.nodejs"); (0, plugin_1.installPlugins)(nope, index_1.availablePlugins.hello, false); delete require.cache[require.resolve("../index.nodejs")]; }); (0, mocha_1.it)("dynamic-plugin", function () { delete require.cache[require.resolve("../index.nodejs")]; const nope = require("../index.nodejs"); const extend = (0, plugin_1.plugin)("generateId", (org) => { return [ { adapted: (...args) => { return org(...args); }, name: "generateId", path: "generateId", }, ]; }); (0, plugin_1.installPlugins)(nope, extend, false); delete require.cache[require.resolve("../index.nodejs")]; }); }); (0, mocha_1.describe)("load single Plugins", function () { (0, mocha_1.it)("single-list-item", function () { delete require.cache[require.resolve("../index.nodejs")]; const nope = require("../index.nodejs"); (0, plugin_1.installPlugins)(nope, ["hello"], false); delete require.cache[require.resolve("../index.nodejs")]; }); (0, mocha_1.it)("by-path", function () { delete require.cache[require.resolve("../index.nodejs")]; const nope = require("../index.nodejs"); (0, plugin_1.installPlugins)(nope, ["hello", "plugins.availablePlugins.hello", index_1.availablePlugins.hello], false); delete require.cache[require.resolve("../index.nodejs")]; }); }); });