@expo/entity-testing-utils 0.46.0 → 0.48.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 (29) hide show
  1. package/package.json +6 -3
  2. package/build/src/__testfixtures__/DateIDTestEntity.d.ts +0 -14
  3. package/build/src/__testfixtures__/DateIDTestEntity.js +0 -42
  4. package/build/src/__testfixtures__/DateIDTestEntity.js.map +0 -1
  5. package/build/src/__testfixtures__/SimpleTestEntity.d.ts +0 -15
  6. package/build/src/__testfixtures__/SimpleTestEntity.js +0 -42
  7. package/build/src/__testfixtures__/SimpleTestEntity.js.map +0 -1
  8. package/build/src/__testfixtures__/TestEntity.d.ts +0 -25
  9. package/build/src/__testfixtures__/TestEntity.js +0 -92
  10. package/build/src/__testfixtures__/TestEntity.js.map +0 -1
  11. package/build/src/__testfixtures__/TestEntityNumberKey.d.ts +0 -14
  12. package/build/src/__testfixtures__/TestEntityNumberKey.js +0 -42
  13. package/build/src/__testfixtures__/TestEntityNumberKey.js.map +0 -1
  14. package/build/src/__tests__/FileConsistentcyWithEntity-test.d.ts +0 -1
  15. package/build/src/__tests__/FileConsistentcyWithEntity-test.js +0 -27
  16. package/build/src/__tests__/FileConsistentcyWithEntity-test.js.map +0 -1
  17. package/build/src/__tests__/PrivacyPolicyRuleTestUtils-test.d.ts +0 -1
  18. package/build/src/__tests__/PrivacyPolicyRuleTestUtils-test.js +0 -37
  19. package/build/src/__tests__/PrivacyPolicyRuleTestUtils-test.js.map +0 -1
  20. package/build/src/__tests__/StubCacheAdapter-test.d.ts +0 -1
  21. package/build/src/__tests__/StubCacheAdapter-test.js +0 -76
  22. package/build/src/__tests__/StubCacheAdapter-test.js.map +0 -1
  23. package/build/src/__tests__/StubDatabaseAdapter-test.d.ts +0 -1
  24. package/build/src/__tests__/StubDatabaseAdapter-test.js +0 -427
  25. package/build/src/__tests__/StubDatabaseAdapter-test.js.map +0 -1
  26. package/build/src/__tests__/TSMockitoExtensions-test.d.ts +0 -1
  27. package/build/src/__tests__/TSMockitoExtensions-test.js +0 -50
  28. package/build/src/__tests__/TSMockitoExtensions-test.js.map +0 -1
  29. package/build/tsconfig.tsbuildinfo +0 -1
package/package.json CHANGED
@@ -1,15 +1,18 @@
1
1
  {
2
2
  "name": "@expo/entity-testing-utils",
3
- "version": "0.46.0",
3
+ "version": "0.48.0",
4
4
  "description": "A package containing utilities for testing applications that use Entity",
5
5
  "files": [
6
6
  "build",
7
+ "!*.tsbuildinfo",
8
+ "!__*",
7
9
  "src"
8
10
  ],
9
11
  "main": "build/src/index.js",
10
12
  "types": "build/src/index.d.ts",
11
13
  "scripts": {
12
14
  "build": "tsc --build",
15
+ "prepack": "rm -rf build && yarn build",
13
16
  "clean": "yarn build --clean",
14
17
  "lint": "yarn run --top-level eslint src",
15
18
  "lint-fix": "yarn run lint --fix",
@@ -24,7 +27,7 @@
24
27
  "author": "Expo",
25
28
  "license": "MIT",
26
29
  "dependencies": {
27
- "@expo/entity": "^0.46.0",
30
+ "@expo/entity": "^0.48.0",
28
31
  "lodash": "^4.17.21",
29
32
  "ts-mockito": "^2.6.1"
30
33
  },
@@ -37,5 +40,5 @@
37
40
  "@types/node": "^20.19.1",
38
41
  "typescript": "^5.8.3"
39
42
  },
40
- "gitHead": "79f61f8d7f7f024e4e9a557473a5737eedb3ffe6"
43
+ "gitHead": "7b4bec8f841fecdb30af306441b540c0efae1603"
41
44
  }
