@nova-ui/bits
Version:
SolarWinds Nova Framework
52 lines • 2.71 kB
JavaScript
;
// © 2022 SolarWinds Worldwide, LLC. All rights reserved.
//
// 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.
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
// import mock from "mock-require";
const proxyquire_1 = tslib_1.__importDefault(require("proxyquire"));
describe("Schematics Helper >", () => {
describe("updateModuleChanges", () => {
const mockHost = {
beginUpdate: () => ({}),
commitUpdate: () => { },
};
const mockOptions = { module: "test/path" };
const mockSourceFile = {};
it("should specify the correct path for a module import", async () => {
const mockModules = [{ item: "TestModule", path: "@nova-ui/bits" }];
const mockCdkSchematics = {
addImportToModule: jasmine
.createSpy("addImportToModule", (_source, _modulePath, _classifiedName, _importPath) => [])
.and.callThrough(),
};
const mockAstUtils = {
isImported: () => false,
};
const helper = (0, proxyquire_1.default)("./schematics-helper", {
"@schematics/angular/utility/ast-utils": mockAstUtils,
"@angular/cdk/schematics": mockCdkSchematics,
});
helper.updateModuleChanges(mockHost, mockOptions, mockSourceFile, mockModules, [], []);
expect(mockCdkSchematics.addImportToModule).toHaveBeenCalledWith(mockSourceFile, mockOptions.module, mockModules[0].item, mockModules[0].path);
});
});
});
//# sourceMappingURL=schematics-helper.spec.js.map