@expo/entity 0.30.0 → 0.31.1

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.
@@ -42,6 +42,11 @@ export default class EnforcingEntityLoader<TFields, TID extends NonNullable<TFie
42
42
  * @throws EntityNotAuthorizedError when viewer is not authorized to view one or more of the returned entities
43
43
  */
44
44
  loadManyByIDsAsync(ids: readonly TID[]): Promise<ReadonlyMap<TID, TEntity>>;
45
+ /**
46
+ * Enforcing version of entity loader method by the same name.
47
+ * @throws EntityNotAuthorizedError when viewer is not authorized to view one or more of the returned entities
48
+ */
49
+ loadFirstByFieldEqualityConjunctionAsync<N extends keyof Pick<TFields, TSelectedFields>>(fieldEqualityOperands: FieldEqualityCondition<TFields, N>[], querySelectionModifiers: Omit<QuerySelectionModifiers<TFields>, 'limit'> & Required<Pick<QuerySelectionModifiers<TFields>, 'orderBy'>>): Promise<TEntity | null>;
45
50
  /**
46
51
  * Enforcing version of entity loader method by the same name.
47
52
  * @throws EntityNotAuthorizedError when viewer is not authorized to view one or more of the returned entities
@@ -59,6 +59,14 @@ class EnforcingEntityLoader {
59
59
  const entityResults = await this.entityLoader.loadManyByIDsAsync(ids);
60
60
  return (0, maps_1.mapMap)(entityResults, (result) => result.enforceValue());
61
61
  }
62
+ /**
63
+ * Enforcing version of entity loader method by the same name.
64
+ * @throws EntityNotAuthorizedError when viewer is not authorized to view one or more of the returned entities
65
+ */
66
+ async loadFirstByFieldEqualityConjunctionAsync(fieldEqualityOperands, querySelectionModifiers) {
67
+ const entityResult = await this.entityLoader.loadFirstByFieldEqualityConjunctionAsync(fieldEqualityOperands, querySelectionModifiers);
68
+ return entityResult ? entityResult.enforceValue() : null;
69
+ }
62
70
  /**
63
71
  * Enforcing version of entity loader method by the same name.
64
72
  * @throws EntityNotAuthorizedError when viewer is not authorized to view one or more of the returned entities
@@ -1 +1 @@
1
- {"version":3,"file":"EnforcingEntityLoader.js","sourceRoot":"","sources":["../src/EnforcingEntityLoader.ts"],"names":[],"mappings":";;AASA,mDAAkD;AAElD;;;GAGG;AACH,MAAqB,qBAAqB;IAcxC,YACmB,YAOhB;QAPgB,iBAAY,GAAZ,YAAY,CAO5B;IACA,CAAC;IAEJ;;;OAGG;IACH,KAAK,CAAC,gCAAgC,CACpC,SAAY,EACZ,WAA+C;QAE/C,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gCAAgC,CACnF,SAAS,EACT,WAAW,CACZ,CAAC;QACF,OAAO,IAAA,aAAM,EAAC,oBAAoB,EAAE,CAAC,OAAO,EAAE,EAAE,CAC9C,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAC/C,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,4BAA4B,CAChC,SAAY,EACZ,UAAmC;QAEnC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,4BAA4B,CACxE,SAAS,EACT,UAAU,CACX,CAAC;QACF,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,wBAAwB,CAC5B,eAAkB,EAClB,UAAmC;QAEnC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,wBAAwB,CACnE,eAAe,EACf,UAAU,CACX,CAAC;QACF,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,EAAO;QACzB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAC/D,OAAO,YAAY,CAAC,YAAY,EAAE,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CAAC,EAAO;QACjC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CAAC,GAAmB;QAC1C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACtE,OAAO,IAAA,aAAM,EAAC,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAClE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,uCAAuC,CAC3C,qBAA2D,EAC3D,0BAA4D,EAAE;QAE9D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,uCAAuC,CACnF,qBAAqB,EACrB,uBAAuB,CACxB,CAAC;QACF,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,6BAA6B,CACjC,cAAsB,EACtB,QAAwB,EACxB,0BAA0E,EAAE;QAE5E,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,6BAA6B,CACzE,cAAc,EACd,QAAQ,EACR,uBAAuB,CACxB,CAAC;QACF,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;CACF;AApID,wCAoIC"}
1
+ {"version":3,"file":"EnforcingEntityLoader.js","sourceRoot":"","sources":["../src/EnforcingEntityLoader.ts"],"names":[],"mappings":"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"}
@@ -71,6 +71,21 @@ export default class EntityLoader<TFields, TID extends NonNullable<TFields[TSele
71
71
  * @returns map from ID to corresponding entity result, where result error can be UnauthorizedError or EntityNotFoundError.
72
72
  */
