ng-mocks 11.2.7 → 11.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +41 -3174
  3. package/dist/lib/common/core.helpers.d.ts +2 -2
  4. package/dist/lib/common/core.helpers.js +55 -27
  5. package/dist/lib/common/{core.reflect.body.d.ts → core.reflect.body-catch.d.ts} +0 -0
  6. package/dist/lib/common/core.reflect.body-catch.js +12 -0
  7. package/dist/lib/common/core.reflect.body-global.d.ts +3 -0
  8. package/dist/lib/common/core.reflect.body-global.js +11 -0
  9. package/dist/lib/common/core.reflect.directive-resolve.js +6 -4
  10. package/dist/lib/common/core.reflect.jit.d.ts +3 -0
  11. package/dist/lib/common/core.reflect.jit.js +11 -0
  12. package/dist/lib/common/core.reflect.module-resolve.js +6 -4
  13. package/dist/lib/common/core.reflect.pipe-resolve.js +6 -4
  14. package/dist/lib/common/core.tokens.d.ts +2 -2
  15. package/dist/lib/common/core.tokens.js +1 -1
  16. package/dist/lib/common/decorate.inputs.js +2 -2
  17. package/dist/lib/common/decorate.mock.d.ts +3 -0
  18. package/dist/lib/common/decorate.mock.js +13 -0
  19. package/dist/lib/common/decorate.outputs.js +2 -2
  20. package/dist/lib/common/decorate.queries.js +2 -2
  21. package/dist/lib/common/func.is-mock-control-value-accessor.js +2 -3
  22. package/dist/lib/common/func.is-mock-validator.js +2 -3
  23. package/dist/lib/common/func.is-ng-def.d.ts +7 -1
  24. package/dist/lib/common/func.is-ng-def.js +5 -1
  25. package/dist/lib/common/func.is-ng-injection-token.js +2 -3
  26. package/dist/lib/common/func.is-ng-module-def-with-providers.js +2 -3
  27. package/dist/lib/common/func.is-ng-type.d.ts +2 -2
  28. package/dist/lib/common/func.is-ng-type.js +6 -5
  29. package/dist/lib/common/mock-control-value-accessor.d.ts +3 -3
  30. package/dist/lib/common/mock-control-value-accessor.js +1 -1
  31. package/dist/lib/common/mock.js +31 -26
  32. package/dist/lib/common/ng-mocks-universe.d.ts +5 -0
  33. package/dist/lib/common/ng-mocks-universe.js +65 -7
  34. package/dist/lib/mock/clone-providers.js +23 -6
  35. package/dist/lib/mock/decorate-declaration.js +6 -6
  36. package/dist/lib/mock/to-existing-provider.d.ts +1 -1
  37. package/dist/lib/mock/to-factory-provider.d.ts +1 -1
  38. package/dist/lib/mock-builder/mock-builder-stash.js +3 -1
  39. package/dist/lib/mock-builder/mock-builder.js +2 -2
  40. package/dist/lib/mock-builder/mock-builder.performance.js +2 -2
  41. package/dist/lib/mock-builder/mock-builder.promise.js +4 -1
  42. package/dist/lib/mock-builder/promise/create-ng-mocks-overrides-token.js +2 -2
  43. package/dist/lib/mock-builder/promise/create-ng-mocks-touches-token.js +2 -2
  44. package/dist/lib/mock-builder/promise/get-override-meta.js +4 -4
  45. package/dist/lib/mock-builder/promise/get-root-provider-parameters.js +3 -3
  46. package/dist/lib/mock-builder/promise/init-module.js +2 -2
  47. package/dist/lib/mock-builder/promise/init-ng-modules.js +2 -2
  48. package/dist/lib/mock-component/mock-component.d.ts +1 -1
  49. package/dist/lib/mock-component/mock-component.js +9 -17
  50. package/dist/lib/mock-directive/mock-directive.d.ts +1 -1
  51. package/dist/lib/mock-directive/mock-directive.js +10 -23
  52. package/dist/lib/mock-helper/func.global-prepare.d.ts +2 -0
  53. package/dist/lib/mock-helper/func.global-prepare.js +9 -0
  54. package/dist/lib/mock-helper/mock-helper.auto-spy.js +2 -2
  55. package/dist/lib/mock-helper/mock-helper.d.ts +38 -0
  56. package/dist/lib/mock-helper/mock-helper.global-exclude.d.ts +4 -0
  57. package/dist/lib/mock-helper/mock-helper.global-exclude.js +9 -0
  58. package/dist/lib/mock-helper/mock-helper.global-keep.d.ts +4 -0
  59. package/dist/lib/mock-helper/mock-helper.global-keep.js +9 -0
  60. package/dist/lib/mock-helper/mock-helper.global-mock.d.ts +4 -0
  61. package/dist/lib/mock-helper/mock-helper.global-mock.js +9 -0
  62. package/dist/lib/mock-helper/mock-helper.global-replace.d.ts +3 -0
  63. package/dist/lib/mock-helper/mock-helper.global-replace.js +26 -0
  64. package/dist/lib/mock-helper/mock-helper.global-wipe.d.ts +4 -0
  65. package/dist/lib/mock-helper/mock-helper.global-wipe.js +11 -0
  66. package/dist/lib/mock-helper/mock-helper.guts.js +100 -37
  67. package/dist/lib/mock-helper/mock-helper.js +15 -1
  68. package/dist/lib/mock-helper/mock-helper.reset.js +2 -1
  69. package/dist/lib/mock-helper/mock-helper.stub-member.d.ts +2 -0
  70. package/dist/lib/mock-helper/mock-helper.stub-member.js +25 -0
  71. package/dist/lib/mock-helper/mock-helper.stub.js +2 -1
  72. package/dist/lib/mock-helper/mock-helper.throw-on-console.d.ts +2 -0
  73. package/dist/lib/mock-helper/mock-helper.throw-on-console.js +25 -0
  74. package/dist/lib/mock-instance/mock-instance.js +11 -7
  75. package/dist/lib/mock-module/mock-module.d.ts +2 -2
  76. package/dist/lib/mock-module/mock-module.js +7 -9
  77. package/dist/lib/mock-module/mock-ng-def.js +29 -12
  78. package/dist/lib/mock-pipe/mock-pipe.d.ts +2 -2
  79. package/dist/lib/mock-pipe/mock-pipe.js +18 -44
  80. package/dist/lib/mock-provider/mock-provider.d.ts +3 -3
  81. package/dist/lib/mock-provider/mock-provider.js +1 -1
  82. package/dist/lib/mock-render/func.generate-template.d.ts +2 -0
  83. package/dist/lib/mock-render/func.generate-template.js +87 -0
  84. package/dist/lib/mock-render/func.install-prop-reader.d.ts +2 -0
  85. package/dist/lib/mock-render/func.install-prop-reader.js +80 -0
  86. package/dist/lib/mock-render/mock-render.d.ts +16 -2
  87. package/dist/lib/mock-render/mock-render.js +111 -132
  88. package/dist/lib/mock-service/helper.resolve-provider.js +9 -12
  89. package/dist/lib/mock-service/helper.use-factory.js +3 -3
  90. package/dist/lib/mock-service/mock-provider.js +2 -1
  91. package/dist/lib/mock-service/mock-service.d.ts +4 -4
  92. package/dist/lib/mock-service/mock-service.js +1 -1
  93. package/examples/MockBuilder/test.deep.spec.ts +1 -1
  94. package/examples/MockBuilder/test.ng-mocks.spec.ts +1 -1
  95. package/examples/MockForms/test.spec.ts +2 -2
  96. package/examples/MockInstance/test.spec.ts +1 -1
  97. package/examples/MockObservable/test.spec.ts +7 -4
  98. package/examples/MockPipe/test.spec.ts +1 -1
  99. package/examples/MockProvider/test.spec.ts +5 -6
  100. package/examples/MockReactiveForms/test.spec.ts +2 -2
  101. package/examples/MockViewChild/test.spec.ts +3 -3
  102. package/examples/TestAttributeDirective/test.spec.ts +1 -1
  103. package/examples/TestHttpInterceptor/test.spec.ts +10 -4
  104. package/examples/TestHttpRequest/test.spec.ts +6 -4
  105. package/examples/TestLifecycleHooks/test.spec.ts +6 -2
  106. package/examples/TestLifecycleHooks/test.string.spec.ts +3 -2
  107. package/examples/TestLifecycleHooks/test.type-without-params.spec.ts +3 -2
  108. package/examples/TestMultiToken/test.spec.ts +3 -3
  109. package/examples/TestProvider/test.spec.ts +2 -3
  110. package/examples/TestProviderWithDependencies/test.spec.ts +7 -3
  111. package/examples/TestProviderWithUseClass/test.spec.ts +9 -3
  112. package/examples/TestProviderWithUseExisting/test.spec.ts +9 -3
  113. package/examples/TestProviderWithUseFactory/test.spec.ts +2 -3
  114. package/examples/TestProviderWithUseValue/test.spec.ts +4 -4
  115. package/examples/TestRoute/test.spec.ts +7 -7
  116. package/examples/TestRoutingGuard/test.spec.ts +8 -6
  117. package/examples/TestRoutingResolver/test.spec.ts +6 -4
  118. package/examples/TestToken/test.spec.ts +7 -6
  119. package/examples/main/test.spec.ts +2 -2
  120. package/examples/ngMocksFaster/test.spec.ts +2 -2
  121. package/package.json +2 -3
  122. package/dist/lib/common/core.reflect.body.js +0 -12
  123. package/dist/lib/common/core.reflect.d.ts +0 -6
  124. package/dist/lib/common/core.reflect.js +0 -10
  125. package/dist/lib/common/mock-of.d.ts +0 -3
  126. package/dist/lib/common/mock-of.js +0 -23
