Skip to content

Commit 7aadff9

Browse files
committed
Fix sync rule tests
1 parent 92391ab commit 7aadff9

File tree

6 files changed

+54
-179
lines changed

6 files changed

+54
-179
lines changed

packages/sync-rules/test/src/parameter_queries.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,11 @@ describe('parameter queries', () => {
8484
// We _do_ need to care about the bucket string representation.
8585
expect(
8686
query.resolveBucketDescriptions([{ int1: 314, float1: 3.14, float2: 314 }], normalizeTokenParameters({}))
87-
).toEqual([{ bucket: 'mybucket[314,3.14,314]', priority: 3 }]);
87+
).toEqual([{ bucket: 'mybucket[314,3.14,314]', definition: 'mybucket', priority: 3 }]);
8888

8989
expect(
9090
query.resolveBucketDescriptions([{ int1: 314n, float1: 3.14, float2: 314 }], normalizeTokenParameters({}))
91-
).toEqual([{ bucket: 'mybucket[314,3.14,314]', priority: 3 }]);
91+
).toEqual([{ bucket: 'mybucket[314,3.14,314]', definition: 'mybucket', priority: 3 }]);
9292
});
9393

9494
test('plain token_parameter (baseline)', () => {
@@ -365,7 +365,7 @@ describe('parameter queries', () => {
365365
[{ user_id: 'user1' }],
366366
normalizeTokenParameters({ user_id: 'user1', is_admin: true })
367367
)
368-
).toEqual([{ bucket: 'mybucket["user1",1]', priority: 3 }]);
368+
).toEqual([{ bucket: 'mybucket["user1",1]', definition: 'mybucket', priority: 3 }]);
369369
});
370370

371371
test('case-sensitive parameter queries (1)', () => {

packages/sync-rules/test/src/static_parameter_queries.test.ts

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ describe('static parameter queries', () => {
1010
expect(query.errors).toEqual([]);
1111
expect(query.bucketParameters!).toEqual(['user_id']);
1212
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ user_id: 'user1' }))).toEqual([
13-
{ bucket: 'mybucket["user1"]', priority: 3 }
13+
{ bucket: 'mybucket["user1"]', definition: 'mybucket', priority: 3 }
1414
]);
1515
});
1616

@@ -20,7 +20,7 @@ describe('static parameter queries', () => {
2020
expect(query.errors).toEqual([]);
2121
expect(query.bucketParameters!).toEqual([]);
2222
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ user_id: 'user1' }))).toEqual([
23-
{ bucket: 'mybucket[]', priority: 3 }
23+
{ bucket: 'mybucket[]', definition: 'mybucket', priority: 3 }
2424
]);
2525
});
2626

@@ -29,7 +29,7 @@ describe('static parameter queries', () => {
2929
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS, '1') as StaticSqlParameterQuery;
3030
expect(query.errors).toEqual([]);
3131
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ user_id: 'user1', is_admin: true }))).toEqual([
32-
{ bucket: 'mybucket["user1"]', priority: 3 }
32+
{ bucket: 'mybucket["user1"]', definition: 'mybucket', priority: 3 }
3333
]);
3434
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ user_id: 'user1', is_admin: false }))).toEqual(
3535
[]
@@ -41,7 +41,7 @@ describe('static parameter queries', () => {
4141
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS, '1') as StaticSqlParameterQuery;
4242
expect(query.errors).toEqual([]);
4343
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ user_id: 'user1' }))).toEqual([
44-
{ bucket: 'mybucket["USER1"]', priority: 3 }
44+
{ bucket: 'mybucket["USER1"]', definition: 'mybucket', priority: 3 }
4545
]);
4646
expect(query.bucketParameters!).toEqual(['upper_id']);
4747
});
@@ -51,7 +51,7 @@ describe('static parameter queries', () => {
5151
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS, '1') as StaticSqlParameterQuery;
5252
expect(query.errors).toEqual([]);
5353
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ role: 'admin' }))).toEqual([
54-
{ bucket: 'mybucket[]', priority: 3 }
54+
{ bucket: 'mybucket[]', definition: 'mybucket', priority: 3 }
5555
]);
5656
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ role: 'user' }))).toEqual([]);
5757
});
@@ -61,7 +61,7 @@ describe('static parameter queries', () => {
6161
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS, '1') as StaticSqlParameterQuery;
6262
expect(query.errors).toEqual([]);
6363
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ id1: 't1', id2: 't1' }))).toEqual([
64-
{ bucket: 'mybucket[]', priority: 3 }
64+
{ bucket: 'mybucket[]', definition: 'mybucket', priority: 3 }
6565
]);
6666
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ id1: 't1', id2: 't2' }))).toEqual([]);
6767
});
@@ -80,7 +80,7 @@ describe('static parameter queries', () => {
8080
expect(query.errors).toEqual([]);
8181

8282
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({}, { org_id: 'test' }))).toEqual([
83-
{ bucket: 'mybucket["test"]', priority: 3 }
83+
{ bucket: 'mybucket["test"]', definition: 'mybucket', priority: 3 }
8484
]);
8585
});
8686