73
73
  loadManyByIDsAsync(ids: readonly TID[]): Promise<ReadonlyMap<TID, Result<TEntity>>>;
74
+ /**
75
+ * Loads the first entity matching the selection constructed from the conjunction of specified
76
+ * operands, or null if no matching entity exists. Entities loaded using this method are not
77
+ * batched or cached.
78
+ *
79
+ * This is a convenience method for {@link loadManyByFieldEqualityConjunctionAsync}. However, the
80
+ * `orderBy` option must be specified to define what "first" means. If ordering doesn't matter,
81
+ * explicitly pass in an empty array.
82
+ *
83
+ * @param fieldEqualityOperands - list of field equality selection operand specifications
84
+ * @param querySelectionModifiers - orderBy and optional offset for the query
85
+ * @returns the first entity results that matches the query, where result error can be
86
+ * UnauthorizedError
87
+ */
88
+ loadFirstByFieldEqualityConjunctionAsync<N extends keyof Pick<TFields, TSelectedFields>>(fieldEqualityOperands: FieldEqualityCondition<TFields, N>[], querySelectionModifiers: Omit<QuerySelectionModifiers<TFields>, 'limit'> & Required<Pick<QuerySelectionModifiers<TFields>, 'orderBy'>>): Promise<Result<TEntity> | null>;
74
89
  /**
75
90
  * Loads many entities matching the selection constructed from the conjunction of specified operands.
76
91
  * Entities loaded using this method are not batched or cached.
@@ -104,6 +104,28 @@ class EntityLoader {
104
104
  return (entityResult !== null && entityResult !== void 0 ? entityResult : (0, results_1.result)(new EntityNotFoundError_1.default(this.entityClass, this.entityConfiguration.idField, id)));
105
105
  });
106
106
  }
107
+ /**
108
+ * Loads the first entity matching the selection constructed from the conjunction of specified
109
+ * operands, or null if no matching entity exists. Entities loaded using this method are not
110
+ * batched or cached.
111
+ *
112
+ * This is a convenience method for {@link loadManyByFieldEqualityConjunctionAsync}. However, the
113
+ * `orderBy` option must be specified to define what "first" means. If ordering doesn't matter,
114
+ * explicitly pass in an empty array.
115
+ *
116
+ * @param fieldEqualityOperands - list of field equality selection operand specifications
117
+ * @param querySelectionModifiers - orderBy and optional offset for the query
118
+ * @returns the first entity results that matches the query, where result error can be
119
+ * UnauthorizedError
120
+ */
121
+ async loadFirstByFieldEqualityConjunctionAsync(fieldEqualityOperands, querySelectionModifiers) {
122
+ var _a;
123
+ const results = await this.loadManyByFieldEqualityConjunctionAsync(fieldEqualityOperands, {
124
+ ...querySelectionModifiers,
125
+ limit: 1,
126
+ });
127
+ return (_a = results[0]) !== null && _a !== void 0 ? _a : null;
128
+ }
107
129
  /**
108
130
  * Loads many entities matching the selection constructed from the conjunction of specified operands.
109
131
  * Entities loaded using this method are not batched or cached.
@@ -1 +1 @@
1
- {"version":3,"file":"EntityLoader.js","sourceRoot":"","sources":["../src/EntityLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityLoader.js","sourceRoot":"","sources":["../src/EntityLoader.ts"],"names":[],"mappings":"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"}
@@ -156,6 +156,31 @@ describe(EnforcingEntityLoader_1.default, () => {
156
156
  })));
157
157
  });
158
158
  });
159
+ describe('loadFirstByFieldEqualityConjunction', () => {
160
+ it('throws when result is unsuccessful', async () => {
161
+ const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
162
+ const rejection = new Error();
163
+ (0, ts_mockito_1.when)(entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(rejection));
164
+ const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
165
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
166
+ await expect(enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).rejects.toThrow(rejection);
167
+ });
168
+ it('returns value when result is successful', async () => {
169
+ const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
170
+ const resolved = {};
171
+ (0, ts_mockito_1.when)(entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve((0, results_1.result)(resolved));
172
+ const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
173
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
174
+ await expect(enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toEqual(resolved);
175
+ });
176
+ it('returns null when the query is successful but no rows match', async () => {
177
+ const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
178
+ (0, ts_mockito_1.when)(entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).thenResolve(null);
179
+ const entityLoader = (0, ts_mockito_1.instance)(entityLoaderMock);
180
+ const enforcingEntityLoader = new EnforcingEntityLoader_1.default(entityLoader);
181
+ await expect(enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync((0, ts_mockito_1.anything)(), (0, ts_mockito_1.anything)())).resolves.toBeNull();
182
+ });
183
+ });
159
184
  describe('loadManyByFieldEqualityConjunction', () => {
160
185
  it('throws when result is unsuccessful', async () => {
161
186
  const entityLoaderMock = (0, ts_mockito_1.mock)(EntityLoader_1.default);
@@ -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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"}
@@ -29,6 +29,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  const results_1 = require("@expo/results");
30
30
  const ts_mockito_1 = require("ts-mockito");
31
31
  const uuid_1 = require("uuid");
32
+ const EntityDatabaseAdapter_1 = require("../EntityDatabaseAdapter");
32
33
  const EntityLoader_1 = __importDefault(require("../EntityLoader"));
33
34
  const ViewerContext_1 = __importDefault(require("../ViewerContext"));
34
35
  const entityUtils_1 = require("../entityUtils");
@@ -159,6 +160,67 @@ describe(EntityLoader_1.default, () => {
159
160
  { fieldName: 'customIdField', fieldValue: 'not-a-uuid' },
160
161
  ])).rejects.toThrowError('Entity field not valid: TestEntity (customIdField = not-a-uuid)');
161
162
  });
163
+ it('loads entities with loadFirstByFieldEqualityConjunction', async () => {
164
+ const privacyPolicy = new TestEntity_1.TestEntityPrivacyPolicy();
165
+ const spiedPrivacyPolicy = (0, ts_mockito_1.spy)(privacyPolicy);
166
+ const viewerContext = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.default));
167
+ const privacyPolicyEvaluationContext = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)());
168
+ const metricsAdapter = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)());
169
+ const queryContext = StubQueryContextProvider_1.default.getQueryContext();
170
+ const id1 = (0, uuid_1.v4)();
171
+ const id2 = (0, uuid_1.v4)();
172
+ const id3 = (0, uuid_1.v4)();
173
+ const databaseAdapter = new StubDatabaseAdapter_1.default(TestEntity_1.testEntityConfiguration, StubDatabaseAdapter_1.default.convertFieldObjectsToDataStore(TestEntity_1.testEntityConfiguration, new Map([
174
+ [
175
+ TestEntity_1.testEntityConfiguration.tableName,
176
+ [
177
+ {
178
+ customIdField: id1,
179
+ stringField: 'huh',
180
+ intField: 4,
181
+ testIndexedField: '4',
182
+ dateField: new Date(),
183
+ nullableField: null,
184
+ },
185
+ {
186
+ customIdField: id2,
187
+ stringField: 'huh',
188
+ intField: 4,
189
+ testIndexedField: '5',
190
+ dateField: new Date(),
191
+ nullableField: null,
192
+ },
193
+ {
194
+ customIdField: id3,
195
+ stringField: 'huh2',
196
+ intField: 4,
197
+ testIndexedField: '6',
198
+ dateField: new Date(),
199
+ nullableField: null,
200
+ },
201
+ ],
202
+ ],
203
+ ])));
204
+ const cacheAdapterProvider = new StubCacheAdapter_1.NoCacheStubCacheAdapterProvider();
205
+ const cacheAdapter = cacheAdapterProvider.getCacheAdapter(TestEntity_1.testEntityConfiguration);
206
+ const entityCache = new ReadThroughEntityCache_1.default(TestEntity_1.testEntityConfiguration, cacheAdapter);
207
+ const dataManager = new EntityDataManager_1.default(databaseAdapter, entityCache, StubQueryContextProvider_1.default, (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)()), TestEntity_1.default.name);
208
+ const entityLoader = new EntityLoader_1.default(viewerContext, queryContext, privacyPolicyEvaluationContext, TestEntity_1.testEntityConfiguration, TestEntity_1.default, privacyPolicy, dataManager, metricsAdapter);
209
+ const result = await entityLoader.loadFirstByFieldEqualityConjunctionAsync([
210
+ {
211
+ fieldName: 'stringField',
212
+ fieldValue: 'huh',
213
+ },
214
+ {
215
+ fieldName: 'intField',
216
+ fieldValue: 4,
217
+ },
218
+ ], { orderBy: [{ fieldName: 'testIndexedField', order: EntityDatabaseAdapter_1.OrderByOrdering.DESCENDING }] });
219
+ expect(result).not.toBeNull();
220
+ expect(result.ok).toBe(true);
221
+ expect(result.enforceValue().getField('testIndexedField')).toEqual('5');
222
+ (0, ts_mockito_1.verify)(spiedPrivacyPolicy.authorizeReadAsync(viewerContext, queryContext, privacyPolicyEvaluationContext, (0, ts_mockito_1.anyOfClass)(TestEntity_1.default), (0, ts_mockito_1.anything)())).once();
223
+ });
162
224
  it('authorizes loaded entities', async () => {
163
225
  const privacyPolicy = new TestEntity_1.TestEntityPrivacyPolicy();
164
226
  const spiedPrivacyPolicy = (0, ts_mockito_1.spy)(privacyPolicy);
@@ -1 +1 @@
1
- {"version":3,"file":"EntityLoader-test.js","sourceRoot":"","sources":["../../src/__tests__/EntityLoader-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityLoader-test.js","sourceRoot":"","sources":["../../src/__tests__/EntityLoader-test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expo/entity",
3
- "version": "0.30.0",
3
+ "version": "0.31.1",
4
4
  "description": "A privacy-first data model",
5
5
  "files": [
6
6
  "build",
@@ -33,5 +33,5 @@
33
33
  "invariant": "^2.2.4",
34
34
  "uuid": "^8.3.0"
35
35
  },
36
- "gitHead": "abd86b91d344e4367b6acd416ab0e5ee3704cb1a"
36
+ "gitHead": "83fe9cdea5b0cd69f38ac58eed12e96d5fa51d07"
37
37
  }
@@ -114,6 +114,22 @@ export default class EnforcingEntityLoader<
114
114
  return mapMap(entityResults, (result) => result.enforceValue());
115
115
  }
116
116
 
117
+ /**
118
+ * Enforcing version of entity loader method by the same name.
119
+ * @throws EntityNotAuthorizedError when viewer is not authorized to view one or more of the returned entities
120
+ */
121
+ async loadFirstByFieldEqualityConjunctionAsync<N extends keyof Pick<TFields, TSelectedFields>>(
122
+ fieldEqualityOperands: FieldEqualityCondition<TFields, N>[],
123
+ querySelectionModifiers: Omit<QuerySelectionModifiers<TFields>, 'limit'> &
124
+ Required<Pick<QuerySelectionModifiers<TFields>, 'orderBy'>>
125
+ ): Promise<TEntity | null> {
126
+ const entityResult = await this.entityLoader.loadFirstByFieldEqualityConjunctionAsync(
127
+ fieldEqualityOperands,
128
+ querySelectionModifiers
129
+ );
130
+ return entityResult ? entityResult.enforceValue() : null;
131
+ }
132
+
117
133
  /**
118
134
  * Enforcing version of entity loader method by the same name.
119
135
  * @throws EntityNotAuthorizedError when viewer is not authorized to view one or more of the returned entities
@@ -182,6 +182,32 @@ export default class EntityLoader<
182
182
  });
183
183
  }
184
184
 
185
+ /**
186
+ * Loads the first entity matching the selection constructed from the conjunction of specified
187
+ * operands, or null if no matching entity exists. Entities loaded using this method are not
188
+ * batched or cached.
189
+ *
190
+ * This is a convenience method for {@link loadManyByFieldEqualityConjunctionAsync}. However, the
191
+ * `orderBy` option must be specified to define what "first" means. If ordering doesn't matter,
192
+ * explicitly pass in an empty array.
193
+ *
194
+ * @param fieldEqualityOperands - list of field equality selection operand specifications
195
+ * @param querySelectionModifiers - orderBy and optional offset for the query
196
+ * @returns the first entity results that matches the query, where result error can be
197
+ * UnauthorizedError
198
+ */
199
+ async loadFirstByFieldEqualityConjunctionAsync<N extends keyof Pick<TFields, TSelectedFields>>(
200
+ fieldEqualityOperands: FieldEqualityCondition<TFields, N>[],
201
+ querySelectionModifiers: Omit<QuerySelectionModifiers<TFields>, 'limit'> &
202
+ Required<Pick<QuerySelectionModifiers<TFields>, 'orderBy'>>
203
+ ): Promise<Result<TEntity> | null> {
204
+ const results = await this.loadManyByFieldEqualityConjunctionAsync(fieldEqualityOperands, {
205
+ ...querySelectionModifiers,
206
+ limit: 1,
207
+ });
208
+ return results[0] ?? null;
209
+ }
210
+
185
211
  /**
186
212
  * Loads many entities matching the selection constructed from the conjunction of specified operands.
187
213
  * Entities loaded using this method are not batched or cached.
@@ -222,6 +222,46 @@ describe(EnforcingEntityLoader, () => {
222
222
  });
223
223
  });
224
224
 
225
+ describe('loadFirstByFieldEqualityConjunction', () => {
226
+ it('throws when result is unsuccessful', async () => {
227
+ const entityLoaderMock = mock<EntityLoader<any, any, any, any, any, any>>(EntityLoader);
228
+ const rejection = new Error();
229
+ when(
230
+ entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync(anything(), anything())
231
+ ).thenResolve(result(rejection));
232
+ const entityLoader = instance(entityLoaderMock);
233
+ const enforcingEntityLoader = new EnforcingEntityLoader(entityLoader);
234
+ await expect(
235
+ enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync(anything(), anything())
236
+ ).rejects.toThrow(rejection);
237
+ });
238
+
239
+ it('returns value when result is successful', async () => {
240
+ const entityLoaderMock = mock<EntityLoader<any, any, any, any, any, any>>(EntityLoader);
241
+ const resolved = {};
242
+ when(
243
+ entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync(anything(), anything())
244
+ ).thenResolve(result(resolved));
245
+ const entityLoader = instance(entityLoaderMock);
246
+ const enforcingEntityLoader = new EnforcingEntityLoader(entityLoader);
247
+ await expect(
248
+ enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync(anything(), anything())
249
+ ).resolves.toEqual(resolved);
250
+ });
251
+
252
+ it('returns null when the query is successful but no rows match', async () => {
253
+ const entityLoaderMock = mock<EntityLoader<any, any, any, any, any, any>>(EntityLoader);
254
+ when(
255
+ entityLoaderMock.loadFirstByFieldEqualityConjunctionAsync(anything(), anything())
256
+ ).thenResolve(null);
257
+ const entityLoader = instance(entityLoaderMock);
258
+ const enforcingEntityLoader = new EnforcingEntityLoader(entityLoader);
259
+ await expect(
260
+ enforcingEntityLoader.loadFirstByFieldEqualityConjunctionAsync(anything(), anything())
261
+ ).resolves.toBeNull();
262
+ });
263
+ });
264
+
225
265
  describe('loadManyByFieldEqualityConjunction', () => {
226
266
  it('throws when result is unsuccessful', async () => {
227
267
  const entityLoaderMock = mock<EntityLoader<any, any, any, any, any, any>>(EntityLoader);
@@ -2,6 +2,7 @@ import { enforceAsyncResult } from '@expo/results';
2
2
  import { mock, instance, verify, spy, deepEqual, anyOfClass, anything, when } from 'ts-mockito';
3
3
  import { v4 as uuidv4 } from 'uuid';
4
4
 
5
+ import { OrderByOrdering } from '../EntityDatabaseAdapter';
5
6
  import EntityLoader from '../EntityLoader';
6
7
  import { EntityPrivacyPolicyEvaluationContext } from '../EntityPrivacyPolicy';
7
8
  import ViewerContext from '../ViewerContext';
@@ -210,6 +211,101 @@ describe(EntityLoader, () => {
210
211
  ).rejects.toThrowError('Entity field not valid: TestEntity (customIdField = not-a-uuid)');
211
212
  });
212
213
 
214
+ it('loads entities with loadFirstByFieldEqualityConjunction', async () => {
215
+ const privacyPolicy = new TestEntityPrivacyPolicy();
216
+ const spiedPrivacyPolicy = spy(privacyPolicy);
217
+ const viewerContext = instance(mock(ViewerContext));
218
+ const privacyPolicyEvaluationContext = instance(mock<EntityPrivacyPolicyEvaluationContext>());
219
+ const metricsAdapter = instance(mock<IEntityMetricsAdapter>());
220
+ const queryContext = StubQueryContextProvider.getQueryContext();
221
+
222
+ const id1 = uuidv4();
223
+ const id2 = uuidv4();
224
+ const id3 = uuidv4();
225
+ const databaseAdapter = new StubDatabaseAdapter<TestFields>(
226
+ testEntityConfiguration,
227
+ StubDatabaseAdapter.convertFieldObjectsToDataStore(
228
+ testEntityConfiguration,
229
+ new Map([
230
+ [
231
+ testEntityConfiguration.tableName,
232
+ [
233
+ {
234
+ customIdField: id1,
235
+ stringField: 'huh',
236
+ intField: 4,
237
+ testIndexedField: '4',
238
+ dateField: new Date(),
239
+ nullableField: null,
240
+ },
241
+ {
242
+ customIdField: id2,
243
+ stringField: 'huh',
244
+ intField: 4,
245
+ testIndexedField: '5',
246
+ dateField: new Date(),
247
+ nullableField: null,
248
+ },
249
+ {
250
+ customIdField: id3,
251
+ stringField: 'huh2',
252
+ intField: 4,
253
+ testIndexedField: '6',
254
+ dateField: new Date(),
255
+ nullableField: null,
256
+ },
257
+ ],
258
+ ],
259
+ ])
260
+ )
261
+ );
262
+ const cacheAdapterProvider = new NoCacheStubCacheAdapterProvider();
263
+ const cacheAdapter = cacheAdapterProvider.getCacheAdapter(testEntityConfiguration);
264
+ const entityCache = new ReadThroughEntityCache(testEntityConfiguration, cacheAdapter);
265
+ const dataManager = new EntityDataManager(
266
+ databaseAdapter,
267
+ entityCache,
268
+ StubQueryContextProvider,
269
+ instance(mock<IEntityMetricsAdapter>()),
270
+ TestEntity.name
271
+ );
272
+ const entityLoader = new EntityLoader(
273
+ viewerContext,
274
+ queryContext,
275
+ privacyPolicyEvaluationContext,
276
+ testEntityConfiguration,
277
+ TestEntity,
278
+ privacyPolicy,
279
+ dataManager,
280
+ metricsAdapter
281
+ );
282
+ const result = await entityLoader.loadFirstByFieldEqualityConjunctionAsync(
283
+ [
284
+ {
285
+ fieldName: 'stringField',
286
+ fieldValue: 'huh',
287
+ },
288
+ {
289
+ fieldName: 'intField',
290
+ fieldValue: 4,
291
+ },
292
+ ],
293
+ { orderBy: [{ fieldName: 'testIndexedField', order: OrderByOrdering.DESCENDING }] }
294
+ );
295
+ expect(result).not.toBeNull();
296
+ expect(result!.ok).toBe(true);
297
+ expect(result!.enforceValue().getField('testIndexedField')).toEqual('5');
298
+ verify(
299
+ spiedPrivacyPolicy.authorizeReadAsync(
300
+ viewerContext,
301
+ queryContext,
302
+ privacyPolicyEvaluationContext,
303
+ anyOfClass(TestEntity),
304
+ anything()
305
+ )
306
+ ).once();
307
+ });
308
+
213
309
  it('authorizes loaded entities', async () => {
214
310
  const privacyPolicy = new TestEntityPrivacyPolicy();
215
311
  const spiedPrivacyPolicy = spy(privacyPolicy);