@expo/entity 0.35.0 → 0.36.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 (309) hide show
  1. package/build/AuthorizationResultBasedEntityLoader.d.ts +128 -0
  2. package/build/AuthorizationResultBasedEntityLoader.js +196 -0
  3. package/build/AuthorizationResultBasedEntityLoader.js.map +1 -0
  4. package/build/ComposedEntityCacheAdapter.js +1 -0
  5. package/build/ComposedEntityCacheAdapter.js.map +1 -1
  6. package/build/ComposedSecondaryEntityCache.js +1 -0
  7. package/build/ComposedSecondaryEntityCache.js.map +1 -1
  8. package/build/EnforcingEntityLoader.d.ts +5 -4
  9. package/build/EnforcingEntityLoader.js +4 -2
  10. package/build/EnforcingEntityLoader.js.map +1 -1
  11. package/build/Entity.d.ts +0 -27
  12. package/build/Entity.js +0 -50
  13. package/build/Entity.js.map +1 -1
  14. package/build/EntityAssociationLoader.d.ts +1 -1
  15. package/build/EntityAssociationLoader.js +17 -8
  16. package/build/EntityAssociationLoader.js.map +1 -1
  17. package/build/EntityCompanion.js +9 -1
  18. package/build/EntityCompanion.js.map +1 -1
  19. package/build/EntityCompanionProvider.d.ts +3 -1
  20. package/build/EntityCompanionProvider.js +10 -4
  21. package/build/EntityCompanionProvider.js.map +1 -1
  22. package/build/EntityConfiguration.d.ts +2 -1
  23. package/build/EntityConfiguration.js +19 -1
  24. package/build/EntityConfiguration.js.map +1 -1
  25. package/build/EntityDatabaseAdapter.d.ts +2 -2
  26. package/build/EntityDatabaseAdapter.js +5 -3
  27. package/build/EntityDatabaseAdapter.js.map +1 -1
  28. package/build/EntityFieldDefinition.d.ts +21 -10
  29. package/build/EntityFieldDefinition.js +8 -9
  30. package/build/EntityFieldDefinition.js.map +1 -1
  31. package/build/EntityFields.d.ts +10 -0
  32. package/build/EntityFields.js +15 -1
  33. package/build/EntityFields.js.map +1 -1
  34. package/build/EntityLoader.d.ts +12 -125
  35. package/build/EntityLoader.js +24 -239
  36. package/build/EntityLoader.js.map +1 -1
  37. package/build/EntityLoaderFactory.d.ts +1 -1
  38. package/build/EntityLoaderFactory.js +3 -0
  39. package/build/EntityLoaderFactory.js.map +1 -1
  40. package/build/EntityLoaderUtils.d.ts +58 -0
  41. package/build/EntityLoaderUtils.js +109 -0
  42. package/build/EntityLoaderUtils.js.map +1 -0
  43. package/build/EntityMutator.d.ts +1 -0
  44. package/build/EntityMutator.js +71 -56
  45. package/build/EntityMutator.js.map +1 -1
  46. package/build/EntityMutatorFactory.js +9 -0
  47. package/build/EntityMutatorFactory.js.map +1 -1
  48. package/build/EntityPrivacyPolicy.d.ts +11 -5
  49. package/build/EntityPrivacyPolicy.js +5 -7
  50. package/build/EntityPrivacyPolicy.js.map +1 -1
  51. package/build/EntityQueryContext.d.ts +2 -1
  52. package/build/EntityQueryContext.js +11 -6
  53. package/build/EntityQueryContext.js.map +1 -1
  54. package/build/EntitySecondaryCacheLoader.js +5 -1
  55. package/build/EntitySecondaryCacheLoader.js.map +1 -1
  56. package/build/GenericEntityCacheAdapter.js +1 -0
  57. package/build/GenericEntityCacheAdapter.js.map +1 -1
  58. package/build/GenericSecondaryEntityCache.js +2 -0
  59. package/build/GenericSecondaryEntityCache.js.map +1 -1
  60. package/build/IEntityCacheAdapterProvider.d.ts +1 -1
  61. package/build/IEntityDatabaseAdapterProvider.d.ts +1 -1
  62. package/build/ReadonlyEntity.js +5 -1
  63. package/build/ReadonlyEntity.js.map +1 -1
  64. package/build/ViewerContext.js +2 -0
  65. package/build/ViewerContext.js.map +1 -1
  66. package/build/ViewerScopedEntityCompanion.js +2 -0
  67. package/build/ViewerScopedEntityCompanion.js.map +1 -1
  68. package/build/ViewerScopedEntityCompanionProvider.d.ts +0 -1
  69. package/build/ViewerScopedEntityCompanionProvider.js +2 -1
  70. package/build/ViewerScopedEntityCompanionProvider.js.map +1 -1
  71. package/build/ViewerScopedEntityLoaderFactory.d.ts +1 -1
  72. package/build/ViewerScopedEntityLoaderFactory.js +2 -0
  73. package/build/ViewerScopedEntityLoaderFactory.js.map +1 -1
  74. package/build/ViewerScopedEntityMutatorFactory.js +2 -0
  75. package/build/ViewerScopedEntityMutatorFactory.js.map +1 -1
  76. package/build/__tests__/ComposedCacheAdapter-test.js +2 -0
  77. package/build/__tests__/ComposedCacheAdapter-test.js.map +1 -1
  78. package/build/__tests__/ComposedSecondaryEntityCache-test.js +1 -0
  79. package/build/__tests__/ComposedSecondaryEntityCache-test.js.map +1 -1
  80. package/build/__tests__/EnforcingEntityLoader-test.js +101 -113
  81. package/build/__tests__/EnforcingEntityLoader-test.js.map +1 -1
  82. package/build/__tests__/Entity-test.js +0 -132
  83. package/build/__tests__/Entity-test.js.map +1 -1
  84. package/build/__tests__/EntityAssociationLoader-test.js +6 -2
  85. package/build/__tests__/EntityAssociationLoader-test.js.map +1 -1
  86. package/build/__tests__/EntityCommonUseCases-test.js +24 -22
  87. package/build/__tests__/EntityCommonUseCases-test.js.map +1 -1
  88. package/build/__tests__/EntityCompanion-test.js +26 -3
  89. package/build/__tests__/EntityCompanion-test.js.map +1 -1
  90. package/build/__tests__/EntityConfiguration-test.js +103 -0
  91. package/build/__tests__/EntityConfiguration-test.js.map +1 -0
  92. package/build/__tests__/EntityDatabaseAdapter-test.js +6 -0
  93. package/build/__tests__/EntityDatabaseAdapter-test.js.map +1 -1
  94. package/build/__tests__/EntityEdges-test.js +61 -20
  95. package/build/__tests__/EntityEdges-test.js.map +1 -1
  96. package/build/__tests__/EntityFields-test.js +6 -0
  97. package/build/__tests__/EntityFields-test.js.map +1 -1
  98. package/build/__tests__/EntityLoader-constructor-test.js +16 -17
  99. package/build/__tests__/EntityLoader-constructor-test.js.map +1 -1
  100. package/build/__tests__/EntityLoader-test.js +74 -22
  101. package/build/__tests__/EntityLoader-test.js.map +1 -1
  102. package/build/__tests__/EntityMutator-MutationCacheConsistency-test.js +12 -15
  103. package/build/__tests__/EntityMutator-MutationCacheConsistency-test.js.map +1 -1
  104. package/build/__tests__/EntityMutator-test.js +54 -9
  105. package/build/__tests__/EntityMutator-test.js.map +1 -1
  106. package/build/__tests__/EntityPrivacyPolicy-test.js +77 -59
  107. package/build/__tests__/EntityPrivacyPolicy-test.js.map +1 -1
  108. package/build/__tests__/EntityQueryContext-test.js +9 -0
  109. package/build/__tests__/EntityQueryContext-test.js.map +1 -1
  110. package/build/__tests__/EntitySelfReferentialEdges-test.js +42 -25
  111. package/build/__tests__/EntitySelfReferentialEdges-test.js.map +1 -1
  112. package/build/__tests__/ViewerScopedEntityLoaderFactory-test.js.map +1 -1
  113. package/build/__tests__/cases/TwoEntitySameTableDisjointRows-test.js +20 -18
  114. package/build/__tests__/cases/TwoEntitySameTableDisjointRows-test.js.map +1 -1
  115. package/build/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js +12 -15
  116. package/build/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js.map +1 -1
  117. package/build/entityUtils.d.ts +1 -1
  118. package/build/entityUtils.js.map +1 -1
  119. package/build/errors/EntityCacheAdapterError.js +2 -5
  120. package/build/errors/EntityCacheAdapterError.js.map +1 -1
  121. package/build/errors/EntityDatabaseAdapterError.js +14 -35
  122. package/build/errors/EntityDatabaseAdapterError.js.map +1 -1
  123. package/build/errors/EntityError.js +1 -0
  124. package/build/errors/EntityError.js.map +1 -1
  125. package/build/errors/EntityInvalidFieldValueError.js +2 -2
  126. package/build/errors/EntityInvalidFieldValueError.js.map +1 -1
  127. package/build/errors/EntityNotAuthorizedError.js +3 -2
  128. package/build/errors/EntityNotAuthorizedError.js.map +1 -1
  129. package/build/errors/EntityNotFoundError.js +2 -2
  130. package/build/errors/EntityNotFoundError.js.map +1 -1
  131. package/build/index.d.ts +1 -0
  132. package/build/index.js +1 -0
  133. package/build/index.js.map +1 -1
  134. package/build/internal/EntityDataManager.d.ts +1 -1
  135. package/build/internal/EntityDataManager.js +6 -1
  136. package/build/internal/EntityDataManager.js.map +1 -1
  137. package/build/internal/EntityFieldTransformationUtils.d.ts +5 -5
  138. package/build/internal/EntityFieldTransformationUtils.js +5 -8
  139. package/build/internal/EntityFieldTransformationUtils.js.map +1 -1
  140. package/build/internal/EntityTableDataCoordinator.d.ts +1 -1
  141. package/build/internal/EntityTableDataCoordinator.js +5 -0
  142. package/build/internal/EntityTableDataCoordinator.js.map +1 -1
  143. package/build/internal/ReadThroughEntityCache.d.ts +1 -1
  144. package/build/internal/ReadThroughEntityCache.js +2 -0
  145. package/build/internal/ReadThroughEntityCache.js.map +1 -1
  146. package/build/internal/__tests__/EntityFieldTransformationUtils-test.js +6 -2
  147. package/build/internal/__tests__/EntityFieldTransformationUtils-test.js.map +1 -1
  148. package/build/internal/__tests__/ReadThroughEntityCache-test.js +33 -0
  149. package/build/internal/__tests__/ReadThroughEntityCache-test.js.map +1 -1
  150. package/build/metrics/IEntityMetricsAdapter.d.ts +1 -1
  151. package/build/rules/AlwaysAllowPrivacyPolicyRule.d.ts +1 -1
  152. package/build/rules/AlwaysAllowPrivacyPolicyRule.js.map +1 -1
  153. package/build/rules/AlwaysDenyPrivacyPolicyRule.d.ts +1 -1
  154. package/build/rules/AlwaysDenyPrivacyPolicyRule.js.map +1 -1
  155. package/build/rules/AlwaysSkipPrivacyPolicyRule.d.ts +1 -1
  156. package/build/rules/AlwaysSkipPrivacyPolicyRule.js.map +1 -1
  157. package/build/rules/PrivacyPolicyRule.d.ts +1 -1
  158. package/build/rules/PrivacyPolicyRule.js.map +1 -1
  159. package/build/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.js.map +1 -1
  160. package/build/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.js.map +1 -1
  161. package/build/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.js.map +1 -1
  162. package/build/testfixtures/DateIDTestEntity.js +12 -15
  163. package/build/testfixtures/DateIDTestEntity.js.map +1 -1
  164. package/build/testfixtures/SimpleTestEntity.js +12 -15
  165. package/build/testfixtures/SimpleTestEntity.js.map +1 -1
  166. package/build/testfixtures/TestEntity.js +12 -15
  167. package/build/testfixtures/TestEntity.js.map +1 -1
  168. package/build/testfixtures/TestEntity2.js +12 -15
  169. package/build/testfixtures/TestEntity2.js.map +1 -1
  170. package/build/testfixtures/TestEntityNumberKey.js +12 -15
  171. package/build/testfixtures/TestEntityNumberKey.js.map +1 -1
  172. package/build/testfixtures/TestEntityWithMutationTriggers.d.ts +36 -0
  173. package/build/testfixtures/TestEntityWithMutationTriggers.js +82 -0
  174. package/build/testfixtures/TestEntityWithMutationTriggers.js.map +1 -0
  175. package/build/utils/EntityPrivacyUtils.d.ts +34 -0
  176. package/build/utils/EntityPrivacyUtils.js +160 -0
  177. package/build/utils/EntityPrivacyUtils.js.map +1 -0
  178. package/build/utils/__tests__/EntityPrivacyUtils-test.d.ts +1 -0
  179. package/build/utils/__tests__/EntityPrivacyUtils-test.js +395 -0
  180. package/build/utils/__tests__/EntityPrivacyUtils-test.js.map +1 -0
  181. package/build/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.d.ts +1 -0
  182. package/build/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.js +26 -0
  183. package/build/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.js.map +1 -0
  184. package/build/utils/collections/maps.js.map +1 -1
  185. package/build/utils/mergeEntityMutationTriggerConfigurations.d.ts +4 -0
  186. package/build/utils/mergeEntityMutationTriggerConfigurations.js +28 -0
  187. package/build/utils/mergeEntityMutationTriggerConfigurations.js.map +1 -0
  188. package/build/utils/testing/PrivacyPolicyRuleTestUtils.d.ts +1 -1
  189. package/build/utils/testing/PrivacyPolicyRuleTestUtils.js.map +1 -1
  190. package/build/utils/testing/StubCacheAdapter.d.ts +3 -3
  191. package/build/utils/testing/StubCacheAdapter.js +3 -3
  192. package/build/utils/testing/StubCacheAdapter.js.map +1 -1
  193. package/build/utils/testing/StubDatabaseAdapter.d.ts +2 -2
  194. package/build/utils/testing/StubDatabaseAdapter.js +4 -2
  195. package/build/utils/testing/StubDatabaseAdapter.js.map +1 -1
  196. package/build/utils/testing/StubDatabaseAdapterProvider.d.ts +1 -1
  197. package/build/utils/testing/StubDatabaseAdapterProvider.js +1 -3
  198. package/build/utils/testing/StubDatabaseAdapterProvider.js.map +1 -1
  199. package/build/utils/testing/__tests__/PrivacyPolicyRuleTestUtils-test.d.ts +1 -0
  200. package/build/utils/testing/__tests__/PrivacyPolicyRuleTestUtils-test.js +42 -0
  201. package/build/utils/testing/__tests__/PrivacyPolicyRuleTestUtils-test.js.map +1 -0
  202. package/build/utils/testing/__tests__/StubDatabaseAdapter-test.js +53 -0
  203. package/build/utils/testing/__tests__/StubDatabaseAdapter-test.js.map +1 -1
  204. package/build/utils/testing/describeFieldTestCase.js.map +1 -1
  205. package/package.json +4 -3
  206. package/src/AuthorizationResultBasedEntityLoader.ts +297 -0
  207. package/src/ComposedEntityCacheAdapter.ts +6 -6
  208. package/src/ComposedSecondaryEntityCache.ts +8 -8
  209. package/src/EnforcingEntityLoader.ts +20 -19
  210. package/src/Entity.ts +11 -126
  211. package/src/EntityAssociationLoader.ts +40 -41
  212. package/src/EntityCompanion.ts +8 -4
  213. package/src/EntityCompanionProvider.ts +24 -16
  214. package/src/EntityConfiguration.ts +18 -7
  215. package/src/EntityDatabaseAdapter.ts +41 -41
  216. package/src/EntityFieldDefinition.ts +28 -18
  217. package/src/EntityFields.ts +15 -0
  218. package/src/EntityLoader.ts +63 -357
  219. package/src/EntityLoaderFactory.ts +10 -4
  220. package/src/EntityLoaderUtils.ts +149 -0
  221. package/src/EntityMutationInfo.ts +2 -2
  222. package/src/EntityMutationTriggerConfiguration.ts +5 -5
  223. package/src/EntityMutationValidator.ts +2 -2
  224. package/src/EntityMutator.ts +146 -144
  225. package/src/EntityMutatorFactory.ts +8 -8
  226. package/src/EntityPrivacyPolicy.ts +78 -28
  227. package/src/EntityQueryContext.ts +14 -13
  228. package/src/EntityQueryContextProvider.ts +5 -5
  229. package/src/EntitySecondaryCacheLoader.ts +13 -11
  230. package/src/GenericEntityCacheAdapter.ts +10 -10
  231. package/src/GenericSecondaryEntityCache.ts +6 -6
  232. package/src/IEntityCacheAdapter.ts +4 -4
  233. package/src/IEntityCacheAdapterProvider.ts +2 -2
  234. package/src/IEntityDatabaseAdapterProvider.ts +2 -2
  235. package/src/ReadonlyEntity.ts +5 -5
  236. package/src/ViewerContext.ts +5 -5
  237. package/src/ViewerScopedEntityCompanion.ts +4 -4
  238. package/src/ViewerScopedEntityCompanionProvider.ts +4 -5
  239. package/src/ViewerScopedEntityLoaderFactory.ts +10 -4
  240. package/src/ViewerScopedEntityMutatorFactory.ts +5 -5
  241. package/src/__tests__/ComposedCacheAdapter-test.ts +12 -10
  242. package/src/__tests__/ComposedSecondaryEntityCache-test.ts +8 -8
  243. package/src/__tests__/EnforcingEntityLoader-test.ts +236 -159
  244. package/src/__tests__/Entity-test.ts +0 -202
  245. package/src/__tests__/EntityAssociationLoader-test.ts +29 -25
  246. package/src/__tests__/EntityCommonUseCases-test.ts +29 -13
  247. package/src/__tests__/EntityCompanion-test.ts +57 -5
  248. package/src/__tests__/EntityConfiguration-test.ts +118 -0
  249. package/src/__tests__/EntityDatabaseAdapter-test.ts +11 -11
  250. package/src/__tests__/EntityEdges-test.ts +108 -36
  251. package/src/__tests__/EntityFields-test.ts +14 -2
  252. package/src/__tests__/EntityLoader-constructor-test.ts +20 -7
  253. package/src/__tests__/EntityLoader-test.ts +214 -86
  254. package/src/__tests__/EntityMutator-MutationCacheConsistency-test.ts +2 -2
  255. package/src/__tests__/EntityMutator-test.ts +281 -96
  256. package/src/__tests__/EntityPrivacyPolicy-test.ts +166 -53
  257. package/src/__tests__/EntityQueryContext-test.ts +30 -12
  258. package/src/__tests__/EntitySecondaryCacheLoader-test.ts +7 -7
  259. package/src/__tests__/EntitySelfReferentialEdges-test.ts +46 -26
  260. package/src/__tests__/GenericEntityCacheAdapter-test.ts +2 -2
  261. package/src/__tests__/ViewerContext-test.ts +1 -1
  262. package/src/__tests__/ViewerScopedEntityCompanion-test.ts +2 -2
  263. package/src/__tests__/ViewerScopedEntityCompanionProvider-test.ts +2 -2
  264. package/src/__tests__/ViewerScopedEntityLoaderFactory-test.ts +2 -1
  265. package/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts +19 -19
  266. package/src/__tests__/entityUtils-test.ts +2 -2
  267. package/src/entityUtils.ts +4 -4
  268. package/src/errors/EntityError.ts +4 -1
  269. package/src/errors/EntityInvalidFieldValueError.ts +2 -2
  270. package/src/errors/EntityNotAuthorizedError.ts +3 -3
  271. package/src/errors/EntityNotFoundError.ts +2 -2
  272. package/src/index.ts +1 -0
  273. package/src/internal/EntityDataManager.ts +24 -24
  274. package/src/internal/EntityFieldTransformationUtils.ts +39 -32
  275. package/src/internal/EntityTableDataCoordinator.ts +3 -3
  276. package/src/internal/ReadThroughEntityCache.ts +9 -9
  277. package/src/internal/__tests__/EntityDataManager-test.ts +51 -51
  278. package/src/internal/__tests__/EntityFieldTransformationUtils-test.ts +14 -10
  279. package/src/internal/__tests__/ReadThroughEntityCache-test.ts +74 -18
  280. package/src/metrics/EntityMetricsUtils.ts +4 -4
  281. package/src/metrics/IEntityMetricsAdapter.ts +1 -1
  282. package/src/rules/AlwaysAllowPrivacyPolicyRule.ts +9 -3
  283. package/src/rules/AlwaysDenyPrivacyPolicyRule.ts +9 -3
  284. package/src/rules/AlwaysSkipPrivacyPolicyRule.ts +9 -3
  285. package/src/rules/PrivacyPolicyRule.ts +9 -3
  286. package/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.ts +2 -1
  287. package/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.ts +2 -1
  288. package/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.ts +2 -1
  289. package/src/testfixtures/TestEntity.ts +1 -1
  290. package/src/testfixtures/TestEntityWithMutationTriggers.ts +156 -0
  291. package/src/utils/EntityPrivacyUtils.ts +325 -0
  292. package/src/utils/__tests__/EntityPrivacyUtils-test.ts +570 -0
  293. package/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.ts +29 -0
  294. package/src/utils/collections/__tests__/maps-test.ts +2 -2
  295. package/src/utils/collections/maps.ts +11 -11
  296. package/src/utils/mergeEntityMutationTriggerConfigurations.ts +44 -0
  297. package/src/utils/testing/PrivacyPolicyRuleTestUtils.ts +25 -22
  298. package/src/utils/testing/StubCacheAdapter.ts +17 -15
  299. package/src/utils/testing/StubDatabaseAdapter.ts +35 -30
  300. package/src/utils/testing/StubDatabaseAdapterProvider.ts +2 -2
  301. package/src/utils/testing/StubQueryContextProvider.ts +2 -2
  302. package/src/utils/testing/__tests__/PrivacyPolicyRuleTestUtils-test.ts +42 -0
  303. package/src/utils/testing/__tests__/StubDatabaseAdapter-test.ts +111 -29
  304. package/src/utils/testing/createUnitTestEntityCompanionProvider.ts +2 -2
  305. package/src/utils/testing/describeFieldTestCase.ts +1 -1
  306. package/build/__tests__/EntityDataConfiguration-test.js +0 -68
  307. package/build/__tests__/EntityDataConfiguration-test.js.map +0 -1
  308. package/src/__tests__/EntityDataConfiguration-test.ts +0 -77
  309. /package/build/__tests__/{EntityDataConfiguration-test.d.ts → EntityConfiguration-test.d.ts} +0 -0