@@ -1,14 +0,0 @@
1
- import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, ViewerContext } from '@expo/entity';
2
- export type DateIDTestFields = {
3
- id: Date;
4
- };
5
- export declare const dateIDTestEntityConfiguration: EntityConfiguration<DateIDTestFields, "id">;
6
- export declare class DateIDTestEntityPrivacyPolicy extends EntityPrivacyPolicy<DateIDTestFields, 'id', ViewerContext, DateIDTestEntity> {
7
- protected readonly readRules: AlwaysAllowPrivacyPolicyRule<DateIDTestFields, "id", ViewerContext, DateIDTestEntity, "id">[];
8
- protected readonly createRules: AlwaysAllowPrivacyPolicyRule<DateIDTestFields, "id", ViewerContext, DateIDTestEntity, "id">[];
9
- protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<DateIDTestFields, "id", ViewerContext, DateIDTestEntity, "id">[];
10
- protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<DateIDTestFields, "id", ViewerContext, DateIDTestEntity, "id">[];
11
- }
12
- export declare class DateIDTestEntity extends Entity<DateIDTestFields, 'id', ViewerContext> {
13
- static defineCompanionDefinition(): EntityCompanionDefinition<DateIDTestFields, 'id', ViewerContext, DateIDTestEntity, DateIDTestEntityPrivacyPolicy>;
14
- }
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DateIDTestEntity = exports.DateIDTestEntityPrivacyPolicy = exports.dateIDTestEntityConfiguration = void 0;
4
- const entity_1 = require("@expo/entity");
5
- exports.dateIDTestEntityConfiguration = new entity_1.EntityConfiguration({
6
- idField: 'id',
7
- tableName: 'simple_test_entity_should_not_write_to_db',
8
- schema: {
9
- id: new entity_1.DateField({
10
- columnName: 'custom_id',
11
- cache: true,
12
- }),
13
- },
14
- databaseAdapterFlavor: 'postgres',
15
- cacheAdapterFlavor: 'redis',
16
- });
17
- class DateIDTestEntityPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
18
- readRules = [
19
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
20
- ];
21
- createRules = [
22
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
23
- ];
24
- updateRules = [
25
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
26
- ];
27
- deleteRules = [
28
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
29
- ];
30
- }
31
- exports.DateIDTestEntityPrivacyPolicy = DateIDTestEntityPrivacyPolicy;
32
- class DateIDTestEntity extends entity_1.Entity {
33
- static defineCompanionDefinition() {
34
- return {
35
- entityClass: DateIDTestEntity,
36
- entityConfiguration: exports.dateIDTestEntityConfiguration,
37
- privacyPolicyClass: DateIDTestEntityPrivacyPolicy,
38
- };
39
- }
40
- }
41
- exports.DateIDTestEntity = DateIDTestEntity;
42
- //# sourceMappingURL=DateIDTestEntity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DateIDTestEntity.js","sourceRoot":"","sources":["../../../src/__testfixtures__/DateIDTestEntity.ts"],"names":[],"mappings":";;;AAAA,yCAQsB;AAMT,QAAA,6BAA6B,GAAG,IAAI,4BAAmB,CAAyB;IAC3F,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,2CAA2C;IACtD,MAAM,EAAE;QACN,EAAE,EAAE,IAAI,kBAAS,CAAC;YAChB,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,IAAI;SACZ,CAAC;KACH;IACD,qBAAqB,EAAE,UAAU;IACjC,kBAAkB,EAAE,OAAO;CAC5B,CAAC,CAAC;AAEH,MAAa,6BAA8B,SAAQ,4BAKlD;IAC6B,SAAS,GAAG;QACtC,IAAI,qCAA4B,EAA2D;KAC5F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAA2D;KAC5F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAA2D;KAC5F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAA2D;KAC5F,CAAC;CACH;AAlBD,sEAkBC;AAED,MAAa,gBAAiB,SAAQ,eAA6C;IACjF,MAAM,CAAC,yBAAyB;QAO9B,OAAO;YACL,WAAW,EAAE,gBAAgB;YAC7B,mBAAmB,EAAE,qCAA6B;YAClD,kBAAkB,EAAE,6BAA6B;SAClD,CAAC;IACJ,CAAC;CACF;AAdD,4CAcC"}
@@ -1,15 +0,0 @@
1
- import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, ViewerContext } from '@expo/entity';
2
- export type SimpleTestFields = {
3
- id: string;
4
- };
5
- export type SimpleTestFieldSelection = keyof SimpleTestFields;
6
- export declare const simpleTestEntityConfiguration: EntityConfiguration<SimpleTestFields, "id">;
7
- export declare class SimpleTestEntityPrivacyPolicy extends EntityPrivacyPolicy<SimpleTestFields, 'id', ViewerContext, SimpleTestEntity, SimpleTestFieldSelection> {
8
- protected readonly readRules: AlwaysAllowPrivacyPolicyRule<SimpleTestFields, "id", ViewerContext, SimpleTestEntity, "id">[];
9
- protected readonly createRules: AlwaysAllowPrivacyPolicyRule<SimpleTestFields, "id", ViewerContext, SimpleTestEntity, "id">[];
10
- protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<SimpleTestFields, "id", ViewerContext, SimpleTestEntity, "id">[];
11
- protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<SimpleTestFields, "id", ViewerContext, SimpleTestEntity, "id">[];
12
- }
13
- export declare class SimpleTestEntity extends Entity<SimpleTestFields, 'id', ViewerContext, SimpleTestFieldSelection> {
14
- static defineCompanionDefinition(): EntityCompanionDefinition<SimpleTestFields, 'id', ViewerContext, SimpleTestEntity, SimpleTestEntityPrivacyPolicy, SimpleTestFieldSelection>;
15
- }
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SimpleTestEntity = exports.SimpleTestEntityPrivacyPolicy = exports.simpleTestEntityConfiguration = void 0;
4
- const entity_1 = require("@expo/entity");
5
- exports.simpleTestEntityConfiguration = new entity_1.EntityConfiguration({
6
- idField: 'id',
7
- tableName: 'simple_test_entity_should_not_write_to_db',
8
- schema: {
9
- id: new entity_1.UUIDField({
10
- columnName: 'custom_id',
11
- cache: true,
12
- }),
13
- },
14
- databaseAdapterFlavor: 'postgres',
15
- cacheAdapterFlavor: 'redis',
16
- });
17
- class SimpleTestEntityPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
18
- readRules = [
19
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
20
- ];
21
- createRules = [
22
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
23
- ];
24
- updateRules = [
25
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
26
- ];
27
- deleteRules = [
28
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
29
- ];
30
- }
31
- exports.SimpleTestEntityPrivacyPolicy = SimpleTestEntityPrivacyPolicy;
32
- class SimpleTestEntity extends entity_1.Entity {
33
- static defineCompanionDefinition() {
34
- return {
35
- entityClass: SimpleTestEntity,
36
- entityConfiguration: exports.simpleTestEntityConfiguration,
37
- privacyPolicyClass: SimpleTestEntityPrivacyPolicy,
38
- };
39
- }
40
- }
41
- exports.SimpleTestEntity = SimpleTestEntity;
42
- //# sourceMappingURL=SimpleTestEntity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SimpleTestEntity.js","sourceRoot":"","sources":["../../../src/__testfixtures__/SimpleTestEntity.ts"],"names":[],"mappings":";;;AAAA,yCAQsB;AAQT,QAAA,6BAA6B,GAAG,IAAI,4BAAmB,CAAyB;IAC3F,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,2CAA2C;IACtD,MAAM,EAAE;QACN,EAAE,EAAE,IAAI,kBAAS,CAAC;YAChB,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,IAAI;SACZ,CAAC;KACH;IACD,qBAAqB,EAAE,UAAU;IACjC,kBAAkB,EAAE,OAAO;CAC5B,CAAC,CAAC;AAEH,MAAa,6BAA8B,SAAQ,4BAMlD;IAC6B,SAAS,GAAG;QACtC,IAAI,qCAA4B,EAM7B;KACJ,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAM7B;KACJ,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAM7B;KACJ,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAM7B;KACJ,CAAC;CACH;AA3CD,sEA2CC;AAED,MAAa,gBAAiB,SAAQ,eAKrC;IACC,MAAM,CAAC,yBAAyB;QAQ9B,OAAO;YACL,WAAW,EAAE,gBAAgB;YAC7B,mBAAmB,EAAE,qCAA6B;YAClD,kBAAkB,EAAE,6BAA6B;SAClD,CAAC;IACJ,CAAC;CACF;AApBD,4CAoBC"}
@@ -1,25 +0,0 @@
1
- import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, ViewerContext } from '@expo/entity';
2
- import { Result } from '@expo/results';
3
- export type TestFields = {
4
- customIdField: string;
5
- testIndexedField: string;
6
- stringField: string;
7
- intField: number;
8
- dateField: Date;
9
- nullableField: string | null;
10
- };
11
- export declare const testEntityConfiguration: EntityConfiguration<TestFields, "customIdField">;
12
- export declare class TestEntityPrivacyPolicy extends EntityPrivacyPolicy<TestFields, 'customIdField', ViewerContext, TestEntity> {
13
- protected readonly readRules: AlwaysAllowPrivacyPolicyRule<TestFields, "customIdField", ViewerContext, TestEntity, keyof TestFields>[];
14
- protected readonly createRules: AlwaysAllowPrivacyPolicyRule<TestFields, "customIdField", ViewerContext, TestEntity, keyof TestFields>[];
15
- protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<TestFields, "customIdField", ViewerContext, TestEntity, keyof TestFields>[];
16
- protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<TestFields, "customIdField", ViewerContext, TestEntity, keyof TestFields>[];
17
- }
18
- export declare class TestEntity extends Entity<TestFields, 'customIdField', ViewerContext> {
19
- static defineCompanionDefinition(): EntityCompanionDefinition<TestFields, 'customIdField', ViewerContext, TestEntity, TestEntityPrivacyPolicy>;
20
- getBlah(): string;
21
- static helloAsync(viewerContext: ViewerContext, testValue: string): Promise<Result<TestEntity>>;
22
- static returnErrorAsync(_viewerContext: ViewerContext): Promise<Result<TestEntity>>;
23
- static throwErrorAsync(_viewerContext: ViewerContext): Promise<Result<TestEntity>>;
24
- static nonResultAsync(_viewerContext: ViewerContext, testValue: string): Promise<string>;
25
- }
@@ -1,92 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TestEntity = exports.TestEntityPrivacyPolicy = exports.testEntityConfiguration = void 0;
4
- const entity_1 = require("@expo/entity");
5
- const results_1 = require("@expo/results");
6
- exports.testEntityConfiguration = new entity_1.EntityConfiguration({
7
- idField: 'customIdField',
8
- tableName: 'test_entity_should_not_write_to_db',
9
- schema: {
10
- customIdField: new entity_1.UUIDField({
11
- columnName: 'custom_id',
12
- cache: true,
13
- }),
14
- testIndexedField: new entity_1.StringField({
15
- columnName: 'test_index',
16
- cache: true,
17
- }),
18
- stringField: new entity_1.StringField({
19
- columnName: 'string_field',
20
- }),
21
- intField: new entity_1.IntField({
22
- columnName: 'number_field',
23
- }),
24
- dateField: new entity_1.DateField({
25
- columnName: 'date_field',
26
- }),
27
- nullableField: new entity_1.StringField({
28
- columnName: 'nullable_field',
29
- }),
30
- },
31
- databaseAdapterFlavor: 'postgres',
32
- cacheAdapterFlavor: 'redis',
33
- compositeFieldDefinitions: [
34
- { compositeField: ['stringField', 'intField'], cache: false },
35
- { compositeField: ['stringField', 'testIndexedField'], cache: true },
36
- { compositeField: ['nullableField', 'testIndexedField'], cache: true },
37
- ],
38
- });
39
- class TestEntityPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
40
- readRules = [
41
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
42
- ];
43
- createRules = [
44
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
45
- ];
46
- updateRules = [
47
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
48
- ];
49
- deleteRules = [
50
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
51
- ];
52
- }
53
- exports.TestEntityPrivacyPolicy = TestEntityPrivacyPolicy;
54
- class TestEntity extends entity_1.Entity {
55
- static defineCompanionDefinition() {
56
- return {
57
- entityClass: TestEntity,
58
- entityConfiguration: exports.testEntityConfiguration,
59
- privacyPolicyClass: TestEntityPrivacyPolicy,
60
- };
61
- }
62
- getBlah() {
63
- return 'Hello World!';
64
- }
65
- static async helloAsync(viewerContext, testValue) {
66
- const fields = {
67
- customIdField: testValue,
68
- testIndexedField: 'hello',
69
- stringField: 'hello',
70
- intField: 1,
71
- dateField: new Date(),
72
- nullableField: null,
73
- };
74
- return (0, results_1.result)(new TestEntity({
75
- viewerContext,
76
- id: testValue,
77
- databaseFields: fields,
78
- selectedFields: fields,
79
- }));
80
- }
81
- static async returnErrorAsync(_viewerContext) {
82
- return (0, results_1.result)(new Error('return entity'));
83
- }
84
- static async throwErrorAsync(_viewerContext) {
85
- throw new Error('threw entity');
86
- }
87
- static async nonResultAsync(_viewerContext, testValue) {
88
- return testValue;
89
- }
90
- }
91
- exports.TestEntity = TestEntity;
92
- //# sourceMappingURL=TestEntity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TestEntity.js","sourceRoot":"","sources":["../../../src/__testfixtures__/TestEntity.ts"],"names":[],"mappings":";;;AAAA,yCAWsB;AACtB,2CAA+C;AAWlC,QAAA,uBAAuB,GAAG,IAAI,4BAAmB,CAA8B;IAC1F,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,oCAAoC;IAC/C,MAAM,EAAE;QACN,aAAa,EAAE,IAAI,kBAAS,CAAC;YAC3B,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,IAAI;SACZ,CAAC;QACF,gBAAgB,EAAE,IAAI,oBAAW,CAAC;YAChC,UAAU,EAAE,YAAY;YACxB,KAAK,EAAE,IAAI;SACZ,CAAC;QACF,WAAW,EAAE,IAAI,oBAAW,CAAC;YAC3B,UAAU,EAAE,cAAc;SAC3B,CAAC;QACF,QAAQ,EAAE,IAAI,iBAAQ,CAAC;YACrB,UAAU,EAAE,cAAc;SAC3B,CAAC;QACF,SAAS,EAAE,IAAI,kBAAS,CAAC;YACvB,UAAU,EAAE,YAAY;SACzB,CAAC;QACF,aAAa,EAAE,IAAI,oBAAW,CAAC;YAC7B,UAAU,EAAE,gBAAgB;SAC7B,CAAC;KACH;IACD,qBAAqB,EAAE,UAAU;IACjC,kBAAkB,EAAE,OAAO;IAC3B,yBAAyB,EAAE;QACzB,EAAE,cAAc,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;QAC7D,EAAE,cAAc,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;QACpE,EAAE,cAAc,EAAE,CAAC,eAAe,EAAE,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;KACvE;CACF,CAAC,CAAC;AAEH,MAAa,uBAAwB,SAAQ,4BAK5C;IAC6B,SAAS,GAAG;QACtC,IAAI,qCAA4B,EAA0D;KAC3F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAA0D;KAC3F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAA0D;KAC3F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAA0D;KAC3F,CAAC;CACH;AAlBD,0DAkBC;AAED,MAAa,UAAW,SAAQ,eAAkD;IAChF,MAAM,CAAC,yBAAyB;QAO9B,OAAO;YACL,WAAW,EAAE,UAAU;YACvB,mBAAmB,EAAE,+BAAuB;YAC5C,kBAAkB,EAAE,uBAAuB;SAC5C,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAU,CACrB,aAA4B,EAC5B,SAAiB;QAEjB,MAAM,MAAM,GAAG;YACb,aAAa,EAAE,SAAS;YACxB,gBAAgB,EAAE,OAAO;YACzB,WAAW,EAAE,OAAO;YACpB,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,aAAa,EAAE,IAAI;SACpB,CAAC;QACF,OAAO,IAAA,gBAAM,EACX,IAAI,UAAU,CAAC;YACb,aAAa;YACb,EAAE,EAAE,SAAS;YACb,cAAc,EAAE,MAAM;YACtB,cAAc,EAAE,MAAM;SACvB,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,cAA6B;QACzD,OAAO,IAAA,gBAAM,EAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,cAA6B;QACxD,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,cAA6B,EAAE,SAAiB;QAC1E,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AApDD,gCAoDC"}
@@ -1,14 +0,0 @@
1
- import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, ViewerContext } from '@expo/entity';
2
- export type NumberKeyFields = {
3
- id: number;
4
- };
5
- export declare const numberKeyEntityConfiguration: EntityConfiguration<NumberKeyFields, "id">;
6
- export declare class NumberKeyPrivacyPolicy extends EntityPrivacyPolicy<NumberKeyFields, 'id', ViewerContext, NumberKeyEntity> {
7
- protected readonly readRules: AlwaysAllowPrivacyPolicyRule<NumberKeyFields, "id", ViewerContext, NumberKeyEntity, "id">[];
8
- protected readonly createRules: AlwaysAllowPrivacyPolicyRule<NumberKeyFields, "id", ViewerContext, NumberKeyEntity, "id">[];
9
- protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<NumberKeyFields, "id", ViewerContext, NumberKeyEntity, "id">[];
10
- protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<NumberKeyFields, "id", ViewerContext, NumberKeyEntity, "id">[];
11
- }
12
- export declare class NumberKeyEntity extends Entity<NumberKeyFields, 'id', ViewerContext> {
13
- static defineCompanionDefinition(): EntityCompanionDefinition<NumberKeyFields, 'id', ViewerContext, NumberKeyEntity, NumberKeyPrivacyPolicy>;
14
- }
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NumberKeyEntity = exports.NumberKeyPrivacyPolicy = exports.numberKeyEntityConfiguration = void 0;
4
- const entity_1 = require("@expo/entity");
5
- exports.numberKeyEntityConfiguration = new entity_1.EntityConfiguration({
6
- idField: 'id',
7
- tableName: 'simple_test_entity_should_not_write_to_db',
8
- schema: {
9
- id: new entity_1.IntField({
10
- columnName: 'custom_id',
11
- cache: false,
12
- }),
13
- },
14
- databaseAdapterFlavor: 'postgres',
15
- cacheAdapterFlavor: 'redis',
16
- });
17
- class NumberKeyPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
18
- readRules = [
19
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
20
- ];
21
- createRules = [
22
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
23
- ];
24
- updateRules = [
25
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
26
- ];
27
- deleteRules = [
28
- new entity_1.AlwaysAllowPrivacyPolicyRule(),
29
- ];
30
- }
31
- exports.NumberKeyPrivacyPolicy = NumberKeyPrivacyPolicy;
32
- class NumberKeyEntity extends entity_1.Entity {
33
- static defineCompanionDefinition() {
34
- return {
35
- entityClass: NumberKeyEntity,
36
- entityConfiguration: exports.numberKeyEntityConfiguration,
37
- privacyPolicyClass: NumberKeyPrivacyPolicy,
38
- };
39
- }
40
- }
41
- exports.NumberKeyEntity = NumberKeyEntity;
42
- //# sourceMappingURL=TestEntityNumberKey.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TestEntityNumberKey.js","sourceRoot":"","sources":["../../../src/__testfixtures__/TestEntityNumberKey.ts"],"names":[],"mappings":";;;AAAA,yCAQsB;AAMT,QAAA,4BAA4B,GAAG,IAAI,4BAAmB,CAAwB;IACzF,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,2CAA2C;IACtD,MAAM,EAAE;QACN,EAAE,EAAE,IAAI,iBAAQ,CAAC;YACf,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,KAAK;SACb,CAAC;KACH;IACD,qBAAqB,EAAE,UAAU;IACjC,kBAAkB,EAAE,OAAO;CAC5B,CAAC,CAAC;AAEH,MAAa,sBAAuB,SAAQ,4BAK3C;IAC6B,SAAS,GAAG;QACtC,IAAI,qCAA4B,EAAyD;KAC1F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAAyD;KAC1F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAAyD;KAC1F,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAAyD;KAC1F,CAAC;CACH;AAlBD,wDAkBC;AAED,MAAa,eAAgB,SAAQ,eAA4C;IAC/E,MAAM,CAAC,yBAAyB;QAO9B,OAAO;YACL,WAAW,EAAE,eAAe;YAC5B,mBAAmB,EAAE,oCAA4B;YACjD,kBAAkB,EAAE,sBAAsB;SAC3C,CAAC;IACJ,CAAC;CACF;AAdD,0CAcC"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const globals_1 = require("@jest/globals");
7
- const promises_1 = require("fs/promises");
8
- const path_1 = __importDefault(require("path"));
9
- globals_1.it.each([
10
- 'createUnitTestEntityCompanionProvider',
11
- 'describeFieldTestCase',
12
- 'PrivacyPolicyRuleTestUtils',
13
- 'StubCacheAdapter',
14
- 'StubDatabaseAdapter',
15
- 'StubDatabaseAdapterProvider',
16
- 'StubQueryContextProvider',
17
- 'TSMockitoExtensions',
18
- ])('$localPath the same as in @expo/entity', async (fileName) => {
19
- // There isn't a great way to have TSMockitoExtensions in a shared package since it circularly depends on entity itself,
20
- // and entity would want to use it for testing. Therefore, we duplicate it and ensure it stays in sync.
21
- const fileContentsFromEntity = await (0, promises_1.readFile)(path_1.default.resolve(__dirname, `../../../entity/src/utils/__testfixtures__/${fileName}.ts`), 'utf-8');
22
- const fileContentsFromEntityTestingUtils = await (0, promises_1.readFile)(path_1.default.resolve(__dirname, `../${fileName}.ts`), 'utf-8');
23
- const trimmedFiles = [fileContentsFromEntity, fileContentsFromEntityTestingUtils].map((file) => file.substring(file.indexOf('export')));
24
- (0, globals_1.expect)(trimmedFiles[0]?.length).toBeGreaterThan(0);
25
- (0, globals_1.expect)(trimmedFiles[0]).toEqual(trimmedFiles[1]);
26
- });
27
- //# sourceMappingURL=FileConsistentcyWithEntity-test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileConsistentcyWithEntity-test.js","sourceRoot":"","sources":["../../../src/__tests__/FileConsistentcyWithEntity-test.ts"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,0CAAuC;AACvC,gDAAwB;AAExB,YAAE,CAAC,IAAI,CAAC;IACN,uCAAuC;IACvC,uBAAuB;IACvB,4BAA4B;IAC5B,kBAAkB;IAClB,qBAAqB;IACrB,6BAA6B;IAC7B,0BAA0B;IAC1B,qBAAqB;CACtB,CAAC,CAAC,wCAAwC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IAC9D,wHAAwH;IACxH,uGAAuG;IAEvG,MAAM,sBAAsB,GAAG,MAAM,IAAA,mBAAQ,EAC3C,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,8CAA8C,QAAQ,KAAK,CAAC,EACpF,OAAO,CACR,CAAC;IACF,MAAM,kCAAkC,GAAG,MAAM,IAAA,mBAAQ,EACvD,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,QAAQ,KAAK,CAAC,EAC5C,OAAO,CACR,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,sBAAsB,EAAE,kCAAkC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7F,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CACvC,CAAC;IAEF,IAAA,gBAAM,EAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACnD,IAAA,gBAAM,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC"}
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const entity_1 = require("@expo/entity");
4
- const globals_1 = require("@jest/globals");
5
- const ts_mockito_1 = require("ts-mockito");
6
- const PrivacyPolicyRuleTestUtils_1 = require("../PrivacyPolicyRuleTestUtils");
7
- (0, globals_1.describe)(PrivacyPolicyRuleTestUtils_1.describePrivacyPolicyRuleWithAsyncTestCase, () => {
8
- (0, globals_1.describe)('default args do not execute', () => {
9
- (0, PrivacyPolicyRuleTestUtils_1.describePrivacyPolicyRuleWithAsyncTestCase)(new entity_1.AlwaysAllowPrivacyPolicyRule(), {
10
- allowCases: new Map([
11
- [
12
- 'case',
13
- async () => ({
14
- viewerContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(entity_1.ViewerContext)),
15
- queryContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(entity_1.EntityQueryContext)),
16
- evaluationContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)()),
17
- entity: (0, ts_mockito_1.anything)(),
18
- }),
19
- ],
20
- ]),
21
- });
22
- (0, PrivacyPolicyRuleTestUtils_1.describePrivacyPolicyRuleWithAsyncTestCase)(new entity_1.AlwaysDenyPrivacyPolicyRule(), {
23
- denyCases: new Map([
24
- [
25
- 'case',
26
- async () => ({
27
- viewerContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(entity_1.ViewerContext)),
28
- queryContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(entity_1.EntityQueryContext)),
29
- evaluationContext: (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)()),
30
- entity: (0, ts_mockito_1.anything)(),
31
- }),
32
- ],
33
- ]),
34
- });
35
- });
36
- });
37
- //# sourceMappingURL=PrivacyPolicyRuleTestUtils-test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrivacyPolicyRuleTestUtils-test.js","sourceRoot":"","sources":["../../../src/__tests__/PrivacyPolicyRuleTestUtils-test.ts"],"names":[],"mappings":";;AAAA,yCAMsB;AACtB,2CAAyC;AACzC,2CAAsD;AAEtD,8EAA2F;AAE3F,IAAA,kBAAQ,EAAC,uEAA0C,EAAE,GAAG,EAAE;IACxD,IAAA,kBAAQ,EAAC,6BAA6B,EAAE,GAAG,EAAE;QAC3C,IAAA,uEAA0C,EAAC,IAAI,qCAA4B,EAAE,EAAE;YAC7E,UAAU,EAAE,IAAI,GAAG,CAAC;gBAClB;oBACE,MAAM;oBACN,KAAK,IAAI,EAAE,CAAC,CAAC;wBACX,aAAa,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,sBAAa,CAAC,CAAC;wBAC5C,YAAY,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,2BAAkB,CAAC,CAAC;wBAChD,iBAAiB,EACf,IAAA,qBAAQ,EAAC,IAAA,iBAAI,GAAiE,CAAC;wBACjF,MAAM,EAAE,IAAA,qBAAQ,GAAE;qBACnB,CAAC;iBACH;aACF,CAAC;SACH,CAAC,CAAC;QAEH,IAAA,uEAA0C,EAAC,IAAI,oCAA2B,EAAE,EAAE;YAC5E,SAAS,EAAE,IAAI,GAAG,CAAC;gBACjB;oBACE,MAAM;oBACN,KAAK,IAAI,EAAE,CAAC,CAAC;wBACX,aAAa,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,sBAAa,CAAC,CAAC;wBAC5C,YAAY,EAAE,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,2BAAkB,CAAC,CAAC;wBAChD,iBAAiB,EACf,IAAA,qBAAQ,EAAC,IAAA,iBAAI,GAAiE,CAAC;wBACjF,MAAM,EAAE,IAAA,qBAAQ,GAAE;qBACnB,CAAC;iBACH;aACF,CAAC;SACH,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,76 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const entity_1 = require("@expo/entity");
4
- const globals_1 = require("@jest/globals");
5
- const StubCacheAdapter_1 = require("../StubCacheAdapter");
6
- const TestEntity_1 = require("../__testfixtures__/TestEntity");
7
- (0, globals_1.describe)(StubCacheAdapter_1.NoCacheStubCacheAdapter, () => {
8
- (0, globals_1.describe)('loadManyAsync', () => {
9
- (0, globals_1.it)('should return a map of CacheLoadResult with status CacheStatus.MISS for all single values', async () => {
10
- const adapter = new StubCacheAdapter_1.NoCacheStubCacheAdapter();
11
- const result = await adapter.loadManyAsync(new entity_1.SingleFieldHolder('stringField'), [
12
- new entity_1.SingleFieldValueHolder('huh'),
13
- ]);
14
- (0, globals_1.expect)(result).toEqual(new entity_1.SingleFieldValueHolderMap(new Map([[new entity_1.SingleFieldValueHolder('huh'), { status: entity_1.CacheStatus.MISS }]])));
15
- });
16
- (0, globals_1.it)('should return a map of CacheLoadResult with status CacheStatus.MISS for all composite values', async () => {
17
- const adapter = new StubCacheAdapter_1.NoCacheStubCacheAdapter();
18
- const result = await adapter.loadManyAsync(new entity_1.CompositeFieldHolder(['stringField', 'intField']), [new entity_1.CompositeFieldValueHolder({ stringField: 'huh', intField: 42 })]);
19
- (0, globals_1.expect)(result).toEqual(new entity_1.CompositeFieldValueHolderMap(new Map([
20
- [
21
- new entity_1.CompositeFieldValueHolder({ stringField: 'huh', intField: 42 }),
22
- { status: entity_1.CacheStatus.MISS },
23
- ],
24
- ])));
25
- });
26
- });
27
- });
28
- (0, globals_1.describe)(StubCacheAdapter_1.InMemoryFullCacheStubCacheAdapter, () => {
29
- (0, globals_1.it)('correctly functions', async () => {
30
- const adapter = new StubCacheAdapter_1.InMemoryFullCacheStubCacheAdapterProvider().getCacheAdapter(TestEntity_1.testEntityConfiguration);
31
- const result = await adapter.loadManyAsync(new entity_1.SingleFieldHolder('stringField'), [
32
- new entity_1.SingleFieldValueHolder('huh'),
33
- ]);
34
- (0, globals_1.expect)(result).toEqual(new entity_1.SingleFieldValueHolderMap(new Map([[new entity_1.SingleFieldValueHolder('huh'), { status: entity_1.CacheStatus.MISS }]])));
35
- await adapter.cacheManyAsync(new entity_1.SingleFieldHolder('stringField'), new Map());
36
- const result2 = await adapter.loadManyAsync(new entity_1.SingleFieldHolder('stringField'), [
37
- new entity_1.SingleFieldValueHolder('huh'),
38
- ]);
39
- (0, globals_1.expect)(result2).toEqual(new entity_1.SingleFieldValueHolderMap(new Map([[new entity_1.SingleFieldValueHolder('huh'), { status: entity_1.CacheStatus.MISS }]])));
40
- const fields = {
41
- stringField: 'huh',
42
- customIdField: 'id1',
43
- testIndexedField: 'wat',
44
- intField: 3,
45
- dateField: new Date(),
46
- nullableField: null,
47
- };
48
- await adapter.cacheManyAsync(new entity_1.SingleFieldHolder('stringField'), new Map([[new entity_1.SingleFieldValueHolder('huh'), fields]]));
49
- const result3 = await adapter.loadManyAsync(new entity_1.SingleFieldHolder('stringField'), [
50
- new entity_1.SingleFieldValueHolder('huh'),
51
- ]);
52
- (0, globals_1.expect)(result3).toEqual(new entity_1.SingleFieldValueHolderMap(new Map([[new entity_1.SingleFieldValueHolder('huh'), { status: entity_1.CacheStatus.HIT, item: fields }]])));
53
- await adapter.invalidateManyAsync(new entity_1.SingleFieldHolder('stringField'), [
54
- new entity_1.SingleFieldValueHolder('huh'),
55
- ]);
56
- const result4 = await adapter.loadManyAsync(new entity_1.SingleFieldHolder('stringField'), [
57
- new entity_1.SingleFieldValueHolder('huh'),
58
- ]);
59
- (0, globals_1.expect)(result4).toEqual(new entity_1.SingleFieldValueHolderMap(new Map([[new entity_1.SingleFieldValueHolder('huh'), { status: entity_1.CacheStatus.MISS }]])));
60
- await adapter.cacheDBMissesAsync(new entity_1.SingleFieldHolder('stringField'), [
61
- new entity_1.SingleFieldValueHolder('huh'),
62
- ]);
63
- const result5 = await adapter.loadManyAsync(new entity_1.SingleFieldHolder('stringField'), [
64
- new entity_1.SingleFieldValueHolder('huh'),
65
- ]);
66
- (0, globals_1.expect)(result5).toEqual(new entity_1.SingleFieldValueHolderMap(new Map([[new entity_1.SingleFieldValueHolder('huh'), { status: entity_1.CacheStatus.NEGATIVE }]])));
67
- await adapter.invalidateManyAsync(new entity_1.SingleFieldHolder('stringField'), [
68
- new entity_1.SingleFieldValueHolder('huh'),
69
- ]);
70
- const result6 = await adapter.loadManyAsync(new entity_1.SingleFieldHolder('stringField'), [
71
- new entity_1.SingleFieldValueHolder('huh'),
72
- ]);
73
- (0, globals_1.expect)(result6).toEqual(new entity_1.SingleFieldValueHolderMap(new Map([[new entity_1.SingleFieldValueHolder('huh'), { status: entity_1.CacheStatus.MISS }]])));
74
- });
75
- });
76
- //# sourceMappingURL=StubCacheAdapter-test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StubCacheAdapter-test.js","sourceRoot":"","sources":["../../../src/__tests__/StubCacheAdapter-test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};