@expo/entity 0.46.0 → 0.47.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/src/AuthorizationResultBasedEntityMutator.d.ts +5 -3
- package/build/src/AuthorizationResultBasedEntityMutator.js +75 -37
- package/build/src/AuthorizationResultBasedEntityMutator.js.map +1 -1
- package/build/src/EntityDeleter.js +1 -1
- package/build/src/EntityDeleter.js.map +1 -1
- package/build/src/EntityFields.d.ts +7 -0
- package/build/src/EntityFields.js +11 -1
- package/build/src/EntityFields.js.map +1 -1
- package/build/src/EntityMutatorFactory.d.ts +3 -2
- package/build/src/EntityMutatorFactory.js +4 -4
- package/build/src/EntityMutatorFactory.js.map +1 -1
- package/build/src/EntityUpdater.js +1 -1
- package/build/src/EntityUpdater.js.map +1 -1
- package/build/src/ViewerScopedEntityMutatorFactory.d.ts +3 -2
- package/build/src/ViewerScopedEntityMutatorFactory.js +4 -4
- package/build/src/ViewerScopedEntityMutatorFactory.js.map +1 -1
- package/package.json +5 -3
- package/src/AuthorizationResultBasedEntityMutator.ts +63 -49
- package/src/EntityDeleter.ts +1 -1
- package/src/EntityFields.ts +13 -0
- package/src/EntityMutatorFactory.ts +5 -0
- package/src/EntityUpdater.ts +1 -1
- package/src/ViewerScopedEntityMutatorFactory.ts +5 -2
- package/src/__tests__/EntityFields-test.ts +7 -0
- package/src/__tests__/EntityMutator-test.ts +217 -16
- package/LICENSE +0 -21
- package/build/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.d.ts +0 -1
- package/build/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.js +0 -240
- package/build/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.js.map +0 -1
- package/build/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.d.ts +0 -26
- package/build/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.js +0 -109
- package/build/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.js.map +0 -1
- package/build/src/__tests__/AuthorizationResultBasedEntityLoader-test.d.ts +0 -1
- package/build/src/__tests__/AuthorizationResultBasedEntityLoader-test.js +0 -590
- package/build/src/__tests__/AuthorizationResultBasedEntityLoader-test.js.map +0 -1
- package/build/src/__tests__/ComposedCacheAdapter-test.d.ts +0 -1
- package/build/src/__tests__/ComposedCacheAdapter-test.js +0 -259
- package/build/src/__tests__/ComposedCacheAdapter-test.js.map +0 -1
- package/build/src/__tests__/ComposedSecondaryEntityCache-test.d.ts +0 -1
- package/build/src/__tests__/ComposedSecondaryEntityCache-test.js +0 -67
- package/build/src/__tests__/ComposedSecondaryEntityCache-test.js.map +0 -1
- package/build/src/__tests__/EnforcingEntityAssociationLoader-test.d.ts +0 -1
- package/build/src/__tests__/EnforcingEntityAssociationLoader-test.js +0 -113
- package/build/src/__tests__/EnforcingEntityAssociationLoader-test.js.map +0 -1
- package/build/src/__tests__/EnforcingEntityLoader-test.d.ts +0 -1
- package/build/src/__tests__/EnforcingEntityLoader-test.js +0 -316
- package/build/src/__tests__/EnforcingEntityLoader-test.js.map +0 -1
- package/build/src/__tests__/Entity-test.d.ts +0 -1
- package/build/src/__tests__/Entity-test.js +0 -92
- package/build/src/__tests__/Entity-test.js.map +0 -1
- package/build/src/__tests__/EntityAssociationLoader-test.d.ts +0 -1
- package/build/src/__tests__/EntityAssociationLoader-test.js +0 -28
- package/build/src/__tests__/EntityAssociationLoader-test.js.map +0 -1
- package/build/src/__tests__/EntityCommonUseCases-test.d.ts +0 -1
- package/build/src/__tests__/EntityCommonUseCases-test.js +0 -111
- package/build/src/__tests__/EntityCommonUseCases-test.js.map +0 -1
- package/build/src/__tests__/EntityCompanion-test.d.ts +0 -1
- package/build/src/__tests__/EntityCompanion-test.js +0 -42
- package/build/src/__tests__/EntityCompanion-test.js.map +0 -1
- package/build/src/__tests__/EntityCompanionProvider-test.d.ts +0 -1
- package/build/src/__tests__/EntityCompanionProvider-test.js +0 -53
- package/build/src/__tests__/EntityCompanionProvider-test.js.map +0 -1
- package/build/src/__tests__/EntityConfiguration-test.d.ts +0 -1
- package/build/src/__tests__/EntityConfiguration-test.js +0 -164
- package/build/src/__tests__/EntityConfiguration-test.js.map +0 -1
- package/build/src/__tests__/EntityDatabaseAdapter-test.d.ts +0 -1
- package/build/src/__tests__/EntityDatabaseAdapter-test.js +0 -189
- package/build/src/__tests__/EntityDatabaseAdapter-test.js.map +0 -1
- package/build/src/__tests__/EntityEdges-test.d.ts +0 -1
- package/build/src/__tests__/EntityEdges-test.js +0 -680
- package/build/src/__tests__/EntityEdges-test.js.map +0 -1
- package/build/src/__tests__/EntityFields-test.d.ts +0 -1
- package/build/src/__tests__/EntityFields-test.js +0 -61
- package/build/src/__tests__/EntityFields-test.js.map +0 -1
- package/build/src/__tests__/EntityLoader-test.d.ts +0 -1
- package/build/src/__tests__/EntityLoader-test.js +0 -34
- package/build/src/__tests__/EntityLoader-test.js.map +0 -1
- package/build/src/__tests__/EntityMutator-MutationCacheConsistency-test.d.ts +0 -1
- package/build/src/__tests__/EntityMutator-MutationCacheConsistency-test.js +0 -71
- package/build/src/__tests__/EntityMutator-MutationCacheConsistency-test.js.map +0 -1
- package/build/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.d.ts +0 -1
- package/build/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.js +0 -54
- package/build/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.js.map +0 -1
- package/build/src/__tests__/EntityMutator-test.d.ts +0 -1
- package/build/src/__tests__/EntityMutator-test.js +0 -721
- package/build/src/__tests__/EntityMutator-test.js.map +0 -1
- package/build/src/__tests__/EntityPrivacyPolicy-test.d.ts +0 -1
- package/build/src/__tests__/EntityPrivacyPolicy-test.js +0 -429
- package/build/src/__tests__/EntityPrivacyPolicy-test.js.map +0 -1
- package/build/src/__tests__/EntityQueryContext-test.d.ts +0 -1
- package/build/src/__tests__/EntityQueryContext-test.js +0 -181
- package/build/src/__tests__/EntityQueryContext-test.js.map +0 -1
- package/build/src/__tests__/EntitySecondaryCacheLoader-test.d.ts +0 -1
- package/build/src/__tests__/EntitySecondaryCacheLoader-test.js +0 -58
- package/build/src/__tests__/EntitySecondaryCacheLoader-test.js.map +0 -1
- package/build/src/__tests__/EntitySelfReferentialEdges-test.d.ts +0 -1
- package/build/src/__tests__/EntitySelfReferentialEdges-test.js +0 -196
- package/build/src/__tests__/EntitySelfReferentialEdges-test.js.map +0 -1
- package/build/src/__tests__/GenericEntityCacheAdapter-test.d.ts +0 -1
- package/build/src/__tests__/GenericEntityCacheAdapter-test.js +0 -95
- package/build/src/__tests__/GenericEntityCacheAdapter-test.js.map +0 -1
- package/build/src/__tests__/ReadonlyEntity-test.d.ts +0 -1
- package/build/src/__tests__/ReadonlyEntity-test.js +0 -209
- package/build/src/__tests__/ReadonlyEntity-test.js.map +0 -1
- package/build/src/__tests__/ViewerContext-test.d.ts +0 -1
- package/build/src/__tests__/ViewerContext-test.js +0 -28
- package/build/src/__tests__/ViewerContext-test.js.map +0 -1
- package/build/src/__tests__/ViewerScopedEntityCompanion-test.d.ts +0 -1
- package/build/src/__tests__/ViewerScopedEntityCompanion-test.js +0 -18
- package/build/src/__tests__/ViewerScopedEntityCompanion-test.js.map +0 -1
- package/build/src/__tests__/ViewerScopedEntityCompanionProvider-test.d.ts +0 -1
- package/build/src/__tests__/ViewerScopedEntityCompanionProvider-test.js +0 -18
- package/build/src/__tests__/ViewerScopedEntityCompanionProvider-test.js.map +0 -1
- package/build/src/__tests__/ViewerScopedEntityLoaderFactory-test.d.ts +0 -1
- package/build/src/__tests__/ViewerScopedEntityLoaderFactory-test.js +0 -21
- package/build/src/__tests__/ViewerScopedEntityLoaderFactory-test.js.map +0 -1
- package/build/src/__tests__/ViewerScopedEntityMutatorFactory-test.d.ts +0 -1
- package/build/src/__tests__/ViewerScopedEntityMutatorFactory-test.js +0 -20
- package/build/src/__tests__/ViewerScopedEntityMutatorFactory-test.js.map +0 -1
- package/build/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.d.ts +0 -1
- package/build/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.js +0 -121
- package/build/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.js.map +0 -1
- package/build/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.d.ts +0 -1
- package/build/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js +0 -119
- package/build/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js.map +0 -1
- package/build/src/__tests__/entityUtils-test.d.ts +0 -1
- package/build/src/__tests__/entityUtils-test.js +0 -88
- package/build/src/__tests__/entityUtils-test.js.map +0 -1
- package/build/src/errors/__tests__/EntityDatabaseAdapterError-test.d.ts +0 -1
- package/build/src/errors/__tests__/EntityDatabaseAdapterError-test.js +0 -21
- package/build/src/errors/__tests__/EntityDatabaseAdapterError-test.js.map +0 -1
- package/build/src/internal/__tests__/CompositeFieldHolder-test.d.ts +0 -1
- package/build/src/internal/__tests__/CompositeFieldHolder-test.js +0 -25
- package/build/src/internal/__tests__/CompositeFieldHolder-test.js.map +0 -1
- package/build/src/internal/__tests__/CompositeFieldValueMap-test.d.ts +0 -1
- package/build/src/internal/__tests__/CompositeFieldValueMap-test.js +0 -40
- package/build/src/internal/__tests__/CompositeFieldValueMap-test.js.map +0 -1
- package/build/src/internal/__tests__/EntityDataManager-test.d.ts +0 -1
- package/build/src/internal/__tests__/EntityDataManager-test.js +0 -666
- package/build/src/internal/__tests__/EntityDataManager-test.js.map +0 -1
- package/build/src/internal/__tests__/EntityFieldTransformationUtils-test.d.ts +0 -1
- package/build/src/internal/__tests__/EntityFieldTransformationUtils-test.js +0 -135
- package/build/src/internal/__tests__/EntityFieldTransformationUtils-test.js.map +0 -1
- package/build/src/internal/__tests__/ReadThroughEntityCache-test.d.ts +0 -1
- package/build/src/internal/__tests__/ReadThroughEntityCache-test.js +0 -217
- package/build/src/internal/__tests__/ReadThroughEntityCache-test.js.map +0 -1
- package/build/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.d.ts +0 -1
- package/build/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.js +0 -18
- package/build/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.js.map +0 -1
- package/build/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.d.ts +0 -1
- package/build/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.js +0 -18
- package/build/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.js.map +0 -1
- package/build/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.d.ts +0 -1
- package/build/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.js +0 -18
- package/build/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.js.map +0 -1
- package/build/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.d.ts +0 -28
- package/build/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.js +0 -53
- package/build/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.js.map +0 -1
- package/build/src/utils/__testfixtures__/SimpleTestEntity.d.ts +0 -20
- package/build/src/utils/__testfixtures__/SimpleTestEntity.js +0 -46
- package/build/src/utils/__testfixtures__/SimpleTestEntity.js.map +0 -1
- package/build/src/utils/__testfixtures__/StubCacheAdapter.d.ts +0 -29
- package/build/src/utils/__testfixtures__/StubCacheAdapter.js +0 -103
- package/build/src/utils/__testfixtures__/StubCacheAdapter.js.map +0 -1
- package/build/src/utils/__testfixtures__/StubDatabaseAdapter.d.ts +0 -26
- package/build/src/utils/__testfixtures__/StubDatabaseAdapter.js +0 -173
- package/build/src/utils/__testfixtures__/StubDatabaseAdapter.js.map +0 -1
- package/build/src/utils/__testfixtures__/StubDatabaseAdapterProvider.d.ts +0 -7
- package/build/src/utils/__testfixtures__/StubDatabaseAdapterProvider.js +0 -12
- package/build/src/utils/__testfixtures__/StubDatabaseAdapterProvider.js.map +0 -1
- package/build/src/utils/__testfixtures__/StubQueryContextProvider.d.ts +0 -7
- package/build/src/utils/__testfixtures__/StubQueryContextProvider.js +0 -17
- package/build/src/utils/__testfixtures__/StubQueryContextProvider.js.map +0 -1
- package/build/src/utils/__testfixtures__/TSMockitoExtensions.d.ts +0 -9
- package/build/src/utils/__testfixtures__/TSMockitoExtensions.js +0 -65
- package/build/src/utils/__testfixtures__/TSMockitoExtensions.js.map +0 -1
- package/build/src/utils/__testfixtures__/TestEntity.d.ts +0 -30
- package/build/src/utils/__testfixtures__/TestEntity.js +0 -96
- package/build/src/utils/__testfixtures__/TestEntity.js.map +0 -1
- package/build/src/utils/__testfixtures__/TestEntity2.d.ts +0 -20
- package/build/src/utils/__testfixtures__/TestEntity2.js +0 -49
- package/build/src/utils/__testfixtures__/TestEntity2.js.map +0 -1
- package/build/src/utils/__testfixtures__/TestEntityWithMutationTriggers.d.ts +0 -36
- package/build/src/utils/__testfixtures__/TestEntityWithMutationTriggers.js +0 -80
- package/build/src/utils/__testfixtures__/TestEntityWithMutationTriggers.js.map +0 -1
- package/build/src/utils/__testfixtures__/TestViewerContext.d.ts +0 -3
- package/build/src/utils/__testfixtures__/TestViewerContext.js +0 -8
- package/build/src/utils/__testfixtures__/TestViewerContext.js.map +0 -1
- package/build/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.d.ts +0 -7
- package/build/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.js +0 -33
- package/build/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.js.map +0 -1
- package/build/src/utils/__testfixtures__/describeFieldTestCase.d.ts +0 -2
- package/build/src/utils/__testfixtures__/describeFieldTestCase.js +0 -19
- package/build/src/utils/__testfixtures__/describeFieldTestCase.js.map +0 -1
- package/build/src/utils/__tests__/EntityCreationUtils-test.d.ts +0 -1
- package/build/src/utils/__tests__/EntityCreationUtils-test.js +0 -144
- package/build/src/utils/__tests__/EntityCreationUtils-test.js.map +0 -1
- package/build/src/utils/__tests__/EntityPrivacyUtils-test.d.ts +0 -1
- package/build/src/utils/__tests__/EntityPrivacyUtils-test.js +0 -460
- package/build/src/utils/__tests__/EntityPrivacyUtils-test.js.map +0 -1
- package/build/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.d.ts +0 -1
- package/build/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.js +0 -180
- package/build/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.js.map +0 -1
- package/build/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.d.ts +0 -1
- package/build/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.js +0 -27
- package/build/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.js.map +0 -1
- package/build/src/utils/collections/__tests__/SerializableKeyMap-test.d.ts +0 -5
- package/build/src/utils/collections/__tests__/SerializableKeyMap-test.js +0 -99
- package/build/src/utils/collections/__tests__/SerializableKeyMap-test.js.map +0 -1
- package/build/src/utils/collections/__tests__/maps-test.d.ts +0 -1
- package/build/src/utils/collections/__tests__/maps-test.js +0 -121
- package/build/src/utils/collections/__tests__/maps-test.js.map +0 -1
- package/build/src/utils/collections/__tests__/sets-test.d.ts +0 -1
- package/build/src/utils/collections/__tests__/sets-test.js +0 -19
- package/build/src/utils/collections/__tests__/sets-test.js.map +0 -1
- package/build/tsconfig.tsbuildinfo +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityDataManager-test.js","sourceRoot":"","sources":["../../../../src/internal/__tests__/EntityDataManager-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const globals_1 = require("@jest/globals");
|
|
4
|
-
const EntityConfiguration_1 = require("../../EntityConfiguration");
|
|
5
|
-
const EntityFields_1 = require("../../EntityFields");
|
|
6
|
-
const EntityFieldTransformationUtils_1 = require("../EntityFieldTransformationUtils");
|
|
7
|
-
const blahEntityConfiguration = new EntityConfiguration_1.EntityConfiguration({
|
|
8
|
-
idField: 'id',
|
|
9
|
-
tableName: 'blah_table',
|
|
10
|
-
schema: {
|
|
11
|
-
id: new EntityFields_1.UUIDField({
|
|
12
|
-
columnName: 'id',
|
|
13
|
-
cache: false,
|
|
14
|
-
}),
|
|
15
|
-
cacheable: new EntityFields_1.StringField({
|
|
16
|
-
columnName: 'cacheable',
|
|
17
|
-
cache: true,
|
|
18
|
-
}),
|
|
19
|
-
uniqueButNotCacheable: new EntityFields_1.StringField({
|
|
20
|
-
columnName: 'unique_but_not_cacheable',
|
|
21
|
-
}),
|
|
22
|
-
transformRead: new EntityFields_1.StringField({
|
|
23
|
-
columnName: 'transform_read',
|
|
24
|
-
}),
|
|
25
|
-
transformWrite: new EntityFields_1.StringField({
|
|
26
|
-
columnName: 'transform_write',
|
|
27
|
-
}),
|
|
28
|
-
},
|
|
29
|
-
databaseAdapterFlavor: 'postgres',
|
|
30
|
-
cacheAdapterFlavor: 'redis',
|
|
31
|
-
});
|
|
32
|
-
(0, globals_1.describe)(EntityFieldTransformationUtils_1.getDatabaseFieldForEntityField, () => {
|
|
33
|
-
(0, globals_1.it)('returns correct mapping', () => {
|
|
34
|
-
(0, globals_1.expect)((0, EntityFieldTransformationUtils_1.getDatabaseFieldForEntityField)(blahEntityConfiguration, 'cacheable')).toEqual('cacheable');
|
|
35
|
-
(0, globals_1.expect)((0, EntityFieldTransformationUtils_1.getDatabaseFieldForEntityField)(blahEntityConfiguration, 'uniqueButNotCacheable')).toEqual('unique_but_not_cacheable');
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
(0, globals_1.describe)(EntityFieldTransformationUtils_1.transformDatabaseObjectToFields, () => {
|
|
39
|
-
(0, globals_1.it)('leaves out unknown fields', () => {
|
|
40
|
-
(0, globals_1.expect)((0, EntityFieldTransformationUtils_1.transformDatabaseObjectToFields)(blahEntityConfiguration, new Map(), {
|
|
41
|
-
id: 'blah',
|
|
42
|
-
unique_but_not_cacheable: 'wat',
|
|
43
|
-
who: 'why',
|
|
44
|
-
})).toEqual({
|
|
45
|
-
id: 'blah',
|
|
46
|
-
uniqueButNotCacheable: 'wat',
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
(0, globals_1.it)('does field read transformation', () => {
|
|
50
|
-
const fieldTransformMap = new Map([
|
|
51
|
-
[
|
|
52
|
-
EntityFields_1.StringField.name,
|
|
53
|
-
{
|
|
54
|
-
read: (val) => `${val}-read-transformed`,
|
|
55
|
-
},
|
|
56
|
-
],
|
|
57
|
-
]);
|
|
58
|
-
(0, globals_1.expect)((0, EntityFieldTransformationUtils_1.transformDatabaseObjectToFields)(blahEntityConfiguration, fieldTransformMap, {
|
|
59
|
-
transform_read: 'wat',
|
|
60
|
-
})).toEqual({
|
|
61
|
-
transformRead: 'wat-read-transformed',
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
(0, globals_1.describe)(EntityFieldTransformationUtils_1.transformFieldsToDatabaseObject, () => {
|
|
66
|
-
(0, globals_1.it)('transforms fields', () => {
|
|
67
|
-
(0, globals_1.expect)((0, EntityFieldTransformationUtils_1.transformFieldsToDatabaseObject)(blahEntityConfiguration, new Map(), {
|
|
68
|
-
id: 'blah',
|
|
69
|
-
cacheable: 'wat',
|
|
70
|
-
uniqueButNotCacheable: 'wat',
|
|
71
|
-
})).toEqual({
|
|
72
|
-
id: 'blah',
|
|
73
|
-
cacheable: 'wat',
|
|
74
|
-
unique_but_not_cacheable: 'wat',
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
(0, globals_1.it)('does field write transformation', () => {
|
|
78
|
-
const fieldTransformMap = new Map([
|
|
79
|
-
[
|
|
80
|
-
EntityFields_1.StringField.name,
|
|
81
|
-
{
|
|
82
|
-
write: (val) => `${val}-write-transformed`,
|
|
83
|
-
},
|
|
84
|
-
],
|
|
85
|
-
]);
|
|
86
|
-
(0, globals_1.expect)((0, EntityFieldTransformationUtils_1.transformFieldsToDatabaseObject)(blahEntityConfiguration, fieldTransformMap, {
|
|
87
|
-
transformWrite: 'wat',
|
|
88
|
-
})).toEqual({
|
|
89
|
-
transform_write: 'wat-write-transformed',
|
|
90
|
-
});
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
(0, globals_1.describe)(EntityFieldTransformationUtils_1.transformCacheObjectToFields, () => {
|
|
94
|
-
(0, globals_1.it)('does field read transformation, keeping unknown fields for cache version inconsistencies', () => {
|
|
95
|
-
const fieldTransformMap = new Map([
|
|
96
|
-
[
|
|
97
|
-
EntityFields_1.StringField.name,
|
|
98
|
-
{
|
|
99
|
-
read: (val) => `${val}-read-transformed-cache`,
|
|
100
|
-
},
|
|
101
|
-
],
|
|
102
|
-
]);
|
|
103
|
-
(0, globals_1.expect)((0, EntityFieldTransformationUtils_1.transformCacheObjectToFields)(blahEntityConfiguration, fieldTransformMap, {
|
|
104
|
-
id: 'hello',
|
|
105
|
-
transformRead: 'wat',
|
|
106
|
-
unknownField: 'who',
|
|
107
|
-
})).toEqual({
|
|
108
|
-
id: 'hello',
|
|
109
|
-
transformRead: 'wat-read-transformed-cache',
|
|
110
|
-
unknownField: 'who',
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
});
|
|
114
|
-
(0, globals_1.describe)(EntityFieldTransformationUtils_1.transformFieldsToCacheObject, () => {
|
|
115
|
-
(0, globals_1.it)('does field write transformation, keeping unknown fields at runtime for cache version inconsistencies', () => {
|
|
116
|
-
const fieldTransformMap = new Map([
|
|
117
|
-
[
|
|
118
|
-
EntityFields_1.StringField.name,
|
|
119
|
-
{
|
|
120
|
-
write: (val) => `${val}-write-transformed-cache`,
|
|
121
|
-
},
|
|
122
|
-
],
|
|
123
|
-
]);
|
|
124
|
-
(0, globals_1.expect)((0, EntityFieldTransformationUtils_1.transformFieldsToCacheObject)(blahEntityConfiguration, fieldTransformMap, {
|
|
125
|
-
id: 'hello',
|
|
126
|
-
transformWrite: 'wat',
|
|
127
|
-
unknownField: 'who',
|
|
128
|
-
})).toEqual({
|
|
129
|
-
id: 'hello',
|
|
130
|
-
transformWrite: 'wat-write-transformed-cache',
|
|
131
|
-
unknownField: 'who',
|
|
132
|
-
});
|
|
133
|
-
});
|
|
134
|
-
});
|
|
135
|
-
//# sourceMappingURL=EntityFieldTransformationUtils-test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityFieldTransformationUtils-test.js","sourceRoot":"","sources":["../../../../src/internal/__tests__/EntityFieldTransformationUtils-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,217 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const globals_1 = require("@jest/globals");
|
|
4
|
-
const ts_mockito_1 = require("ts-mockito");
|
|
5
|
-
const EntityConfiguration_1 = require("../../EntityConfiguration");
|
|
6
|
-
const EntityFields_1 = require("../../EntityFields");
|
|
7
|
-
const TSMockitoExtensions_1 = require("../../utils/__testfixtures__/TSMockitoExtensions");
|
|
8
|
-
const ReadThroughEntityCache_1 = require("../ReadThroughEntityCache");
|
|
9
|
-
const SingleFieldHolder_1 = require("../SingleFieldHolder");
|
|
10
|
-
const makeEntityConfiguration = (cacheIdField) => new EntityConfiguration_1.EntityConfiguration({
|
|
11
|
-
idField: 'id',
|
|
12
|
-
tableName: 'blah',
|
|
13
|
-
schema: {
|
|
14
|
-
id: new EntityFields_1.UUIDField({ columnName: 'id', cache: cacheIdField }),
|
|
15
|
-
},
|
|
16
|
-
databaseAdapterFlavor: 'postgres',
|
|
17
|
-
cacheAdapterFlavor: 'redis',
|
|
18
|
-
});
|
|
19
|
-
const createIdFetcher = (ids) => async (fetcherFieldValues) => {
|
|
20
|
-
const results = new SingleFieldHolder_1.SingleFieldValueHolderMap();
|
|
21
|
-
fetcherFieldValues.forEach((v) => {
|
|
22
|
-
if (ids.includes(v.fieldValue)) {
|
|
23
|
-
results.set(v, [{ id: v.fieldValue }]);
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
results.set(v, []);
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
return results;
|
|
30
|
-
};
|
|
31
|
-
const createFetcherNonUnique = (ids) => async (fetcherFieldValues) => {
|
|
32
|
-
const results = new SingleFieldHolder_1.SingleFieldValueHolderMap();
|
|
33
|
-
fetcherFieldValues.forEach((v) => {
|
|
34
|
-
if (ids.includes(v.fieldValue)) {
|
|
35
|
-
results.set(v, [{ id: v.fieldValue }, { id: v.fieldValue + '2' }]);
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
results.set(v, []);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
return results;
|
|
42
|
-
};
|
|
43
|
-
(0, globals_1.describe)(ReadThroughEntityCache_1.ReadThroughEntityCache, () => {
|
|
44
|
-
(0, globals_1.describe)('readManyThroughAsync', () => {
|
|
45
|
-
(0, globals_1.it)('fetches from DB upon cache miss and caches the result', async () => {
|
|
46
|
-
const cacheAdapterMock = (0, ts_mockito_1.mock)();
|
|
47
|
-
const cacheAdapter = (0, ts_mockito_1.instance)(cacheAdapterMock);
|
|
48
|
-
const entityCache = new ReadThroughEntityCache_1.ReadThroughEntityCache(makeEntityConfiguration(true), cacheAdapter);
|
|
49
|
-
const fetcher = createIdFetcher(['wat', 'who']);
|
|
50
|
-
(0, ts_mockito_1.when)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([
|
|
51
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
52
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
53
|
-
]))).thenResolve(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([
|
|
54
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), { status: ReadThroughEntityCache_1.CacheStatus.MISS }],
|
|
55
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), { status: ReadThroughEntityCache_1.CacheStatus.MISS }],
|
|
56
|
-
])));
|
|
57
|
-
const result = await entityCache.readManyThroughAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), [
|
|
58
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
59
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
60
|
-
], fetcher);
|
|
61
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([
|
|
62
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
63
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
64
|
-
]))).once();
|
|
65
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([
|
|
66
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), { id: 'wat' }],
|
|
67
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), { id: 'who' }],
|
|
68
|
-
]))))).once();
|
|
69
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheDBMissesAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([]))).once();
|
|
70
|
-
(0, globals_1.expect)(result).toEqual(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([
|
|
71
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), [{ id: 'wat' }]],
|
|
72
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), [{ id: 'who' }]],
|
|
73
|
-
])));
|
|
74
|
-
});
|
|
75
|
-
(0, globals_1.it)('does not fetch from the DB or cache results when all cache fetches are hits', async () => {
|
|
76
|
-
const cacheAdapterMock = (0, ts_mockito_1.mock)();
|
|
77
|
-
const cacheAdapter = (0, ts_mockito_1.instance)(cacheAdapterMock);
|
|
78
|
-
const entityCache = new ReadThroughEntityCache_1.ReadThroughEntityCache(makeEntityConfiguration(true), cacheAdapter);
|
|
79
|
-
const fetcher = createIdFetcher(['wat', 'who']);
|
|
80
|
-
(0, ts_mockito_1.when)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([
|
|
81
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
82
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
83
|
-
]))).thenResolve(new Map([
|
|
84
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), { status: ReadThroughEntityCache_1.CacheStatus.HIT, item: { id: 'wat' } }],
|
|
85
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), { status: ReadThroughEntityCache_1.CacheStatus.HIT, item: { id: 'who' } }],
|
|
86
|
-
]));
|
|
87
|
-
const result = await entityCache.readManyThroughAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), [
|
|
88
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
89
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
90
|
-
], fetcher);
|
|
91
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([
|
|
92
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
93
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
94
|
-
]))).once();
|
|
95
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([
|
|
96
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), { id: 'wat' }],
|
|
97
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), { id: 'who' }],
|
|
98
|
-
]))))).never();
|
|
99
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheDBMissesAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([]))).never();
|
|
100
|
-
(0, globals_1.expect)(result).toEqual(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([
|
|
101
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), [{ id: 'wat' }]],
|
|
102
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), [{ id: 'who' }]],
|
|
103
|
-
])));
|
|
104
|
-
});
|
|
105
|
-
(0, globals_1.it)('negatively caches db misses', async () => {
|
|
106
|
-
const cacheAdapterMock = (0, ts_mockito_1.mock)();
|
|
107
|
-
const cacheAdapter = (0, ts_mockito_1.instance)(cacheAdapterMock);
|
|
108
|
-
const entityCache = new ReadThroughEntityCache_1.ReadThroughEntityCache(makeEntityConfiguration(true), cacheAdapter);
|
|
109
|
-
// simulate db miss
|
|
110
|
-
const fetcher = createIdFetcher(['wat', 'who']);
|
|
111
|
-
(0, ts_mockito_1.when)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([new SingleFieldHolder_1.SingleFieldValueHolder('why')]))).thenResolve(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([[new SingleFieldHolder_1.SingleFieldValueHolder('why'), { status: ReadThroughEntityCache_1.CacheStatus.MISS }]])));
|
|
112
|
-
const result = await entityCache.readManyThroughAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), [new SingleFieldHolder_1.SingleFieldValueHolder('why')], fetcher);
|
|
113
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([new SingleFieldHolder_1.SingleFieldValueHolder('why')]))).once();
|
|
114
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map())))).once();
|
|
115
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheDBMissesAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([new SingleFieldHolder_1.SingleFieldValueHolder('why')]))).once();
|
|
116
|
-
(0, globals_1.expect)(result).toEqual(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map()));
|
|
117
|
-
});
|
|
118
|
-
(0, globals_1.it)('does not return or fetch negatively cached results from DB', async () => {
|
|
119
|
-
const cacheAdapterMock = (0, ts_mockito_1.mock)();
|
|
120
|
-
const cacheAdapter = (0, ts_mockito_1.instance)(cacheAdapterMock);
|
|
121
|
-
const entityCache = new ReadThroughEntityCache_1.ReadThroughEntityCache(makeEntityConfiguration(true), cacheAdapter);
|
|
122
|
-
const fetcher = createIdFetcher([]);
|
|
123
|
-
(0, ts_mockito_1.when)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([new SingleFieldHolder_1.SingleFieldValueHolder('why')]))).thenResolve(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([[new SingleFieldHolder_1.SingleFieldValueHolder('why'), { status: ReadThroughEntityCache_1.CacheStatus.NEGATIVE }]])));
|
|
124
|
-
const result = await entityCache.readManyThroughAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), [new SingleFieldHolder_1.SingleFieldValueHolder('why')], fetcher);
|
|
125
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([new SingleFieldHolder_1.SingleFieldValueHolder('why')]))).once();
|
|
126
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheManyAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), (0, ts_mockito_1.anything)())).never();
|
|
127
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheDBMissesAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), (0, ts_mockito_1.anything)())).never();
|
|
128
|
-
(0, globals_1.expect)(result).toEqual(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map()));
|
|
129
|
-
});
|
|
130
|
-
(0, globals_1.it)('does a mix and match of hit, miss, and negative', async () => {
|
|
131
|
-
const cacheAdapterMock = (0, ts_mockito_1.mock)();
|
|
132
|
-
const cacheAdapter = (0, ts_mockito_1.instance)(cacheAdapterMock);
|
|
133
|
-
const entityCache = new ReadThroughEntityCache_1.ReadThroughEntityCache(makeEntityConfiguration(true), cacheAdapter);
|
|
134
|
-
const fetcher = createIdFetcher(['wat', 'who', 'why']);
|
|
135
|
-
(0, ts_mockito_1.when)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([
|
|
136
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
137
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
138
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('why'),
|
|
139
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('how'),
|
|
140
|
-
]))).thenResolve(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([
|
|
141
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), { status: ReadThroughEntityCache_1.CacheStatus.MISS }],
|
|
142
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), { status: ReadThroughEntityCache_1.CacheStatus.NEGATIVE }],
|
|
143
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('why'), { status: ReadThroughEntityCache_1.CacheStatus.HIT, item: { id: 'why' } }],
|
|
144
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('how'), { status: ReadThroughEntityCache_1.CacheStatus.MISS }],
|
|
145
|
-
])));
|
|
146
|
-
const result = await entityCache.readManyThroughAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), [
|
|
147
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
148
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
149
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('why'),
|
|
150
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('how'),
|
|
151
|
-
], fetcher);
|
|
152
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([
|
|
153
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
154
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
155
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('why'),
|
|
156
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('how'),
|
|
157
|
-
]))).once();
|
|
158
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), { id: 'wat' }]]))))).once();
|
|
159
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheDBMissesAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([new SingleFieldHolder_1.SingleFieldValueHolder('how')]))).once();
|
|
160
|
-
(0, globals_1.expect)((0, TSMockitoExtensions_1.isEqualWithEntityAware)(result, new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([
|
|
161
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), [{ id: 'wat' }]],
|
|
162
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('why'), [{ id: 'why' }]],
|
|
163
|
-
])))).toBe(true);
|
|
164
|
-
});
|
|
165
|
-
(0, globals_1.it)('does not call into cache for field that is not cacheable', async () => {
|
|
166
|
-
const cacheAdapterMock = (0, ts_mockito_1.mock)();
|
|
167
|
-
const cacheAdapter = (0, ts_mockito_1.instance)(cacheAdapterMock);
|
|
168
|
-
const entityCache = new ReadThroughEntityCache_1.ReadThroughEntityCache(makeEntityConfiguration(false), cacheAdapter);
|
|
169
|
-
const fetcher = createIdFetcher(['wat']);
|
|
170
|
-
const result = await entityCache.readManyThroughAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), [new SingleFieldHolder_1.SingleFieldValueHolder('wat')], fetcher);
|
|
171
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.loadManyAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), (0, ts_mockito_1.anything)())).never();
|
|
172
|
-
(0, globals_1.expect)(result).toEqual(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), [{ id: 'wat' }]]])));
|
|
173
|
-
});
|
|
174
|
-
(0, globals_1.it)('does not cache when DB returns multiple objects for what is supposed to be unique and returns empty', async () => {
|
|
175
|
-
const consoleSpy = globals_1.jest.spyOn(console, 'warn');
|
|
176
|
-
const cacheAdapterMock = (0, ts_mockito_1.mock)();
|
|
177
|
-
const cacheAdapter = (0, ts_mockito_1.instance)(cacheAdapterMock);
|
|
178
|
-
const entityCache = new ReadThroughEntityCache_1.ReadThroughEntityCache(makeEntityConfiguration(true), cacheAdapter);
|
|
179
|
-
const fetcher = createFetcherNonUnique(['wat', 'who']);
|
|
180
|
-
(0, ts_mockito_1.when)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([
|
|
181
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
182
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
183
|
-
]))).thenResolve(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map([
|
|
184
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), { status: ReadThroughEntityCache_1.CacheStatus.MISS }],
|
|
185
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), { status: ReadThroughEntityCache_1.CacheStatus.MISS }],
|
|
186
|
-
])));
|
|
187
|
-
const result = await entityCache.readManyThroughAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), [
|
|
188
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
189
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
190
|
-
], fetcher);
|
|
191
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.loadManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([
|
|
192
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
193
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('who'),
|
|
194
|
-
]))).once();
|
|
195
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)(new Map([
|
|
196
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('wat'), { id: 'wat' }],
|
|
197
|
-
[new SingleFieldHolder_1.SingleFieldValueHolder('who'), { id: 'who' }],
|
|
198
|
-
])))).never();
|
|
199
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.cacheDBMissesAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([]))).once();
|
|
200
|
-
(0, globals_1.expect)(result).toEqual(new SingleFieldHolder_1.SingleFieldValueHolderMap(new Map()));
|
|
201
|
-
(0, globals_1.expect)(consoleSpy).toHaveBeenCalledWith('unique key SingleField(id) in table blah returned multiple rows for SingleFieldValue(wat)');
|
|
202
|
-
(0, globals_1.expect)(consoleSpy).toHaveBeenCalledWith('unique key SingleField(id) in table blah returned multiple rows for SingleFieldValue(who)');
|
|
203
|
-
});
|
|
204
|
-
});
|
|
205
|
-
(0, globals_1.describe)('invalidateManyAsync', () => {
|
|
206
|
-
(0, globals_1.it)('calls cache adapter invalidate', async () => {
|
|
207
|
-
const cacheAdapterMock = (0, ts_mockito_1.mock)();
|
|
208
|
-
const cacheAdapter = (0, ts_mockito_1.instance)(cacheAdapterMock);
|
|
209
|
-
const entityCache = new ReadThroughEntityCache_1.ReadThroughEntityCache(makeEntityConfiguration(true), cacheAdapter);
|
|
210
|
-
await entityCache.invalidateManyAsync(new SingleFieldHolder_1.SingleFieldHolder('id'), [
|
|
211
|
-
new SingleFieldHolder_1.SingleFieldValueHolder('wat'),
|
|
212
|
-
]);
|
|
213
|
-
(0, ts_mockito_1.verify)(cacheAdapterMock.invalidateManyAsync((0, TSMockitoExtensions_1.deepEqualEntityAware)(new SingleFieldHolder_1.SingleFieldHolder('id')), (0, TSMockitoExtensions_1.deepEqualEntityAware)([new SingleFieldHolder_1.SingleFieldValueHolder('wat')]))).once();
|
|
214
|
-
});
|
|
215
|
-
});
|
|
216
|
-
});
|
|
217
|
-
//# sourceMappingURL=ReadThroughEntityCache-test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ReadThroughEntityCache-test.js","sourceRoot":"","sources":["../../../../src/internal/__tests__/ReadThroughEntityCache-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const ts_mockito_1 = require("ts-mockito");
|
|
4
|
-
const EntityQueryContext_1 = require("../../EntityQueryContext");
|
|
5
|
-
const ViewerContext_1 = require("../../ViewerContext");
|
|
6
|
-
const PrivacyPolicyRuleTestUtils_1 = require("../../utils/__testfixtures__/PrivacyPolicyRuleTestUtils");
|
|
7
|
-
const AlwaysAllowPrivacyPolicyRule_1 = require("../AlwaysAllowPrivacyPolicyRule");
|
|
8
|
-
(0, PrivacyPolicyRuleTestUtils_1.describePrivacyPolicyRule)(new AlwaysAllowPrivacyPolicyRule_1.AlwaysAllowPrivacyPolicyRule(), {
|
|
9
|
-
allowCases: [
|
|
10
|
-
{
|
|
11
|
-
viewerContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.ViewerContext)),
|
|
12
|
-
queryContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(EntityQueryContext_1.EntityQueryContext)),
|
|
13
|
-
evaluationContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)()),
|
|
14
|
-
entity: (0, ts_mockito_1.anything)(),
|
|
15
|
-
},
|
|
16
|
-
],
|
|
17
|
-
});
|
|
18
|
-
//# sourceMappingURL=AlwaysAllowPrivacyPolicyRule-test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AlwaysAllowPrivacyPolicyRule-test.js","sourceRoot":"","sources":["../../../../src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.ts"],"names":[],"mappings":";;AAAA,2CAAsD;AAGtD,iEAA8D;AAC9D,uDAAoD;AACpD,wGAAoG;AACpG,kFAA+E;AAE/E,IAAA,sDAAyB,EAAC,IAAI,2DAA4B,EAAE,EAAE;IAC5D,UAAU,EAAE;QACV;YACE,aAAa,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,6BAAa,CAAC,CAAC;YAC5C,YAAY,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,uCAAkB,CAAC,CAAC;YAChD,iBAAiB,EACf,IAAA,qBAAQ,EAAC,IAAA,iBAAI,GAAiE,CAAC;YACjF,MAAM,EAAE,IAAA,qBAAQ,GAAE;SACnB;KACF;CACF,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const ts_mockito_1 = require("ts-mockito");
|
|
4
|
-
const EntityQueryContext_1 = require("../../EntityQueryContext");
|
|
5
|
-
const ViewerContext_1 = require("../../ViewerContext");
|
|
6
|
-
const PrivacyPolicyRuleTestUtils_1 = require("../../utils/__testfixtures__/PrivacyPolicyRuleTestUtils");
|
|
7
|
-
const AlwaysDenyPrivacyPolicyRule_1 = require("../AlwaysDenyPrivacyPolicyRule");
|
|
8
|
-
(0, PrivacyPolicyRuleTestUtils_1.describePrivacyPolicyRule)(new AlwaysDenyPrivacyPolicyRule_1.AlwaysDenyPrivacyPolicyRule(), {
|
|
9
|
-
denyCases: [
|
|
10
|
-
{
|
|
11
|
-
viewerContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.ViewerContext)),
|
|
12
|
-
queryContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(EntityQueryContext_1.EntityQueryContext)),
|
|
13
|
-
evaluationContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)()),
|
|
14
|
-
entity: (0, ts_mockito_1.anything)(),
|
|
15
|
-
},
|
|
16
|
-
],
|
|
17
|
-
});
|
|
18
|
-
//# sourceMappingURL=AlwaysDenyPrivacyPolicyRule-test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AlwaysDenyPrivacyPolicyRule-test.js","sourceRoot":"","sources":["../../../../src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.ts"],"names":[],"mappings":";;AAAA,2CAAsD;AAGtD,iEAA8D;AAC9D,uDAAoD;AACpD,wGAAoG;AACpG,gFAA6E;AAE7E,IAAA,sDAAyB,EAAC,IAAI,yDAA2B,EAAE,EAAE;IAC3D,SAAS,EAAE;QACT;YACE,aAAa,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,6BAAa,CAAC,CAAC;YAC5C,YAAY,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,uCAAkB,CAAC,CAAC;YAChD,iBAAiB,EACf,IAAA,qBAAQ,EAAC,IAAA,iBAAI,GAAiE,CAAC;YACjF,MAAM,EAAE,IAAA,qBAAQ,GAAE;SACnB;KACF;CACF,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const ts_mockito_1 = require("ts-mockito");
|
|
4
|
-
const EntityQueryContext_1 = require("../../EntityQueryContext");
|
|
5
|
-
const ViewerContext_1 = require("../../ViewerContext");
|
|
6
|
-
const PrivacyPolicyRuleTestUtils_1 = require("../../utils/__testfixtures__/PrivacyPolicyRuleTestUtils");
|
|
7
|
-
const AlwaysSkipPrivacyPolicyRule_1 = require("../AlwaysSkipPrivacyPolicyRule");
|
|
8
|
-
(0, PrivacyPolicyRuleTestUtils_1.describePrivacyPolicyRule)(new AlwaysSkipPrivacyPolicyRule_1.AlwaysSkipPrivacyPolicyRule(), {
|
|
9
|
-
skipCases: [
|
|
10
|
-
{
|
|
11
|
-
viewerContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.ViewerContext)),
|
|
12
|
-
queryContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(EntityQueryContext_1.EntityQueryContext)),
|
|
13
|
-
evaluationContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)()),
|
|
14
|
-
entity: (0, ts_mockito_1.anything)(),
|
|
15
|
-
},
|
|
16
|
-
],
|
|
17
|
-
});
|
|
18
|
-
//# sourceMappingURL=AlwaysSkipPrivacyPolicyRule-test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AlwaysSkipPrivacyPolicyRule-test.js","sourceRoot":"","sources":["../../../../src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.ts"],"names":[],"mappings":";;AAAA,2CAAsD;AAGtD,iEAA8D;AAC9D,uDAAoD;AACpD,wGAAoG;AACpG,gFAA6E;AAE7E,IAAA,sDAAyB,EAAC,IAAI,yDAA2B,EAAE,EAAE;IAC3D,SAAS,EAAE;QACT;YACE,aAAa,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,6BAAa,CAAC,CAAC;YAC5C,YAAY,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,uCAAkB,CAAC,CAAC;YAChD,iBAAiB,EACf,IAAA,qBAAQ,EAAC,IAAA,iBAAI,GAAiE,CAAC;YACjF,MAAM,EAAE,IAAA,qBAAQ,GAAE;SACnB;KACF;CACF,CAAC,CAAC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { EntityPrivacyPolicyEvaluationContext } from '../../EntityPrivacyPolicy';
|
|
2
|
-
import { EntityQueryContext } from '../../EntityQueryContext';
|
|
3
|
-
import { ReadonlyEntity } from '../../ReadonlyEntity';
|
|
4
|
-
import { ViewerContext } from '../../ViewerContext';
|
|
5
|
-
import { PrivacyPolicyRule } from '../../rules/PrivacyPolicyRule';
|
|
6
|
-
export interface Case<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields> {
|
|
7
|
-
viewerContext: TViewerContext;
|
|
8
|
-
queryContext: EntityQueryContext;
|
|
9
|
-
evaluationContext: EntityPrivacyPolicyEvaluationContext<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>;
|
|
10
|
-
entity: TEntity;
|
|
11
|
-
}
|
|
12
|
-
export type CaseMap<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields> = Map<string, () => Promise<Case<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>>>;
|
|
13
|
-
/**
|
|
14
|
-
* Useful for defining test cases that have async preconditions.
|
|
15
|
-
*/
|
|
16
|
-
export declare const describePrivacyPolicyRuleWithAsyncTestCase: <TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields>(privacyPolicyRule: PrivacyPolicyRule<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, { allowCases, skipCases, denyCases, }: {
|
|
17
|
-
allowCases?: CaseMap<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>;
|
|
18
|
-
skipCases?: CaseMap<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>;
|
|
19
|
-
denyCases?: CaseMap<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>;
|
|
20
|
-
}) => void;
|
|
21
|
-
/**
|
|
22
|
-
* For test simple privacy rules that don't have complex async preconditions.
|
|
23
|
-
*/
|
|
24
|
-
export declare const describePrivacyPolicyRule: <TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields>(privacyPolicyRule: PrivacyPolicyRule<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, { allowCases, skipCases, denyCases, }: {
|
|
25
|
-
allowCases?: Case<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>[];
|
|
26
|
-
skipCases?: Case<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>[];
|
|
27
|
-
denyCases?: Case<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>[];
|
|
28
|
-
}) => void;
|