@@ -5,28 +5,28 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const results_1 = require("@expo/results");
7
7
  const ts_mockito_1 = require("ts-mockito");
8
+ const AuthorizationResultBasedEntityLoader_1 = __importDefault(require("../AuthorizationResultBasedEntityLoader"));
8
9
  const EnforcingEntityLoader_1 = __importDefault(require("../EnforcingEntityLoader"));
9
- const EntityLoader_1 = __importDefault(require("../EntityLoader"));
10
10
  describe(EnforcingEntityLoader_1.default, () => {
11
11
  describe('loadManyByFieldEqualingManyAsync', () => {
12
12
  it('throws when result is unsuccessful', async () => {
13
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
13
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
14
14
  const rejection = new Error();
15
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByFieldEqualingManyAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
15
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByFieldEqualingManyAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
16
16
  hello: [(0, results_1.result)(rejection)],
17
17
  })));
18
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
19
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
18
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
19
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
20
20
  await expect(enforcingEntityLoader.loadManyByFieldEqualingManyAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
21
21
  });
22
22
  it('returns value when result is successful', async () => {
23
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
23
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
24
24
  const resolved = {};
25
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByFieldEqualingManyAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
25
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByFieldEqualingManyAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
26
26
  hello: [(0, results_1.result)(resolved)],
27
27
  })));
