@expo/entity-testing-utils 0.51.0 → 0.54.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/StubCacheAdapter.js.map +1 -1
- package/build/src/StubDatabaseAdapter.js +2 -2
- package/build/src/StubDatabaseAdapter.js.map +1 -1
- package/package.json +7 -7
- package/src/StubCacheAdapter.ts +2 -4
- package/src/StubDatabaseAdapter.ts +1 -1
- package/src/__tests__/StubDatabaseAdapter-test.ts +9 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StubCacheAdapter.js","sourceRoot":"","sources":["../../src/StubCacheAdapter.ts"],"names":[],"mappings":";;;;;;AAAA,yCAQsB;AACtB,0DAAkC;AAElC,MAAa,+BAA+B;IAC1C,eAAe,CACb,oBAA4D;QAE5D,OAAO,IAAI,uBAAuB,EAAE,CAAC;IACvC,CAAC;CACF;AAND,0EAMC;AAED,MAAa,uBAAuB;
|
|
1
|
+
{"version":3,"file":"StubCacheAdapter.js","sourceRoot":"","sources":["../../src/StubCacheAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.StubDatabaseAdapter = void 0;
|
|
7
7
|
const entity_1 = require("@expo/entity");
|
|
8
8
|
const invariant_1 = __importDefault(require("invariant"));
|
|
9
|
-
const
|
|
9
|
+
const uuid_1 = require("uuid");
|
|
10
10
|
class StubDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
11
11
|
entityConfiguration2;
|
|
12
12
|
dataStore;
|
|
@@ -119,7 +119,7 @@ class StubDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
|
119
119
|
const idSchemaField = this.entityConfiguration2.schema.get(this.entityConfiguration2.idField);
|
|
120
120
|
(0, invariant_1.default)(idSchemaField, `No schema field found for ${String(this.entityConfiguration2.idField)}`);
|
|
121
121
|
if (idSchemaField instanceof entity_1.StringField) {
|
|
122
|
-
return (0,
|
|
122
|
+
return (0, uuid_1.v7)();
|
|
123
123
|
}
|
|
124
124
|
else if (idSchemaField instanceof entity_1.IntField) {
|
|
125
125
|
return Math.floor(Math.random() * Number.MAX_SAFE_INTEGER);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StubDatabaseAdapter.js","sourceRoot":"","sources":["../../src/StubDatabaseAdapter.ts"],"names":[],"mappings":";;;;;;AAAA,yCAcsB;AACtB,0DAAkC;AAClC
|
|
1
|
+
{"version":3,"file":"StubDatabaseAdapter.js","sourceRoot":"","sources":["../../src/StubDatabaseAdapter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@expo/entity-testing-utils",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.54.0",
|
|
4
4
|
"description": "A package containing utilities for testing applications that use Entity",
|
|
5
5
|
"files": [
|
|
6
6
|
"build",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"author": "Expo",
|
|
28
28
|
"license": "MIT",
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@expo/entity": "^0.
|
|
30
|
+
"@expo/entity": "^0.54.0",
|
|
31
31
|
"lodash": "^4.17.21",
|
|
32
32
|
"ts-mockito": "^2.6.1"
|
|
33
33
|
},
|
|
@@ -35,10 +35,10 @@
|
|
|
35
35
|
"@jest/globals": "*"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@jest/globals": "
|
|
39
|
-
"@types/lodash": "
|
|
40
|
-
"@types/node": "
|
|
41
|
-
"typescript": "
|
|
38
|
+
"@jest/globals": "30.2.0",
|
|
39
|
+
"@types/lodash": "4.17.23",
|
|
40
|
+
"@types/node": "24.10.9",
|
|
41
|
+
"typescript": "5.9.3"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "283c02eedbd4f5721afad96f31ada85bf92afb41"
|
|
44
44
|
}
|
package/src/StubCacheAdapter.ts
CHANGED
|
@@ -20,8 +20,7 @@ export class NoCacheStubCacheAdapterProvider implements IEntityCacheAdapterProvi
|
|
|
20
20
|
export class NoCacheStubCacheAdapter<
|
|
21
21
|
TFields extends Record<string, any>,
|
|
22
22
|
TIDField extends keyof TFields,
|
|
23
|
-
> implements IEntityCacheAdapter<TFields, TIDField>
|
|
24
|
-
{
|
|
23
|
+
> implements IEntityCacheAdapter<TFields, TIDField> {
|
|
25
24
|
public async loadManyAsync<
|
|
26
25
|
TLoadKey extends IEntityLoadKey<TFields, TIDField, TSerializedLoadValue, TLoadValue>,
|
|
27
26
|
TSerializedLoadValue,
|
|
@@ -77,8 +76,7 @@ export class InMemoryFullCacheStubCacheAdapterProvider implements IEntityCacheAd
|
|
|
77
76
|
export class InMemoryFullCacheStubCacheAdapter<
|
|
78
77
|
TFields extends Record<string, any>,
|
|
79
78
|
TIDField extends keyof TFields,
|
|
80
|
-
> implements IEntityCacheAdapter<TFields, TIDField>
|
|
81
|
-
{
|
|
79
|
+
> implements IEntityCacheAdapter<TFields, TIDField> {
|
|
82
80
|
constructor(
|
|
83
81
|
private readonly entityConfiguration: EntityConfiguration<TFields, TIDField>,
|
|
84
82
|
private readonly cache: Map<string, Readonly<TFields> | typeof DOES_NOT_EXIST>,
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
transformFieldsToDatabaseObject,
|
|
15
15
|
} from '@expo/entity';
|
|
16
16
|
import invariant from 'invariant';
|
|
17
|
-
import { uuidv7 } from '
|
|
17
|
+
import { v7 as uuidv7 } from 'uuid';
|
|
18
18
|
|
|
19
19
|
export class StubDatabaseAdapter<
|
|
20
20
|
TFields extends Record<string, any>,
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
} from '@expo/entity';
|
|
9
9
|
import { describe, expect, it, jest } from '@jest/globals';
|
|
10
10
|
import { instance, mock } from 'ts-mockito';
|
|
11
|
+
import { validate, version } from 'uuid';
|
|
11
12
|
|
|
12
13
|
import { StubDatabaseAdapter } from '../StubDatabaseAdapter';
|
|
13
14
|
import {
|
|
@@ -24,6 +25,12 @@ import {
|
|
|
24
25
|
numberKeyEntityConfiguration,
|
|
25
26
|
} from '../__testfixtures__/TestEntityNumberKey';
|
|
26
27
|
|
|
28
|
+
// uuid keeps state internally for v7 generation, so we fix the time for all tests for consistent test results
|
|
29
|
+
const expectedTime = new Date('2024-06-03T20:16:33.761Z');
|
|
30
|
+
jest.useFakeTimers({
|
|
31
|
+
now: expectedTime,
|
|
32
|
+
});
|
|
33
|
+
|
|
27
34
|
describe(StubDatabaseAdapter, () => {
|
|
28
35
|
describe('fetchManyWhereAsync', () => {
|
|
29
36
|
it('fetches many where single', async () => {
|
|
@@ -362,12 +369,6 @@ describe(StubDatabaseAdapter, () => {
|
|
|
362
369
|
});
|
|
363
370
|
|
|
364
371
|
it('inserts a record with valid v7 id', async () => {
|
|
365
|
-
const expectedTime = new Date('2024-06-03T20:16:33.761Z');
|
|
366
|
-
|
|
367
|
-
jest.useFakeTimers({
|
|
368
|
-
now: expectedTime,
|
|
369
|
-
});
|
|
370
|
-
|
|
371
372
|
const queryContext = instance(mock(EntityQueryContext));
|
|
372
373
|
const databaseAdapter = new StubDatabaseAdapter<TestFields, 'customIdField'>(
|
|
373
374
|
testEntityConfiguration,
|
|
@@ -587,15 +588,13 @@ describe(StubDatabaseAdapter, () => {
|
|
|
587
588
|
});
|
|
588
589
|
});
|
|
589
590
|
|
|
590
|
-
const UUIDV7_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
591
|
-
|
|
592
591
|
/**
|
|
593
592
|
* Returns the Date object encoded in the first 48 bits of the given UUIDv7.
|
|
594
593
|
* @throws TypeError if the UUID is not version 7
|
|
595
594
|
*/
|
|
596
595
|
function getTimeFromUUIDv7(uuid: string): Date {
|
|
597
|
-
if (!
|
|
598
|
-
throw new TypeError(`UUID
|
|
596
|
+
if (!(validate(uuid) && version(uuid) === 7)) {
|
|
597
|
+
throw new TypeError(`Invalid UUID: ${uuid}`);
|
|
599
598
|
}
|
|
600
599
|
|
|
601
600
|
// The first 48 bits = 12 hex characters of the UUID encode the timestamp in big endian
|