@@ -91,7 +91,7 @@ describe('static parameter queries', () => {
9191
expect(query.bucketParameters).toEqual(['user_id']);
9292

9393
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ user_id: 'user1' }))).toEqual([
94-
{ bucket: 'mybucket["user1"]', priority: 3 }
94+
{ bucket: 'mybucket["user1"]', definition: 'mybucket', priority: 3 }
9595
]);
9696
});
9797

@@ -102,7 +102,7 @@ describe('static parameter queries', () => {
102102
expect(query.bucketParameters).toEqual(['user_id']);
103103

104104
expect(query.getStaticBucketDescriptions(normalizeTokenParameters({ user_id: 'user1' }))).toEqual([
105-
{ bucket: 'mybucket["user1"]', priority: 3 }
105+
{ bucket: 'mybucket["user1"]', definition: 'mybucket', priority: 3 }
106106
]);
107107
});
108108

@@ -111,7 +111,7 @@ describe('static parameter queries', () => {
111111
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS, '1') as StaticSqlParameterQuery;
112112
expect(query.errors).toEqual([]);
113113
expect(query.getStaticBucketDescriptions(new RequestParameters({ sub: '' }, {}))).toEqual([
114-
{ bucket: 'mybucket[]', priority: 3 }
114+
{ bucket: 'mybucket[]', definition: 'mybucket', priority: 3 }
115115
]);
116116
});
117117

@@ -120,7 +120,7 @@ describe('static parameter queries', () => {
120120
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS, '1') as StaticSqlParameterQuery;
121121
expect(query.errors).toEqual([]);
122122
expect(query.getStaticBucketDescriptions(new RequestParameters({ sub: '' }, {}))).toEqual([
123-
{ bucket: 'mybucket[]', priority: 3 }
123+
{ bucket: 'mybucket[]', definition: 'mybucket', priority: 3 }
124124
]);
125125
});
126126

@@ -136,7 +136,7 @@ describe('static parameter queries', () => {
136136
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS, '1') as StaticSqlParameterQuery;
137137
expect(query.errors).toEqual([]);
138138
expect(query.getStaticBucketDescriptions(new RequestParameters({ sub: '' }, {}))).toEqual([
139-
{ bucket: 'mybucket[]', priority: 3 }
139+
{ bucket: 'mybucket[]', definition: 'mybucket', priority: 3 }
140140
]);
141141
});
142142

@@ -147,10 +147,10 @@ describe('static parameter queries', () => {
147147
expect(query.errors).toEqual([]);
148148
expect(
149149
query.getStaticBucketDescriptions(new RequestParameters({ sub: '', permissions: ['write', 'read:users'] }, {}))
150-
).toEqual([{ bucket: 'mybucket[1]', priority: 3 }]);
150+
).toEqual([{ bucket: 'mybucket[1]', definition: 'mybucket', priority: 3 }]);
151151
expect(
152152
query.getStaticBucketDescriptions(new RequestParameters({ sub: '', permissions: ['write', 'write:users'] }, {}))
153-
).toEqual([{ bucket: 'mybucket[0]', priority: 3 }]);
153+
).toEqual([{ bucket: 'mybucket[0]', definition: 'mybucket', priority: 3 }]);
154154
});
155155