28
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
29
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
28
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
29
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
30
30
  await expect(enforcingEntityLoader.loadManyByFieldEqualingManyAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toEqual(new Map(Object.entries({
31
31
  hello: [resolved],
32
32
  })));
@@ -34,123 +34,119 @@ describe(EnforcingEntityLoader_1.default, () => {
34
34
  });
35
35
  describe('loadManyByFieldEqualingAsync', () => {
36
36
  it('throws when result is unsuccessful', async () => {
37
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
37
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
38
38
  const rejection = new Error();
39
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([
40
- (0, results_1.result)(rejection),
41
- ]);
42
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
43
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
39
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(rejection)]);
40
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
41
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
44
42
  await expect(enforcingEntityLoader.loadManyByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
45
43
  });
46
44
  it('returns value when result is successful', async () => {
47
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
45
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
48
46
  const resolved = {};
49
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([
50
- (0, results_1.result)(resolved),
51
- ]);
52
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
53
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
47
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(resolved)]);
48
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
49
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
54
50
  await expect(enforcingEntityLoader.loadManyByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toEqual([resolved]);
55
51
  });
56
52
  });
57
53
  describe('loadByFieldEqualingAsync', () => {
58
54
  it('throws when result is unsuccessful', async () => {
59
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
55
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
60
56
  const rejection = new Error();
61
- (0, ts_mockito_1.when)(entityLoaderMock.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
62
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
63
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
57
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
58
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
59
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
64
60
  await expect(enforcingEntityLoader.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
65
61
  });
66
62
  it('returns value when result is successful', async () => {
67
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
63
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
68
64
  const resolved = {};
69
- (0, ts_mockito_1.when)(entityLoaderMock.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
70
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
71
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
65
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
66
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
67
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
72
68
  await expect(enforcingEntityLoader.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toEqual(resolved);
73
69
  });
74
70
  it('returns null when result is successful and no entity is found', async () => {
75
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
71
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
76
72
  const resolved = null;
77
- (0, ts_mockito_1.when)(entityLoaderMock.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
78
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
79
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
73
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
74
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
75
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
80
76
  await expect(enforcingEntityLoader.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toEqual(resolved);
81
77
  });
82
78
  it('throws when multiple matching entities are found', async () => {
83
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
79
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
84
80
  const multipleEntitiesError = new Error();
85
- (0, ts_mockito_1.when)(entityLoaderMock.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenReject(multipleEntitiesError);
86
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
87
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
81
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenReject(multipleEntitiesError);
82
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
83
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
88
84
  await expect(enforcingEntityLoader.loadByFieldEqualingAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).rejects.toEqual(multipleEntitiesError);
89
85
  });
90
86
  });
91
87
  describe('loadByIDAsync', () => {
92
88
  it('throws when result is unsuccessful', async () => {
93
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
89
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
94
90
  const rejection = new Error();
95
- (0, ts_mockito_1.when)(entityLoaderMock.loadByIDAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
96
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
97
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
91
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByIDAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
92
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
93
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
98
94
  await expect(enforcingEntityLoader.loadByIDAsync((0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
99
95
  });
100
96
  it('returns value when result is successful', async () => {
101
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
97
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
102
98
  const resolved = {};
103
- (0, ts_mockito_1.when)(entityLoaderMock.loadByIDAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
104
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
105
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
99
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByIDAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
100
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
101
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
106
102
  await expect(enforcingEntityLoader.loadByIDAsync((0, ts_mockito_1.anything)())).resolves.toEqual(resolved);
107
103
  });
108
104
  });
109
105
  describe('loadByIDNullableAsync', () => {
110
106
  it('throws when result is unsuccessful', async () => {
111
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
107
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
112
108
  const rejection = new Error();
113
- (0, ts_mockito_1.when)(entityLoaderMock.loadByIDNullableAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
114
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
115
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
109
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByIDNullableAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
110
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
111
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
116
112
  await expect(enforcingEntityLoader.loadByIDNullableAsync((0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
117
113
  });
118
114
  it('returns value when result is successful', async () => {
119
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
115
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
120
116
  const resolved = {};
121
- (0, ts_mockito_1.when)(entityLoaderMock.loadByIDNullableAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
122
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
123
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
117
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByIDNullableAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
118
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
119
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
124
120
  await expect(enforcingEntityLoader.loadByIDNullableAsync((0, ts_mockito_1.anything)())).resolves.toEqual(resolved);
125
121
  });
126
122
  it('returns null when non-existent object', async () => {
127
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
123
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
128
124
  const resolved = null;
129
- (0, ts_mockito_1.when)(entityLoaderMock.loadByIDNullableAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
130
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
131
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
125
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadByIDNullableAsync((0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
126
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
127
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
132
128
  await expect(enforcingEntityLoader.loadByIDNullableAsync((0, ts_mockito_1.anything)())).resolves.toEqual(resolved);
133
129
  });
134
130
  });
135
131
  describe('loadManyByIDsAsync', () => {
136
132
  it('throws when result is unsuccessful', async () => {
137
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
133
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
138
134
  const rejection = new Error();
139
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByIDsAsync((0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
135
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByIDsAsync((0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
140
136
  hello: (0, results_1.result)(rejection),
141
137
  })));
142
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
143
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
138
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
139
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
144
140
  await expect(enforcingEntityLoader.loadManyByIDsAsync((0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
145
141
  });
146
142
  it('returns value when result is successful', async () => {
147
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
143
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
148
144
  const resolved = {};
149
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByIDsAsync((0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
145
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByIDsAsync((0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
150
146
  hello: (0, results_1.result)(resolved),
151
147
  })));
152
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
153
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
148
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
149
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
154
150
  await expect(enforcingEntityLoader.loadManyByIDsAsync((0, ts_mockito_1.anything)())).resolves.toEqual(new Map(Object.entries({
155
151
  hello: resolved,
156
152
  })));
@@ -158,25 +154,25 @@ describe(EnforcingEntityLoader_1.default, () => {
158
154
  });
159
155
  describe('loadManyByIDsNullableAsync', () => {
160
156
  it('throws when result is unsuccessful even when there is a null result', async () => {
161
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
157
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
162
158
  const rejection = new Error();
163
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByIDsNullableAsync((0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
159
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByIDsNullableAsync((0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
164
160
  hello: (0, results_1.result)(rejection),
165
161
  world: null,
166
162
  })));
167
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
168
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
163
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
164
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
169
165
  await expect(enforcingEntityLoader.loadManyByIDsNullableAsync((0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
170
166
  });
171
167
  it('returns value when result is successful', async () => {
172
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
168
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
173
169
  const resolved = {};
174
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByIDsNullableAsync((0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
170
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByIDsNullableAsync((0, ts_mockito_1.anything)())).thenResolve(new Map(Object.entries({
175
171
  hello: (0, results_1.result)(resolved),
176
172
  world: null,
177
173
  })));
178
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
179
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
174
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
175
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
180
176
  await expect(enforcingEntityLoader.loadManyByIDsNullableAsync((0, ts_mockito_1.anything)())).resolves.toEqual(new Map(Object.entries({
181
177
  hello: resolved,
182
178
  world: null,
@@ -185,80 +181,72 @@ describe(EnforcingEntityLoader_1.default, () => {
185
181
  });
186
182
  describe('loadFirstByFieldEqualityConjunction', () => {
187
183
  it('throws when result is unsuccessful', async () => {
188
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
184
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
189
185
  const rejection = new Error();
190
- (0, ts_mockito_1.when)(entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
191
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
192
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
186
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
187
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
188
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
193
189
  await expect(enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
194
190
  });
195
191
  it('returns value when result is successful', async () => {
196
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
192
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
197
193
  const resolved = {};
198
- (0, ts_mockito_1.when)(entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
199
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
200
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
194
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
195
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
196
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
201
197
  await expect(enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toEqual(resolved);
202
198
  });
203
199
  it('returns null when the query is successful but no rows match', async () => {
204
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
205
- (0, ts_mockito_1.when)(entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve(null);
206
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
207
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
200
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
201
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve(null);
202
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
203
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
208
204
  await expect(enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toBeNull();
209
205
  });
210
206
  });
211
207
  describe('loadManyByFieldEqualityConjunction', () => {
212
208
  it('throws when result is unsuccessful', async () => {
213
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
209
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
214
210
  const rejection = new Error();
215
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(rejection)]);
216
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
217
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
211
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(rejection)]);
212
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
213
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
218
214
  await expect(enforcingEntityLoader.loadManyByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
219
215
  });
220
216
  it('returns value when result is successful', async () => {
221
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
217
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
222
218
  const resolved = {};
223
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(resolved)]);
224
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
225
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
219
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(resolved)]);
220
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
221
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
226
222
  await expect(enforcingEntityLoader.loadManyByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toEqual([resolved]);
227
223
  });
228
224
  });
229
225
  describe('loadManyByRawWhereClause', () => {
230
226
  it('throws when result is unsuccessful', async () => {
231
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
227
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
232
228
  const rejection = new Error();
233
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByRawWhereClauseAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(rejection)]);
234
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
235
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
229
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByRawWhereClauseAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(rejection)]);
230
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
231
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
236
232
  await expect(enforcingEntityLoader.loadManyByRawWhereClauseAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
237
233
  });
238
234
  it('returns value when result is successful', async () => {
239
- const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
235
+ const nonEnforcingEntityLoaderMock = (0, ts_mockito_1.mock)(AuthorizationResultBasedEntityLoader_1.default);
240
236
  const resolved = {};
241
- (0, ts_mockito_1.when)(entityLoaderMock.loadManyByRawWhereClauseAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(resolved)]);
242
- const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
243
- const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
237
+ (0, ts_mockito_1.when)(nonEnforcingEntityLoaderMock.loadManyByRawWhereClauseAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve([(0, results_1.result)(resolved)]);
238
+ const nonEnforcingEntityLoader = (0, ts_mockito_1.instance)(nonEnforcingEntityLoaderMock);
239
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(nonEnforcingEntityLoader);
244
240
  await expect(enforcingEntityLoader.loadManyByRawWhereClauseAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toEqual([resolved]);
245
241
  });
246
242
  });
247
243
  it('has the same method names as EntityLoader', () => {
248
244
  const enforcingLoaderProperties = Object.getOwnPropertyNames(EnforcingEntityLoader_1.default.prototype);
249
- const loaderProperties = Object.getOwnPropertyNames(EntityLoader_1.default.prototype);
245
+ const nonEnforcingLoaderProperties = Object.getOwnPropertyNames(AuthorizationResultBasedEntityLoader_1.default.prototype);
250
246
  // ensure known differences still exist for sanity check
251
- const knownLoaderOnlyDifferences = [
252
- 'enforcing',
253
- 'invalidateFieldsAsync',
254
- 'invalidateEntityAsync',
255
- 'tryConstructEntities',
256
- 'validateFieldValues',
257
- 'constructAndAuthorizeEntitiesAsync',
258
- 'constructEntity',
259
- ];
260
- expect(loaderProperties).toEqual(expect.arrayContaining(knownLoaderOnlyDifferences));
261
- const loaderPropertiesWithoutKnownDifferences = loaderProperties.filter((p) => !knownLoaderOnlyDifferences.includes(p));
247
+ const knownLoaderOnlyDifferences = ['validateFieldValues'];
248
+ expect(nonEnforcingLoaderProperties).toEqual(expect.arrayContaining(knownLoaderOnlyDifferences));
249
+ const loaderPropertiesWithoutKnownDifferences = nonEnforcingLoaderProperties.filter((p) => !knownLoaderOnlyDifferences.includes(p));
262
250
  expect(enforcingLoaderProperties).toEqual(loaderPropertiesWithoutKnownDifferences);
263
251
  });
264
252
  });
@@ -1 +1 @@
1
- {"version":3,"file":"EnforcingEntityLoader-test.js","sourceRoot":"","sources":["../../src/__tests__/EnforcingEntityLoader-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EnforcingEntityLoader-test.js","sourceRoot":"","sources":["../../src/__tests__/EnforcingEntityLoader-test.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Entity_1 = __importDefault(require("../Entity"));
7
- const EntityConfiguration_1 = __importDefault(require("../EntityConfiguration"));
8
- const EntityFields_1 = require("../EntityFields");
9
7
  const EntityMutator_1 = require("../EntityMutator");
10
- const EntityPrivacyPolicy_1 = __importDefault(require("../EntityPrivacyPolicy"));
11
8
  const ViewerContext_1 = __importDefault(require("../ViewerContext"));
12
- const AlwaysAllowPrivacyPolicyRule_1 = __importDefault(require("../rules/AlwaysAllowPrivacyPolicyRule"));
13
- const AlwaysDenyPrivacyPolicyRule_1 = __importDefault(require("../rules/AlwaysDenyPrivacyPolicyRule"));
14
9
  const SimpleTestEntity_1 = __importDefault(require("../testfixtures/SimpleTestEntity"));
15
10
  const createUnitTestEntityCompanionProvider_1 = require("../utils/testing/createUnitTestEntityCompanionProvider");
16
11
  describe(Entity_1.default, () => {
@@ -37,132 +32,5 @@ describe(Entity_1.default, () => {
37
32
  expect(SimpleTestEntity_1.default.updater(testEntity)).toBeInstanceOf(EntityMutator_1.UpdateMutator);
38
33
  });
39
34
  });
40
- describe('canViewerUpdateAsync', () => {
41
- it('appropriately executes update privacy policy', async () => {
42
- const companionProvider = (0, createUnitTestEntityCompanionProvider_1.createUnitTestEntityCompanionProvider)();
43
- const viewerContext = new ViewerContext_1.default(companionProvider);
44
- const data = {
45
- id: 'what',
46
- };
47
- const testEntity = new SimpleTestDenyDeleteEntity({
48
- viewerContext,
49
- id: 'what',
50
- databaseFields: data,
51
- selectedFields: data,
52
- });
53
- const canViewerUpdate = await SimpleTestDenyDeleteEntity.canViewerUpdateAsync(testEntity);
54
- expect(canViewerUpdate).toBe(true);
55
- });
56
- it('denies when policy denies', async () => {
57
- const companionProvider = (0, createUnitTestEntityCompanionProvider_1.createUnitTestEntityCompanionProvider)();
58
- const viewerContext = new ViewerContext_1.default(companionProvider);
59
- const data = {
60
- id: 'what',
61
- };
62
- const testEntity = new SimpleTestDenyUpdateEntity({
63
- viewerContext,
64
- id: 'what',
65
- databaseFields: data,
66
- selectedFields: data,
67
- });
68
- const canViewerUpdate = await SimpleTestDenyUpdateEntity.canViewerUpdateAsync(testEntity);
69
- expect(canViewerUpdate).toBe(false);
70
- });
71
- });
72
- describe('canViewerDeleteAsync', () => {
73
- it('appropriately executes update privacy policy', async () => {
74
- const companionProvider = (0, createUnitTestEntityCompanionProvider_1.createUnitTestEntityCompanionProvider)();
75
- const viewerContext = new ViewerContext_1.default(companionProvider);
76
- const data = {
77
- id: 'what',
78
- };
79
- const testEntity = new SimpleTestDenyUpdateEntity({
80
- viewerContext,
81
- id: 'what',
82
- databaseFields: data,
83
- selectedFields: data,
84
- });
85
- const canViewerDelete = await SimpleTestDenyUpdateEntity.canViewerDeleteAsync(testEntity);
86
- expect(canViewerDelete).toBe(true);
87
- });
88
- it('denies when policy denies', async () => {
89
- const companionProvider = (0, createUnitTestEntityCompanionProvider_1.createUnitTestEntityCompanionProvider)();
90
- const viewerContext = new ViewerContext_1.default(companionProvider);
91
- const data = {
92
- id: 'what',
93
- };
94
- const testEntity = new SimpleTestDenyDeleteEntity({
95
- viewerContext,
96
- id: 'what',
97
- databaseFields: data,
98
- selectedFields: data,
99
- });
100
- const canViewerDelete = await SimpleTestDenyDeleteEntity.canViewerDeleteAsync(testEntity);
101
- expect(canViewerDelete).toBe(false);
102
- });
103
- });
104
- });
105
- const testEntityConfiguration = new EntityConfiguration_1.default({
106
- idField: 'id',
107
- tableName: 'blah',
108
- schema: {
109
- id: new EntityFields_1.UUIDField({
110
- columnName: 'custom_id',
111
- }),
112
- },
113
- databaseAdapterFlavor: 'postgres',
114
- cacheAdapterFlavor: 'redis',
115
35
  });
116
- class SimpleTestDenyUpdateEntityPrivacyPolicy extends EntityPrivacyPolicy_1.default {
117
- constructor() {
118
- super(...arguments);
119
- this.readRules = [
120
- new AlwaysAllowPrivacyPolicyRule_1.default(),
121
- ];
122
- this.createRules = [
123
- new AlwaysAllowPrivacyPolicyRule_1.default(),
124
- ];
125
- this.updateRules = [
126
- new AlwaysDenyPrivacyPolicyRule_1.default(),
127
- ];
128
- this.deleteRules = [
129
- new AlwaysAllowPrivacyPolicyRule_1.default(),
130
- ];
131
- }
132
- }
133
- class SimpleTestDenyDeleteEntityPrivacyPolicy extends EntityPrivacyPolicy_1.default {
134
- constructor() {
135
- super(...arguments);
136
- this.readRules = [
137
- new AlwaysAllowPrivacyPolicyRule_1.default(),
138
- ];
139
- this.createRules = [
140
- new AlwaysAllowPrivacyPolicyRule_1.default(),
141
- ];
142
- this.updateRules = [
143
- new AlwaysAllowPrivacyPolicyRule_1.default(),
144
- ];
145
- this.deleteRules = [
146
- new AlwaysDenyPrivacyPolicyRule_1.default(),
147
- ];
148
- }
149
- }
150
- class SimpleTestDenyUpdateEntity extends Entity_1.default {
151
- static defineCompanionDefinition() {
152
- return {
153
- entityClass: SimpleTestDenyUpdateEntity,
154
- entityConfiguration: testEntityConfiguration,
155
- privacyPolicyClass: SimpleTestDenyUpdateEntityPrivacyPolicy,
156
- };
157
- }
158
- }
159
- class SimpleTestDenyDeleteEntity extends Entity_1.default {
160
- static defineCompanionDefinition() {
161
- return {
162
- entityClass: SimpleTestDenyDeleteEntity,
163
- entityConfiguration: testEntityConfiguration,
164
- privacyPolicyClass: SimpleTestDenyDeleteEntityPrivacyPolicy,
165
- };
166
- }
167
- }
168
36
  //# sourceMappingURL=Entity-test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Entity-test.js","sourceRoot":"","sources":["../../src/__tests__/Entity-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Entity-test.js","sourceRoot":"","sources":["../../src/__tests__/Entity-test.ts"],"names":[],"mappings":";;;;;AAAA,uDAA+B;AAC/B,oDAAgE;AAChE,qEAA6C;AAC7C,wFAAgE;AAChE,kHAA+G;AAE/G,QAAQ,CAAC,gBAAM,EAAE,GAAG,EAAE;IACpB,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,iBAAiB,GAAG,IAAA,6EAAqC,GAAE,CAAC;YAClE,MAAM,aAAa,GAAG,IAAI,uBAAa,CAAC,iBAAiB,CAAC,CAAC;YAC3D,MAAM,CAAC,0BAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,6BAAa,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,iBAAiB,GAAG,IAAA,6EAAqC,GAAE,CAAC;YAClE,MAAM,aAAa,GAAG,IAAI,uBAAa,CAAC,iBAAiB,CAAC,CAAC;YAC3D,MAAM,IAAI,GAAG;gBACX,EAAE,EAAE,MAAM;aACX,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,0BAAgB,CAAC;gBACtC,aAAa;gBACb,EAAE,EAAE,MAAM;gBACV,cAAc,EAAE,IAAI;gBACpB,cAAc,EAAE,IAAI;aACrB,CAAC,CAAC;YACH,MAAM,CAAC,0BAAgB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,6BAAa,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}