@@ -52,7 +52,7 @@ describe('examples:performance', () => {
52
52
  });
53
53
  });
54
54
 
55
- // Don't forget to reset the spy between runs.
55
+ // Do not forget to reset the spy between runs.
56
56
  afterAll(MockReset);
57
57
 
58
58
  it('test:1', () => {
@@ -94,7 +94,7 @@ describe('examples:performance', () => {
94
94
  prop: 123,
95
95
  };
96
96
 
97
- // Don't forget to reset the spy between runs.
97
+ // Do not forget to reset the spy between runs.
98
98
  beforeEach(() => {
99
99
  if (typeof jest === 'undefined') {
100
100
  (mock.method as jasmine.Spy).calls.reset();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ng-mocks",
3
- "version": "11.2.7",
3
+ "version": "11.4.0",
4
4
  "description": "An Angular testing library for creating mock services, components, directives, pipes and modules in unit tests, which includes shallow rendering, precise stubs to dump child dependencies, supports Angular 5 6 7 8 9 10 11, jasmine and jest.",
5
5
  "keywords": [
6
6
  "angular",
@@ -59,7 +59,7 @@
59
59
  "bugs": {
60
60
  "url": "https://github.com/ike18t/ng-mocks/issues/new"
61
61
  },
62
- "homepage": "https://ng-mocks.github.io",
62
+ "homepage": "https://ng-mocks.sudo.eu",
63
63
  "license": "MIT",
64
64
  "main": "dist/index.js",
65
65
  "types": "dist/index.d.ts",
@@ -74,7 +74,6 @@
74
74
  "peerDependencies": {
75
75
  "@angular/compiler": ">=5.x <=11.x",
76
76
  "@angular/core": ">=5.x <=11.x",
77
- "@angular/forms": ">=5.x <=11.x",
78
77
  "@angular/platform-browser": ">=5.x <=11.x"
79
78
  }
80
79
  }
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = (function (callback) { return function (def) {
4
- try {
5
- return callback(def);
6
- }
7
- catch (e) {
8
- // istanbul ignore next
9
- throw new Error('ng-mocks is not in JIT mode and cannot resolve declarations');
10
- }
11
- }; });
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5yZWZsZWN0LmJvZHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvY29tbW9uL2NvcmUucmVmbGVjdC5ib2R5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUJBQWUsVUFBQyxRQUFhLElBQUssT0FBQSxVQUFDLEdBQVE7SUFDekMsSUFBSTtRQUNGLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ3RCO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVix1QkFBdUI7UUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyw2REFBNkQsQ0FBQyxDQUFDO0tBQ2hGO0FBQ0gsQ0FBQyxFQVBpQyxDQU9qQyxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgKGNhbGxiYWNrOiBhbnkpID0+IChkZWY6IGFueSkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBjYWxsYmFjayhkZWYpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gaXN0YW5idWwgaWdub3JlIG5leHRcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25nLW1vY2tzIGlzIG5vdCBpbiBKSVQgbW9kZSBhbmQgY2Fubm90IHJlc29sdmUgZGVjbGFyYXRpb25zJyk7XG4gIH1cbn07XG4iXX0=
@@ -1,6 +0,0 @@
1
- import { MockDirectiveResolver, MockNgModuleResolver, MockPipeResolver } from '@angular/compiler/testing';
2
- import { JitReflector } from './jit-reflector';
3
- export declare const jitReflector: JitReflector;
4
- export declare const directiveResolver: MockDirectiveResolver;
5
- export declare const pipeResolver: MockPipeResolver;
6
- export declare const ngModuleResolver: MockNgModuleResolver;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ngModuleResolver = exports.pipeResolver = exports.directiveResolver = exports.jitReflector = void 0;
4
- var testing_1 = require("@angular/compiler/testing");
5
- var jit_reflector_1 = require("./jit-reflector");
6
- exports.jitReflector = new jit_reflector_1.JitReflector();
7
- exports.directiveResolver = new testing_1.MockDirectiveResolver(exports.jitReflector);
8
- exports.pipeResolver = new testing_1.MockPipeResolver(exports.jitReflector);
9
- exports.ngModuleResolver = new testing_1.MockNgModuleResolver(exports.jitReflector);
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5yZWZsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2NvbW1vbi9jb3JlLnJlZmxlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQTBHO0FBRTFHLGlEQUErQztBQUVsQyxRQUFBLFlBQVksR0FBRyxJQUFJLDRCQUFZLEVBQUUsQ0FBQztBQUNsQyxRQUFBLGlCQUFpQixHQUFHLElBQUksK0JBQXFCLENBQUMsb0JBQVksQ0FBQyxDQUFDO0FBQzVELFFBQUEsWUFBWSxHQUFHLElBQUksMEJBQWdCLENBQUMsb0JBQVksQ0FBQyxDQUFDO0FBQ2xELFFBQUEsZ0JBQWdCLEdBQUcsSUFBSSw4QkFBb0IsQ0FBQyxvQkFBWSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2NrRGlyZWN0aXZlUmVzb2x2ZXIsIE1vY2tOZ01vZHVsZVJlc29sdmVyLCBNb2NrUGlwZVJlc29sdmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tcGlsZXIvdGVzdGluZyc7XG5cbmltcG9ydCB7IEppdFJlZmxlY3RvciB9IGZyb20gJy4vaml0LXJlZmxlY3Rvcic7XG5cbmV4cG9ydCBjb25zdCBqaXRSZWZsZWN0b3IgPSBuZXcgSml0UmVmbGVjdG9yKCk7XG5leHBvcnQgY29uc3QgZGlyZWN0aXZlUmVzb2x2ZXIgPSBuZXcgTW9ja0RpcmVjdGl2ZVJlc29sdmVyKGppdFJlZmxlY3Rvcik7XG5leHBvcnQgY29uc3QgcGlwZVJlc29sdmVyID0gbmV3IE1vY2tQaXBlUmVzb2x2ZXIoaml0UmVmbGVjdG9yKTtcbmV4cG9ydCBjb25zdCBuZ01vZHVsZVJlc29sdmVyID0gbmV3IE1vY2tOZ01vZHVsZVJlc29sdmVyKGppdFJlZmxlY3Rvcik7XG4iXX0=
@@ -1,3 +0,0 @@
1
- import { AnyType } from './core.types';
2
- import { ngMocksMockConfig } from './mock';
3
- export declare const MockOf: (mockClass: AnyType<any>, config?: ngMocksMockConfig) => (constructor: AnyType<any>) => void;
@@ -1,23 +0,0 @@
1
- "use strict";
2
- // tslint:disable variable-name
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.MockOf = void 0;
5
- // This helps with debugging in the browser. Decorating mock classes with this
6
- // will change the display-name of the class to 'MockOf-<ClassName>` so our
7
- // debugging output (and Angular's error messages) will mention our mock classes
8
- // by name (which will now include the original class' name.
9
- // Additionally, if we set breakpoints, we can inspect the actual class being
10
- // replaced with a mock copy by looking into the 'mockOf' property on the class.
11
- var MockOf = function (mockClass, config) {
12
- if (config === void 0) { config = {}; }
13
- return function (constructor) {
14
- Object.defineProperties(constructor, {
15
- mockOf: { value: mockClass },
16
- name: { value: "MockOf" + mockClass.name },
17
- nameConstructor: { value: constructor.name },
18
- });
19
- constructor.prototype.__ngMocksConfig = config;
20
- };
21
- };
22
- exports.MockOf = MockOf;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1vZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9jb21tb24vbW9jay1vZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0JBQStCOzs7QUFLL0IsOEVBQThFO0FBQzlFLDJFQUEyRTtBQUMzRSxnRkFBZ0Y7QUFDaEYsNERBQTREO0FBQzVELDZFQUE2RTtBQUM3RSxnRkFBZ0Y7QUFDekUsSUFBTSxNQUFNLEdBQUcsVUFBQyxTQUF1QixFQUFFLE1BQThCO0lBQTlCLHVCQUFBLEVBQUEsV0FBOEI7SUFBSyxPQUFBLFVBQUMsV0FBeUI7UUFDM0csTUFBTSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRTtZQUNuQyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFO1lBQzVCLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxXQUFTLFNBQVMsQ0FBQyxJQUFNLEVBQUU7WUFDMUMsZUFBZSxFQUFFLEVBQUUsS0FBSyxFQUFFLFdBQVcsQ0FBQyxJQUFJLEVBQUU7U0FDN0MsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDLFNBQVMsQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDO0lBQ2pELENBQUM7QUFSa0YsQ0FRbEYsQ0FBQztBQVJXLFFBQUEsTUFBTSxVQVFqQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRzbGludDpkaXNhYmxlIHZhcmlhYmxlLW5hbWVcblxuaW1wb3J0IHsgQW55VHlwZSB9IGZyb20gJy4vY29yZS50eXBlcyc7XG5pbXBvcnQgeyBuZ01vY2tzTW9ja0NvbmZpZyB9IGZyb20gJy4vbW9jayc7XG5cbi8vIFRoaXMgaGVscHMgd2l0aCBkZWJ1Z2dpbmcgaW4gdGhlIGJyb3dzZXIuIERlY29yYXRpbmcgbW9jayBjbGFzc2VzIHdpdGggdGhpc1xuLy8gd2lsbCBjaGFuZ2UgdGhlIGRpc3BsYXktbmFtZSBvZiB0aGUgY2xhc3MgdG8gJ01vY2tPZi08Q2xhc3NOYW1lPmAgc28gb3VyXG4vLyBkZWJ1Z2dpbmcgb3V0cHV0IChhbmQgQW5ndWxhcidzIGVycm9yIG1lc3NhZ2VzKSB3aWxsIG1lbnRpb24gb3VyIG1vY2sgY2xhc3Nlc1xuLy8gYnkgbmFtZSAod2hpY2ggd2lsbCBub3cgaW5jbHVkZSB0aGUgb3JpZ2luYWwgY2xhc3MnIG5hbWUuXG4vLyBBZGRpdGlvbmFsbHksIGlmIHdlIHNldCBicmVha3BvaW50cywgd2UgY2FuIGluc3BlY3QgdGhlIGFjdHVhbCBjbGFzcyBiZWluZ1xuLy8gcmVwbGFjZWQgd2l0aCBhIG1vY2sgY29weSBieSBsb29raW5nIGludG8gdGhlICdtb2NrT2YnIHByb3BlcnR5IG9uIHRoZSBjbGFzcy5cbmV4cG9ydCBjb25zdCBNb2NrT2YgPSAobW9ja0NsYXNzOiBBbnlUeXBlPGFueT4sIGNvbmZpZzogbmdNb2Nrc01vY2tDb25maWcgPSB7fSkgPT4gKGNvbnN0cnVjdG9yOiBBbnlUeXBlPGFueT4pID0+IHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoY29uc3RydWN0b3IsIHtcbiAgICBtb2NrT2Y6IHsgdmFsdWU6IG1vY2tDbGFzcyB9LFxuICAgIG5hbWU6IHsgdmFsdWU6IGBNb2NrT2Yke21vY2tDbGFzcy5uYW1lfWAgfSxcbiAgICBuYW1lQ29uc3RydWN0b3I6IHsgdmFsdWU6IGNvbnN0cnVjdG9yLm5hbWUgfSxcbiAgfSk7XG5cbiAgY29uc3RydWN0b3IucHJvdG90eXBlLl9fbmdNb2Nrc0NvbmZpZyA9IGNvbmZpZztcbn07XG4iXX0=