@sprucelabs/spruce-test-fixtures 75.0.9 → 76.0.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.
- package/build/esm/index.d.ts +1 -0
- package/build/esm/index.js +1 -0
- package/build/esm/tests/FakeDependencyLoader.d.ts +8 -0
- package/build/esm/tests/FakeDependencyLoader.js +26 -0
- package/build/esm/tests/fixtures/ViewFixture.d.ts +4 -1
- package/build/esm/tests/fixtures/ViewFixture.js +6 -0
- package/build/esm/tests/routers/TestRouter.d.ts +5 -1
- package/build/esm/tests/routers/TestRouter.js +14 -8
- package/build/index.d.ts +1 -0
- package/build/index.js +3 -1
- package/build/tests/FakeDependencyLoader.d.ts +8 -0
- package/build/tests/FakeDependencyLoader.js +18 -0
- package/build/tests/fixtures/ViewFixture.d.ts +4 -1
- package/build/tests/fixtures/ViewFixture.js +6 -0
- package/build/tests/routers/TestRouter.d.ts +5 -1
- package/build/tests/routers/TestRouter.js +14 -8
- package/package.json +9 -9
package/build/esm/index.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ export { default as FakeAuthorizer } from './tests/FakeAuthorizer';
|
|
|
26
26
|
export * from './tests/FakeAuthorizer';
|
|
27
27
|
export { default as SpyViewControllerFactory } from './tests/SpyViewControllerFactory';
|
|
28
28
|
export { default as SpyAuthenticator } from './tests/fixtures/SpyAuthenticator';
|
|
29
|
+
export { default as MockDependencyLoader } from './tests/FakeDependencyLoader';
|
|
29
30
|
/**
|
|
30
31
|
* @deprecated phoneNumberIncrementer -> phoneNumberIncrementor
|
|
31
32
|
*/
|
package/build/esm/index.js
CHANGED
|
@@ -26,6 +26,7 @@ export { default as FakeAuthorizer } from './tests/FakeAuthorizer.js';
|
|
|
26
26
|
export * from './tests/FakeAuthorizer.js';
|
|
27
27
|
export { default as SpyViewControllerFactory } from './tests/SpyViewControllerFactory.js';
|
|
28
28
|
export { default as SpyAuthenticator } from './tests/fixtures/SpyAuthenticator.js';
|
|
29
|
+
export { default as MockDependencyLoader } from './tests/FakeDependencyLoader.js';
|
|
29
30
|
/**
|
|
30
31
|
* @deprecated phoneNumberIncrementer -> phoneNumberIncrementor
|
|
31
32
|
*/
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DependencyLoader, TrustedDependency } from '@sprucelabs/heartwood-view-controllers';
|
|
2
|
+
export default class FakeDependencyLoader implements DependencyLoader {
|
|
3
|
+
private fakedDependency?;
|
|
4
|
+
private constructor();
|
|
5
|
+
static Loader(): FakeDependencyLoader;
|
|
6
|
+
load<T>(dependency: TrustedDependency): Promise<T>;
|
|
7
|
+
registerDependency(_name: TrustedDependency, dependency: unknown): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { assert } from '@sprucelabs/test-utils';
|
|
11
|
+
export default class FakeDependencyLoader {
|
|
12
|
+
constructor() { }
|
|
13
|
+
static Loader() {
|
|
14
|
+
return new this();
|
|
15
|
+
}
|
|
16
|
+
load(dependency) {
|
|
17
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
18
|
+
assert.isEqual(dependency, '@zoom/videosdk', `Attempted to load untrusted dependency: ${dependency}. Trusted dependencies are limited to '@zoom/videosdk'.`);
|
|
19
|
+
assert.isTruthy(this.fakedDependency, `No faked dependency registered for: ${dependency}. Did you forget to call dependencyLoader.registerDependency()?`);
|
|
20
|
+
return this.fakedDependency;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
registerDependency(_name, dependency) {
|
|
24
|
+
this.fakedDependency = dependency;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -6,6 +6,7 @@ import { ClientProxyDecorator } from '../..';
|
|
|
6
6
|
import { TokenGenerator } from '../../ClientProxyDecorator';
|
|
7
7
|
import { TestConnectFactory } from '../../types/fixture.types';
|
|
8
8
|
import { ArgsFromSvc } from '../../types/view.types';
|
|
9
|
+
import FakeDependencyLoader from '../FakeDependencyLoader';
|
|
9
10
|
import TestRouter from '../routers/TestRouter';
|
|
10
11
|
import SpyViewControllerFactory from '../SpyViewControllerFactory';
|
|
11
12
|
import FixtureFactory from './FixtureFactory';
|
|
@@ -24,6 +25,7 @@ export default class ViewFixture {
|
|
|
24
25
|
private static scope?;
|
|
25
26
|
private static shouldAutomaticallyResetAuthenticator;
|
|
26
27
|
private static viewClient?;
|
|
28
|
+
private static device;
|
|
27
29
|
protected people: PersonFixture;
|
|
28
30
|
protected organizations: OrganizationFixture;
|
|
29
31
|
protected locations: LocationFixture;
|
|
@@ -34,7 +36,7 @@ export default class ViewFixture {
|
|
|
34
36
|
private proxyDecorator;
|
|
35
37
|
private locale;
|
|
36
38
|
private permissions;
|
|
37
|
-
private
|
|
39
|
+
private mockDependencyLoader;
|
|
38
40
|
static lockProxyCacheForPerson(id: any): void;
|
|
39
41
|
static setShouldAutomaticallyResetAuth(shouldReset: false): void;
|
|
40
42
|
constructor(options: {
|
|
@@ -75,6 +77,7 @@ export default class ViewFixture {
|
|
|
75
77
|
getScope(): SpyScope;
|
|
76
78
|
getLocale(): Locale;
|
|
77
79
|
getRouter(): TestRouter;
|
|
80
|
+
getDependencyLoader(): FakeDependencyLoader;
|
|
78
81
|
/**
|
|
79
82
|
* @deprecated this.views.getAuthorizer() -> this.permissions.getAuthorizer()
|
|
80
83
|
*/
|
|
@@ -16,6 +16,7 @@ import SpruceError from '../../errors/SpruceError.js';
|
|
|
16
16
|
import spyMapUtil from '../../utilities/SpyMapUtil.js';
|
|
17
17
|
import vcDiskUtil from '../../utilities/vcDisk.utility.js';
|
|
18
18
|
import FakeSkillViewController from '../Fake.svc.js';
|
|
19
|
+
import FakeDependencyLoader from '../FakeDependencyLoader.js';
|
|
19
20
|
import TestRouter from '../routers/TestRouter.js';
|
|
20
21
|
import SpyViewControllerFactory from '../SpyViewControllerFactory.js';
|
|
21
22
|
import { doesScopeIncludeLocation, doesScopeIncludeOrganization, } from './scopeUtils.js';
|
|
@@ -29,6 +30,7 @@ class ViewFixture {
|
|
|
29
30
|
this.shouldAutomaticallyResetAuthenticator = shouldReset;
|
|
30
31
|
}
|
|
31
32
|
constructor(options) {
|
|
33
|
+
this.mockDependencyLoader = FakeDependencyLoader.Loader();
|
|
32
34
|
const { connectToApi, people, organizations: orgs, locations, fixtureFactory, vcDir, cwd, namespace, proxyDecorator, permissions, } = options;
|
|
33
35
|
this.connectToApi = connectToApi;
|
|
34
36
|
this.people = people;
|
|
@@ -281,9 +283,13 @@ class ViewFixture {
|
|
|
281
283
|
scope: this.getScope(),
|
|
282
284
|
locale: this.getLocale(),
|
|
283
285
|
authorizer: this.permissions.getAuthorizer(),
|
|
286
|
+
dependencyLoader: this.getDependencyLoader(),
|
|
284
287
|
});
|
|
285
288
|
return TestRouter.getInstance();
|
|
286
289
|
}
|
|
290
|
+
getDependencyLoader() {
|
|
291
|
+
return this.mockDependencyLoader;
|
|
292
|
+
}
|
|
287
293
|
/**
|
|
288
294
|
* @deprecated this.views.getAuthorizer() -> this.permissions.getAuthorizer()
|
|
289
295
|
*/
|
|
@@ -2,6 +2,7 @@ import { Locale } from '@sprucelabs/calendar-utils';
|
|
|
2
2
|
import { Authorizer, Router, Scope, SkillViewController, SkillViewControllerArgs, SkillViewControllerId, SkillViewControllerLoadOptions, SkillViewControllerMap, ViewControllerFactory } from '@sprucelabs/heartwood-view-controllers';
|
|
3
3
|
import { AbstractEventEmitter } from '@sprucelabs/mercury-event-emitter';
|
|
4
4
|
import { MercuryEventEmitter } from '@sprucelabs/mercury-types';
|
|
5
|
+
import FakeDependencyLoader from '../FakeDependencyLoader';
|
|
5
6
|
import FakeThemeManager from '../FakeThemeManager';
|
|
6
7
|
export default class TestRouter extends AbstractEventEmitter<Contract> implements Router, MercuryEventEmitter<Contract> {
|
|
7
8
|
private vcFactory;
|
|
@@ -11,13 +12,15 @@ export default class TestRouter extends AbstractEventEmitter<Contract> implement
|
|
|
11
12
|
private static scope;
|
|
12
13
|
private static locale;
|
|
13
14
|
private static shouldLoadDestinationVc;
|
|
15
|
+
private static authorizer;
|
|
14
16
|
private static shouldThrowWhenRedirectingToBadSvc;
|
|
17
|
+
private static mockDependencyLoader;
|
|
15
18
|
private scope;
|
|
16
19
|
private locale;
|
|
17
20
|
private manuallySetNamespace?;
|
|
18
21
|
private readonly themes;
|
|
19
22
|
private authorizer;
|
|
20
|
-
private
|
|
23
|
+
private mockDependencyLoader;
|
|
21
24
|
static setShouldThrowWhenRedirectingToBadSvc(shouldThrow: boolean): void;
|
|
22
25
|
private constructor();
|
|
23
26
|
static setShouldLoadDestinationVc(shouldLoad: boolean): void;
|
|
@@ -31,6 +34,7 @@ export default class TestRouter extends AbstractEventEmitter<Contract> implement
|
|
|
31
34
|
scope: Scope;
|
|
32
35
|
locale: Locale;
|
|
33
36
|
authorizer: Authorizer;
|
|
37
|
+
dependencyLoader: FakeDependencyLoader;
|
|
34
38
|
}): void;
|
|
35
39
|
getPresentVc(): SkillViewController<any, import("@sprucelabs/calendar-utils").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.SkillView> | undefined;
|
|
36
40
|
redirect<Id extends SkillViewControllerId>(id: Id, args?: SkillViewControllerArgs<Id>): Promise<SkillViewControllerMap[Id]>;
|
|
@@ -19,10 +19,12 @@ class TestRouter extends AbstractEventEmitter {
|
|
|
19
19
|
constructor(options) {
|
|
20
20
|
super(contract);
|
|
21
21
|
this.themes = new FakeThemeManager();
|
|
22
|
-
|
|
23
|
-
this.
|
|
24
|
-
this.
|
|
25
|
-
this.
|
|
22
|
+
const { vcFactory, scope, locale, authorizer, dependencyLoader } = options;
|
|
23
|
+
this.vcFactory = vcFactory;
|
|
24
|
+
this.scope = scope;
|
|
25
|
+
this.locale = locale;
|
|
26
|
+
this.authorizer = authorizer;
|
|
27
|
+
this.mockDependencyLoader = dependencyLoader;
|
|
26
28
|
}
|
|
27
29
|
static setShouldLoadDestinationVc(shouldLoad) {
|
|
28
30
|
this.shouldLoadDestinationVc = shouldLoad;
|
|
@@ -34,6 +36,7 @@ class TestRouter extends AbstractEventEmitter {
|
|
|
34
36
|
scope: this.scope,
|
|
35
37
|
locale: this.locale,
|
|
36
38
|
authorizer: this.authorizer,
|
|
39
|
+
dependencyLoader: this.mockDependencyLoader,
|
|
37
40
|
});
|
|
38
41
|
routerTestPatcher.patchRedirectToThrow(this.instance);
|
|
39
42
|
}
|
|
@@ -61,10 +64,12 @@ class TestRouter extends AbstractEventEmitter {
|
|
|
61
64
|
return id.split('.')[0];
|
|
62
65
|
}
|
|
63
66
|
static setup(options) {
|
|
64
|
-
|
|
65
|
-
this.
|
|
66
|
-
this.
|
|
67
|
-
this.
|
|
67
|
+
const { vcFactory, scope, locale, authorizer, dependencyLoader } = options;
|
|
68
|
+
this.vcFactory = vcFactory;
|
|
69
|
+
this.scope = scope;
|
|
70
|
+
this.locale = locale;
|
|
71
|
+
this.authorizer = authorizer;
|
|
72
|
+
this.mockDependencyLoader = dependencyLoader;
|
|
68
73
|
}
|
|
69
74
|
getPresentVc() {
|
|
70
75
|
return this.presentVc;
|
|
@@ -106,6 +111,7 @@ class TestRouter extends AbstractEventEmitter {
|
|
|
106
111
|
authorizer: this.authorizer,
|
|
107
112
|
scope: this.scope,
|
|
108
113
|
themes: this.themes,
|
|
114
|
+
dependencyLoader: this.mockDependencyLoader,
|
|
109
115
|
};
|
|
110
116
|
}
|
|
111
117
|
}
|
package/build/index.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ export { default as FakeAuthorizer } from './tests/FakeAuthorizer';
|
|
|
26
26
|
export * from './tests/FakeAuthorizer';
|
|
27
27
|
export { default as SpyViewControllerFactory } from './tests/SpyViewControllerFactory';
|
|
28
28
|
export { default as SpyAuthenticator } from './tests/fixtures/SpyAuthenticator';
|
|
29
|
+
export { default as MockDependencyLoader } from './tests/FakeDependencyLoader';
|
|
29
30
|
/**
|
|
30
31
|
* @deprecated phoneNumberIncrementer -> phoneNumberIncrementor
|
|
31
32
|
*/
|
package/build/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.phoneNumberIncrementor = exports.phoneNumberIncrementer = exports.SpyAuthenticator = exports.SpyViewControllerFactory = exports.FakeAuthorizer = exports.SpyScope = exports.FakeThemeManager = exports.ClientProxyDecorator = exports.eventFaker = exports.fake = exports.install = exports.login = exports.seed = exports.TestRouter = exports.vcDiskUtil = exports.FakeSkillViewController = exports.MercuryFixture = exports.ViewControllerFixture = exports.RoleFixture = exports.ViewFixture = exports.LocationFixture = exports.SkillFixture = exports.PersonFixture = exports.StoreFixture = exports.OrganizationFixture = exports.AbstractSpruceFixtureTest = void 0;
|
|
20
|
+
exports.phoneNumberIncrementor = exports.phoneNumberIncrementer = exports.MockDependencyLoader = exports.SpyAuthenticator = exports.SpyViewControllerFactory = exports.FakeAuthorizer = exports.SpyScope = exports.FakeThemeManager = exports.ClientProxyDecorator = exports.eventFaker = exports.fake = exports.install = exports.login = exports.seed = exports.TestRouter = exports.vcDiskUtil = exports.FakeSkillViewController = exports.MercuryFixture = exports.ViewControllerFixture = exports.RoleFixture = exports.ViewFixture = exports.LocationFixture = exports.SkillFixture = exports.PersonFixture = exports.StoreFixture = exports.OrganizationFixture = exports.AbstractSpruceFixtureTest = void 0;
|
|
21
21
|
var AbstractSpruceFixtureTest_1 = require("./tests/AbstractSpruceFixtureTest");
|
|
22
22
|
Object.defineProperty(exports, "AbstractSpruceFixtureTest", { enumerable: true, get: function () { return __importDefault(AbstractSpruceFixtureTest_1).default; } });
|
|
23
23
|
__exportStar(require("./types/fixture.types"), exports);
|
|
@@ -70,6 +70,8 @@ var SpyViewControllerFactory_1 = require("./tests/SpyViewControllerFactory");
|
|
|
70
70
|
Object.defineProperty(exports, "SpyViewControllerFactory", { enumerable: true, get: function () { return __importDefault(SpyViewControllerFactory_1).default; } });
|
|
71
71
|
var SpyAuthenticator_1 = require("./tests/fixtures/SpyAuthenticator");
|
|
72
72
|
Object.defineProperty(exports, "SpyAuthenticator", { enumerable: true, get: function () { return __importDefault(SpyAuthenticator_1).default; } });
|
|
73
|
+
var FakeDependencyLoader_1 = require("./tests/FakeDependencyLoader");
|
|
74
|
+
Object.defineProperty(exports, "MockDependencyLoader", { enumerable: true, get: function () { return __importDefault(FakeDependencyLoader_1).default; } });
|
|
73
75
|
/**
|
|
74
76
|
* @deprecated phoneNumberIncrementer -> phoneNumberIncrementor
|
|
75
77
|
*/
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DependencyLoader, TrustedDependency } from '@sprucelabs/heartwood-view-controllers';
|
|
2
|
+
export default class FakeDependencyLoader implements DependencyLoader {
|
|
3
|
+
private fakedDependency?;
|
|
4
|
+
private constructor();
|
|
5
|
+
static Loader(): FakeDependencyLoader;
|
|
6
|
+
load<T>(dependency: TrustedDependency): Promise<T>;
|
|
7
|
+
registerDependency(_name: TrustedDependency, dependency: unknown): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const test_utils_1 = require("@sprucelabs/test-utils");
|
|
4
|
+
class FakeDependencyLoader {
|
|
5
|
+
constructor() { }
|
|
6
|
+
static Loader() {
|
|
7
|
+
return new this();
|
|
8
|
+
}
|
|
9
|
+
async load(dependency) {
|
|
10
|
+
test_utils_1.assert.isEqual(dependency, '@zoom/videosdk', `Attempted to load untrusted dependency: ${dependency}. Trusted dependencies are limited to '@zoom/videosdk'.`);
|
|
11
|
+
test_utils_1.assert.isTruthy(this.fakedDependency, `No faked dependency registered for: ${dependency}. Did you forget to call dependencyLoader.registerDependency()?`);
|
|
12
|
+
return this.fakedDependency;
|
|
13
|
+
}
|
|
14
|
+
registerDependency(_name, dependency) {
|
|
15
|
+
this.fakedDependency = dependency;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = FakeDependencyLoader;
|
|
@@ -6,6 +6,7 @@ import { ClientProxyDecorator } from '../..';
|
|
|
6
6
|
import { TokenGenerator } from '../../ClientProxyDecorator';
|
|
7
7
|
import { TestConnectFactory } from '../../types/fixture.types';
|
|
8
8
|
import { ArgsFromSvc } from '../../types/view.types';
|
|
9
|
+
import FakeDependencyLoader from '../FakeDependencyLoader';
|
|
9
10
|
import TestRouter from '../routers/TestRouter';
|
|
10
11
|
import SpyViewControllerFactory from '../SpyViewControllerFactory';
|
|
11
12
|
import FixtureFactory from './FixtureFactory';
|
|
@@ -24,6 +25,7 @@ export default class ViewFixture {
|
|
|
24
25
|
private static scope?;
|
|
25
26
|
private static shouldAutomaticallyResetAuthenticator;
|
|
26
27
|
private static viewClient?;
|
|
28
|
+
private static device;
|
|
27
29
|
protected people: PersonFixture;
|
|
28
30
|
protected organizations: OrganizationFixture;
|
|
29
31
|
protected locations: LocationFixture;
|
|
@@ -34,7 +36,7 @@ export default class ViewFixture {
|
|
|
34
36
|
private proxyDecorator;
|
|
35
37
|
private locale;
|
|
36
38
|
private permissions;
|
|
37
|
-
private
|
|
39
|
+
private mockDependencyLoader;
|
|
38
40
|
static lockProxyCacheForPerson(id: any): void;
|
|
39
41
|
static setShouldAutomaticallyResetAuth(shouldReset: false): void;
|
|
40
42
|
constructor(options: {
|
|
@@ -75,6 +77,7 @@ export default class ViewFixture {
|
|
|
75
77
|
getScope(): SpyScope;
|
|
76
78
|
getLocale(): Locale;
|
|
77
79
|
getRouter(): TestRouter;
|
|
80
|
+
getDependencyLoader(): FakeDependencyLoader;
|
|
78
81
|
/**
|
|
79
82
|
* @deprecated this.views.getAuthorizer() -> this.permissions.getAuthorizer()
|
|
80
83
|
*/
|
|
@@ -12,6 +12,7 @@ const SpruceError_1 = __importDefault(require("../../errors/SpruceError"));
|
|
|
12
12
|
const SpyMapUtil_1 = __importDefault(require("../../utilities/SpyMapUtil"));
|
|
13
13
|
const vcDisk_utility_1 = __importDefault(require("../../utilities/vcDisk.utility"));
|
|
14
14
|
const Fake_svc_1 = __importDefault(require("../Fake.svc"));
|
|
15
|
+
const FakeDependencyLoader_1 = __importDefault(require("../FakeDependencyLoader"));
|
|
15
16
|
const TestRouter_1 = __importDefault(require("../routers/TestRouter"));
|
|
16
17
|
const SpyViewControllerFactory_1 = __importDefault(require("../SpyViewControllerFactory"));
|
|
17
18
|
const scopeUtils_1 = require("./scopeUtils");
|
|
@@ -25,6 +26,7 @@ class ViewFixture {
|
|
|
25
26
|
this.shouldAutomaticallyResetAuthenticator = shouldReset;
|
|
26
27
|
}
|
|
27
28
|
constructor(options) {
|
|
29
|
+
this.mockDependencyLoader = FakeDependencyLoader_1.default.Loader();
|
|
28
30
|
const { connectToApi, people, organizations: orgs, locations, fixtureFactory, vcDir, cwd, namespace, proxyDecorator, permissions, } = options;
|
|
29
31
|
this.connectToApi = connectToApi;
|
|
30
32
|
this.people = people;
|
|
@@ -273,9 +275,13 @@ class ViewFixture {
|
|
|
273
275
|
scope: this.getScope(),
|
|
274
276
|
locale: this.getLocale(),
|
|
275
277
|
authorizer: this.permissions.getAuthorizer(),
|
|
278
|
+
dependencyLoader: this.getDependencyLoader(),
|
|
276
279
|
});
|
|
277
280
|
return TestRouter_1.default.getInstance();
|
|
278
281
|
}
|
|
282
|
+
getDependencyLoader() {
|
|
283
|
+
return this.mockDependencyLoader;
|
|
284
|
+
}
|
|
279
285
|
/**
|
|
280
286
|
* @deprecated this.views.getAuthorizer() -> this.permissions.getAuthorizer()
|
|
281
287
|
*/
|
|
@@ -2,6 +2,7 @@ import { Locale } from '@sprucelabs/calendar-utils';
|
|
|
2
2
|
import { Authorizer, Router, Scope, SkillViewController, SkillViewControllerArgs, SkillViewControllerId, SkillViewControllerLoadOptions, SkillViewControllerMap, ViewControllerFactory } from '@sprucelabs/heartwood-view-controllers';
|
|
3
3
|
import { AbstractEventEmitter } from '@sprucelabs/mercury-event-emitter';
|
|
4
4
|
import { MercuryEventEmitter } from '@sprucelabs/mercury-types';
|
|
5
|
+
import FakeDependencyLoader from '../FakeDependencyLoader';
|
|
5
6
|
import FakeThemeManager from '../FakeThemeManager';
|
|
6
7
|
export default class TestRouter extends AbstractEventEmitter<Contract> implements Router, MercuryEventEmitter<Contract> {
|
|
7
8
|
private vcFactory;
|
|
@@ -11,13 +12,15 @@ export default class TestRouter extends AbstractEventEmitter<Contract> implement
|
|
|
11
12
|
private static scope;
|
|
12
13
|
private static locale;
|
|
13
14
|
private static shouldLoadDestinationVc;
|
|
15
|
+
private static authorizer;
|
|
14
16
|
private static shouldThrowWhenRedirectingToBadSvc;
|
|
17
|
+
private static mockDependencyLoader;
|
|
15
18
|
private scope;
|
|
16
19
|
private locale;
|
|
17
20
|
private manuallySetNamespace?;
|
|
18
21
|
private readonly themes;
|
|
19
22
|
private authorizer;
|
|
20
|
-
private
|
|
23
|
+
private mockDependencyLoader;
|
|
21
24
|
static setShouldThrowWhenRedirectingToBadSvc(shouldThrow: boolean): void;
|
|
22
25
|
private constructor();
|
|
23
26
|
static setShouldLoadDestinationVc(shouldLoad: boolean): void;
|
|
@@ -31,6 +34,7 @@ export default class TestRouter extends AbstractEventEmitter<Contract> implement
|
|
|
31
34
|
scope: Scope;
|
|
32
35
|
locale: Locale;
|
|
33
36
|
authorizer: Authorizer;
|
|
37
|
+
dependencyLoader: FakeDependencyLoader;
|
|
34
38
|
}): void;
|
|
35
39
|
getPresentVc(): SkillViewController<any, import("@sprucelabs/calendar-utils").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.SkillView> | undefined;
|
|
36
40
|
redirect<Id extends SkillViewControllerId>(id: Id, args?: SkillViewControllerArgs<Id>): Promise<SkillViewControllerMap[Id]>;
|
|
@@ -15,10 +15,12 @@ class TestRouter extends mercury_event_emitter_1.AbstractEventEmitter {
|
|
|
15
15
|
constructor(options) {
|
|
16
16
|
super(contract);
|
|
17
17
|
this.themes = new FakeThemeManager_1.default();
|
|
18
|
-
|
|
19
|
-
this.
|
|
20
|
-
this.
|
|
21
|
-
this.
|
|
18
|
+
const { vcFactory, scope, locale, authorizer, dependencyLoader } = options;
|
|
19
|
+
this.vcFactory = vcFactory;
|
|
20
|
+
this.scope = scope;
|
|
21
|
+
this.locale = locale;
|
|
22
|
+
this.authorizer = authorizer;
|
|
23
|
+
this.mockDependencyLoader = dependencyLoader;
|
|
22
24
|
}
|
|
23
25
|
static setShouldLoadDestinationVc(shouldLoad) {
|
|
24
26
|
this.shouldLoadDestinationVc = shouldLoad;
|
|
@@ -30,6 +32,7 @@ class TestRouter extends mercury_event_emitter_1.AbstractEventEmitter {
|
|
|
30
32
|
scope: this.scope,
|
|
31
33
|
locale: this.locale,
|
|
32
34
|
authorizer: this.authorizer,
|
|
35
|
+
dependencyLoader: this.mockDependencyLoader,
|
|
33
36
|
});
|
|
34
37
|
heartwood_view_controllers_1.routerTestPatcher.patchRedirectToThrow(this.instance);
|
|
35
38
|
}
|
|
@@ -56,10 +59,12 @@ class TestRouter extends mercury_event_emitter_1.AbstractEventEmitter {
|
|
|
56
59
|
return id.split('.')[0];
|
|
57
60
|
}
|
|
58
61
|
static setup(options) {
|
|
59
|
-
|
|
60
|
-
this.
|
|
61
|
-
this.
|
|
62
|
-
this.
|
|
62
|
+
const { vcFactory, scope, locale, authorizer, dependencyLoader } = options;
|
|
63
|
+
this.vcFactory = vcFactory;
|
|
64
|
+
this.scope = scope;
|
|
65
|
+
this.locale = locale;
|
|
66
|
+
this.authorizer = authorizer;
|
|
67
|
+
this.mockDependencyLoader = dependencyLoader;
|
|
63
68
|
}
|
|
64
69
|
getPresentVc() {
|
|
65
70
|
return this.presentVc;
|
|
@@ -96,6 +101,7 @@ class TestRouter extends mercury_event_emitter_1.AbstractEventEmitter {
|
|
|
96
101
|
authorizer: this.authorizer,
|
|
97
102
|
scope: this.scope,
|
|
98
103
|
themes: this.themes,
|
|
104
|
+
dependencyLoader: this.mockDependencyLoader,
|
|
99
105
|
};
|
|
100
106
|
}
|
|
101
107
|
}
|
package/package.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"@sprucelabs/spruce-test-fixtures"
|
|
14
14
|
]
|
|
15
15
|
},
|
|
16
|
-
"version": "
|
|
16
|
+
"version": "76.0.0",
|
|
17
17
|
"files": [
|
|
18
18
|
"build/**/*",
|
|
19
19
|
"!build/__tests__",
|
|
@@ -60,17 +60,17 @@
|
|
|
60
60
|
"lint.tsc": "tsc -p . --noEmit"
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
|
-
"@sprucelabs/data-stores": "^31.0.
|
|
63
|
+
"@sprucelabs/data-stores": "^31.0.10",
|
|
64
64
|
"@sprucelabs/error": "^8.0.3",
|
|
65
|
-
"@sprucelabs/heartwood-view-controllers": "^
|
|
66
|
-
"@sprucelabs/mercury-client": "^45.0.
|
|
67
|
-
"@sprucelabs/mercury-core-events": "^28.0.
|
|
68
|
-
"@sprucelabs/mercury-event-emitter": "^45.0.
|
|
65
|
+
"@sprucelabs/heartwood-view-controllers": "^128.0.0",
|
|
66
|
+
"@sprucelabs/mercury-client": "^45.0.10",
|
|
67
|
+
"@sprucelabs/mercury-core-events": "^28.0.9",
|
|
68
|
+
"@sprucelabs/mercury-event-emitter": "^45.0.10",
|
|
69
69
|
"@sprucelabs/schema": "^33.0.7",
|
|
70
70
|
"@sprucelabs/spruce-core-schemas": "^42.0.8",
|
|
71
71
|
"@sprucelabs/spruce-event-utils": "^42.0.8",
|
|
72
|
-
"@sprucelabs/spruce-permission-utils": "^20.0.
|
|
73
|
-
"@sprucelabs/spruce-skill-booter": "^
|
|
72
|
+
"@sprucelabs/spruce-permission-utils": "^20.0.10",
|
|
73
|
+
"@sprucelabs/spruce-skill-booter": "^76.0.0",
|
|
74
74
|
"@sprucelabs/spruce-skill-utils": "^33.0.8",
|
|
75
75
|
"@sprucelabs/test-utils": "^7.0.7",
|
|
76
76
|
"dotenv": "^17.2.3",
|
|
@@ -113,5 +113,5 @@
|
|
|
113
113
|
"^#spruce/(.*)$": "<rootDir>/build/.spruce/$1"
|
|
114
114
|
}
|
|
115
115
|
},
|
|
116
|
-
"gitHead": "
|
|
116
|
+
"gitHead": "a5917266e4f103d1d59e6f159b2ef280d836feb2"
|
|
117
117
|
}
|