156156
test('IN for permissions in request.jwt() (2)', function () {
@@ -160,7 +160,7 @@ describe('static parameter queries', () => {
160160
expect(query.errors).toEqual([]);
161161
expect(
162162
query.getStaticBucketDescriptions(new RequestParameters({ sub: '', permissions: ['write', 'read:users'] }, {}))
163-
).toEqual([{ bucket: 'mybucket[]', priority: 3 }]);
163+
).toEqual([{ bucket: 'mybucket[]', definition: 'mybucket', priority: 3 }]);
164164
expect(
165165
query.getStaticBucketDescriptions(new RequestParameters({ sub: '', permissions: ['write', 'write:users'] }, {}))
166166
).toEqual([]);
@@ -171,7 +171,7 @@ describe('static parameter queries', () => {
171171
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS, '1') as StaticSqlParameterQuery;
172172
expect(query.errors).toEqual([]);
173173
expect(query.getStaticBucketDescriptions(new RequestParameters({ sub: '', role: 'superuser' }, {}))).toEqual([
174-
{ bucket: 'mybucket[]', priority: 3 }
174+
{ bucket: 'mybucket[]', definition: 'mybucket', priority: 3 }
175175
]);
176176
expect(query.getStaticBucketDescriptions(new RequestParameters({ sub: '', role: 'superadmin' }, {}))).toEqual([]);
177177
});

packages/sync-rules/test/src/streams.test.ts

Lines changed: 0 additions & 126 deletions
This file was deleted.

packages/sync-rules/test/src/sync_rules.test.ts

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,12 @@ import {
1010
normalizeQuerierOptions,
1111
normalizeTokenParameters
1212
} from './util.js';
13+
import { SqlBucketDescriptor } from '../../src/SqlBucketDescriptor.js';
1314

1415
describe('sync rules', () => {
1516
test('parse empty sync rules', () => {
1617
const rules = SqlSyncRules.fromYaml('bucket_definitions: {}', PARSE_OPTIONS);
17-
expect(rules.bucketDescriptors).toEqual([]);
18+
expect(rules.bucketSources).toEqual([]);
1819
});
1920

2021
test('parse global sync rules', () => {
@@ -27,7 +28,7 @@ bucket_definitions:
2728
`,
2829
PARSE_OPTIONS
2930
);
30-
const bucket = rules.bucketDescriptors[0];
31+
const bucket = rules.bucketSources[0] as SqlBucketDescriptor;
3132
expect(bucket.name).toEqual('mybucket');
3233
expect(bucket.bucketParameters).toEqual([]);
3334
const dataQuery = bucket.dataQueries[0];
@@ -61,7 +62,7 @@ bucket_definitions:
6162
`,
6263
PARSE_OPTIONS
6364
);
64-
const bucket = rules.bucketDescriptors[0];
65+
const bucket = rules.bucketSources[0] as SqlBucketDescriptor;
6566
expect(bucket.bucketParameters).toEqual([]);
6667
const param_query = bucket.globalParameterQueries[0];
6768

@@ -93,7 +94,7 @@ bucket_definitions:
9394
`,
9495
PARSE_OPTIONS
9596
);
96-
const bucket = rules.bucketDescriptors[0];
97+
const bucket = rules.bucketSources[0] as SqlBucketDescriptor;
9798
expect(bucket.bucketParameters).toEqual([]);
9899
const param_query = bucket.parameterQueries[0];
99100
expect(param_query.bucketParameters).toEqual([]);
@@ -117,14 +118,16 @@ bucket_definitions:
117118
`,
118119
PARSE_OPTIONS
119120
);
120-
const bucket = rules.bucketDescriptors[0];
121+
const bucket = rules.bucketSources[0] as SqlBucketDescriptor;
121122
expect(bucket.bucketParameters).toEqual(['user_id', 'device_id']);
122123
const param_query = bucket.globalParameterQueries[0];
123124
expect(param_query.bucketParameters).toEqual(['user_id', 'device_id']);
124125
expect(
125126
rules.getBucketParameterQuerier(normalizeQuerierOptions({ user_id: 'user1' }, { device_id: 'device1' }))
126127
.staticBuckets
127-
).toEqual([{ bucket: 'mybucket["user1","device1"]', priority: 3 }]);
128+
).toEqual([
129+
{ bucket: 'mybucket["user1","device1"]', definition: 'mybucket', inclusion_reasons: ['default'], priority: 3 }
130+
]);
128131

129132
const data_query = bucket.dataQueries[0];
130133
expect(data_query.bucketParameters).toEqual(['user_id', 'device_id']);
@@ -163,12 +166,12 @@ bucket_definitions:
163166
`,
164167
PARSE_OPTIONS
165168
);
166-
const bucket = rules.bucketDescriptors[0];
169+
const bucket = rules.bucketSources[0] as SqlBucketDescriptor;
167170
expect(bucket.bucketParameters).toEqual(['user_id']);
168171
const param_query = bucket.globalParameterQueries[0];
169172
expect(param_query.bucketParameters).toEqual(['user_id']);
170173
expect(rules.getBucketParameterQuerier(normalizeQuerierOptions({ user_id: 'user1' })).staticBuckets).toEqual([
171-
{ bucket: 'mybucket["user1"]', priority: 3 }
174+
{ bucket: 'mybucket["user1"]', definition: 'mybucket', inclusion_reasons: ['default'], priority: 3 }
172175
]);
173176

174177
const data_query = bucket.dataQueries[0];
@@ -307,7 +310,7 @@ bucket_definitions:
307310
`,
308311
PARSE_OPTIONS
309312
);
310-
const bucket = rules.bucketDescriptors[0];
313+
const bucket = rules.bucketSources[0] as SqlBucketDescriptor;
311314
expect(bucket.bucketParameters).toEqual(['user_id']);
312315
expect(rules.getBucketParameterQuerier(normalizeQuerierOptions({ user_id: 'user1' }))).toMatchObject({
313316
staticBuckets: [{ bucket: 'mybucket["USER1"]', priority: 3 }],
@@ -344,7 +347,7 @@ bucket_definitions:
344347
`,
345348
PARSE_OPTIONS
346349
);
347-
const bucket = rules.bucketDescriptors[0];
350+
const bucket = rules.bucketSources[0] as SqlBucketDescriptor;
348351
expect(bucket.bucketParameters).toEqual(['user_id']);
349352
expect(rules.getBucketParameterQuerier(normalizeQuerierOptions({ user_id: 'user1' }))).toMatchObject({
350353
staticBuckets: [{ bucket: 'mybucket["USER1"]', priority: 3 }],
@@ -512,7 +515,7 @@ bucket_definitions:
512515
]);
513516

514517
expect(rules.getBucketParameterQuerier(normalizeQuerierOptions({ is_admin: true })).staticBuckets).toEqual([
515-
{ bucket: 'mybucket[1]', priority: 3 }
518+
{ bucket: 'mybucket[1]', definition: 'mybucket', inclusion_reasons: ['default'], priority: 3 }
516519
]);
517520
});
518521

@@ -921,7 +924,7 @@ bucket_definitions:
921924
`,
922925
PARSE_OPTIONS
923926
);
924-
const bucket = rules.bucketDescriptors[0];
927+
const bucket = rules.bucketSources[0] as SqlBucketDescriptor;
925928
expect(bucket.bucketParameters).toEqual(['user_id']);
926929
expect(rules.hasDynamicBucketQueries()).toBe(true);
927930

0 commit comments

Comments
 (0)