@liminalfunctions/framework-vitamins 1.0.8 → 1.0.10
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/dist/vitamins.js +9 -15
- package/dist/vitamins.js.map +1 -1
- package/package.json +1 -1
- package/src/vitamins.ts +14 -14
- package/test/0_0_basics.test.ts +3 -4
- package/test/0_1_regressions.ts +132 -0
- package/test/utils/testing_harness.ts +1 -1
package/dist/vitamins.js
CHANGED
|
@@ -68,17 +68,16 @@ class Query {
|
|
|
68
68
|
}
|
|
69
69
|
self.vitamins._add_query(self);
|
|
70
70
|
if (self.id !== this.id) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
}
|
|
71
|
+
let new_child_generators = this.child_generators.filter(ele => !self.child_generators.includes(ele));
|
|
72
|
+
for (let generator of new_child_generators) {
|
|
73
|
+
self.vitamins._debug(`ADDING CHILD GENERATOR`);
|
|
74
|
+
self.vitamins._debug(generator);
|
|
75
|
+
self.child_generators.push(generator);
|
|
77
76
|
}
|
|
78
|
-
for (let child_id of
|
|
79
|
-
let document =
|
|
80
|
-
let generated_child_queries =
|
|
81
|
-
generated_child_queries.forEach(ele =>
|
|
77
|
+
for (let child_id of self.children) {
|
|
78
|
+
let document = self.vitamins.documents.get(child_id);
|
|
79
|
+
let generated_child_queries = self.vitamins._generate_child_queries(document);
|
|
80
|
+
generated_child_queries.forEach(ele => self.vitamins._add_query(ele));
|
|
82
81
|
generated_child_queries.forEach(ele => ele.run());
|
|
83
82
|
}
|
|
84
83
|
}
|
|
@@ -312,11 +311,6 @@ export class Vitamins {
|
|
|
312
311
|
let generated_child_queries = (query_parent.child_generators ?? []).map(generator => generator(document.document)).filter(ele => ele);
|
|
313
312
|
for (let q = 0; q < generated_child_queries.length; q++) {
|
|
314
313
|
let generated_child_query = generated_child_queries[q];
|
|
315
|
-
let query = this._find_existing_query(generated_child_query) ?? generated_child_query;
|
|
316
|
-
if (generated_child_query.id !== query.id) {
|
|
317
|
-
generated_child_queries[q] = query;
|
|
318
|
-
generated_child_query = query;
|
|
319
|
-
}
|
|
320
314
|
generated_child_query.link_parent(document);
|
|
321
315
|
}
|
|
322
316
|
all_generated_child_queries.push(...generated_child_queries);
|
package/dist/vitamins.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vitamins.js","sourceRoot":"","sources":["../src/vitamins.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vitamins.js","sourceRoot":"","sources":["../src/vitamins.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/vitamins.ts
CHANGED
|
@@ -91,19 +91,18 @@ class Query {
|
|
|
91
91
|
// if we already had that query,....
|
|
92
92
|
if(self.id !== this.id){
|
|
93
93
|
// if any generators were specified, look for new ones and add them.
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}
|
|
94
|
+
let new_child_generators = this.child_generators.filter(ele => !self.child_generators.includes(ele))
|
|
95
|
+
for(let generator of new_child_generators) {
|
|
96
|
+
self.vitamins._debug(`ADDING CHILD GENERATOR`)
|
|
97
|
+
self.vitamins._debug(generator)
|
|
98
|
+
self.child_generators.push(generator);
|
|
100
99
|
}
|
|
101
100
|
|
|
102
101
|
// generate the child queries for the new generators, since that wouldn't otherwise happen.
|
|
103
|
-
for(let child_id of
|
|
104
|
-
let document =
|
|
105
|
-
let generated_child_queries =
|
|
106
|
-
generated_child_queries.forEach(ele =>
|
|
102
|
+
for(let child_id of self.children) {
|
|
103
|
+
let document = self.vitamins.documents.get(child_id);
|
|
104
|
+
let generated_child_queries = self.vitamins._generate_child_queries(document);
|
|
105
|
+
generated_child_queries.forEach(ele => self.vitamins._add_query(ele));
|
|
107
106
|
generated_child_queries.forEach(ele => ele.run());
|
|
108
107
|
}
|
|
109
108
|
} else {
|
|
@@ -314,7 +313,6 @@ export class Vitamins {
|
|
|
314
313
|
|
|
315
314
|
// make the query a parent of the document. Query's parent_of method already checks to make sure it's
|
|
316
315
|
// not already a parent, so you don't need to do that again here.
|
|
317
|
-
// TODO: unlink documents!
|
|
318
316
|
if(query){
|
|
319
317
|
query.link_child(document);
|
|
320
318
|
}
|
|
@@ -329,7 +327,6 @@ export class Vitamins {
|
|
|
329
327
|
}
|
|
330
328
|
|
|
331
329
|
// get the full set of parent queries so that we can re-generate any child queries.
|
|
332
|
-
// let generated_child_queries = this._generate_child_queries(parent_query);
|
|
333
330
|
let generated_child_queries = this._generate_child_queries(document);
|
|
334
331
|
generated_child_queries.forEach(ele => this._add_query(ele));
|
|
335
332
|
//generated_child_queries.forEach(ele => this._debug(quickprint(ele)))
|
|
@@ -380,11 +377,14 @@ export class Vitamins {
|
|
|
380
377
|
for(let q = 0; q < generated_child_queries.length; q++){
|
|
381
378
|
// if we already had the child query, use the existing one instead of the new one
|
|
382
379
|
let generated_child_query = generated_child_queries[q];
|
|
383
|
-
|
|
380
|
+
// This was a nice idea, but it doesn't work, because comparing queries
|
|
381
|
+
// doesn't discover if they have equivalent *child* queries. the game here
|
|
382
|
+
// has to be to let the deduper in .run() do the work.
|
|
383
|
+
/*let query = this._find_existing_query(generated_child_query) ?? generated_child_query;
|
|
384
384
|
if(generated_child_query.id !== query.id ){
|
|
385
385
|
generated_child_queries[q] = query;
|
|
386
386
|
generated_child_query = query;
|
|
387
|
-
}
|
|
387
|
+
}*/
|
|
388
388
|
//this._add_query(generated_child_query);
|
|
389
389
|
generated_child_query.link_parent(document);
|
|
390
390
|
}
|
package/test/0_0_basics.test.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { Vitamins } from '../dist/vitamins'
|
|
|
5
5
|
|
|
6
6
|
import { Client, Institution, Mutualism, Project, gen_institution, gen_client, gen_project, gen_mutualism } from './utils/testing_harness.js'
|
|
7
7
|
|
|
8
|
-
describe('
|
|
8
|
+
describe('Vitamins Basics', function () {
|
|
9
9
|
|
|
10
10
|
function get_setup(
|
|
11
11
|
institution_database: Map<string, any> = new Map<string, any>(),
|
|
@@ -293,6 +293,8 @@ describe('Client Library Generation: Library Generation', function () {
|
|
|
293
293
|
(result) => vitamins.query(api.collection('institution')?.document(result._id).collection('client'), {_id: client_1._id}),
|
|
294
294
|
(result) => vitamins.query(api.collection('institution')?.document(result._id).collection('client'), {_id: client_2._id}),
|
|
295
295
|
).run()
|
|
296
|
+
await sleep(20);
|
|
297
|
+
|
|
296
298
|
//@ts-expect-error
|
|
297
299
|
vitamins.query(api.collection('institution')?.document(institution_1._id) as Collection, undefined,
|
|
298
300
|
(result) => vitamins.query(api.collection('institution')?.document(result._id).collection('client'), {_id: client_2._id}),
|
|
@@ -514,7 +516,4 @@ describe('Client Library Generation: Library Generation', function () {
|
|
|
514
516
|
).run();
|
|
515
517
|
}, 'Error: arbitrary error');
|
|
516
518
|
});
|
|
517
|
-
|
|
518
|
-
// TODO: vue needs the ability to have a different name for the collection.
|
|
519
|
-
// for example, the collection ID may be "user", but on vue it needs to be "users".
|
|
520
519
|
});
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import assert from "assert";
|
|
2
|
+
|
|
3
|
+
import { generated_collection_interface, result } from '../dist/type_generated_collection.js'
|
|
4
|
+
import { Vitamins } from '../dist/vitamins.js'
|
|
5
|
+
|
|
6
|
+
import { Client, Institution, Mutualism, Project, gen_institution, gen_client, gen_project, gen_mutualism } from './utils/testing_harness.js'
|
|
7
|
+
|
|
8
|
+
describe('Bug Regressions', function () {
|
|
9
|
+
|
|
10
|
+
function get_setup(
|
|
11
|
+
institution_database: Map<string, any> = new Map<string, any>(),
|
|
12
|
+
client_database: Map<string, any> = new Map<string, any>(),
|
|
13
|
+
project_database: Map<string, any> = new Map<string, any>(),
|
|
14
|
+
mutualsm_database: Map<string, any> = new Map<string, any>()
|
|
15
|
+
) {
|
|
16
|
+
|
|
17
|
+
let collection_mutualism = new Mutualism(
|
|
18
|
+
['institution', 'client', 'mutualism'],
|
|
19
|
+
mutualsm_database
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
let collection_project = new Project(
|
|
23
|
+
['institution', 'project'],
|
|
24
|
+
project_database
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
let collection_client = new Client(
|
|
28
|
+
['institution', 'client'],
|
|
29
|
+
client_database,
|
|
30
|
+
collection_mutualism
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
let collection_institution = new Institution(
|
|
34
|
+
['institution'],
|
|
35
|
+
institution_database,
|
|
36
|
+
collection_client,
|
|
37
|
+
collection_project
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
let api = {
|
|
41
|
+
collection(collection_id: 'institution'){
|
|
42
|
+
switch(collection_id) {
|
|
43
|
+
case 'institution':
|
|
44
|
+
return collection_institution
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
let vue = gen_vue();
|
|
50
|
+
|
|
51
|
+
return {
|
|
52
|
+
collection_mutualism,
|
|
53
|
+
collection_project,
|
|
54
|
+
collection_client,
|
|
55
|
+
collection_institution,
|
|
56
|
+
api,
|
|
57
|
+
vue
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
function gen_vue() {
|
|
62
|
+
return {
|
|
63
|
+
institutions: new Map<string, any>(),
|
|
64
|
+
clients: new Map<string, any>(),
|
|
65
|
+
projects: new Map<string, any>(),
|
|
66
|
+
mutualisms: new Map<string, any>(),
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
function database(...entries: result[]){
|
|
71
|
+
let map = new Map<string, any>();
|
|
72
|
+
for(let entry of entries){
|
|
73
|
+
map.set(entry._id, entry);
|
|
74
|
+
}
|
|
75
|
+
return map;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
function sleep(ms: number) {
|
|
79
|
+
return new Promise((resolve) => {
|
|
80
|
+
setTimeout(resolve, ms);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
it(`a sweeping query should not block a specific query's child queries`, async function () {
|
|
87
|
+
let institution_1 = gen_institution('test institution 1')
|
|
88
|
+
let client_1 = gen_client(institution_1, 'test client 1')
|
|
89
|
+
let project_1 = gen_project(institution_1, client_1, 'test project')
|
|
90
|
+
let mutualism_1 = gen_mutualism(institution_1, [client_1], 'test mutualism')
|
|
91
|
+
let institution_database = database(institution_1);
|
|
92
|
+
let client_database = database(client_1);
|
|
93
|
+
let project_database = database(project_1);
|
|
94
|
+
let mutualism_database = database(mutualism_1);
|
|
95
|
+
let {
|
|
96
|
+
vue,
|
|
97
|
+
api
|
|
98
|
+
} = get_setup(institution_database, client_database, project_database, mutualism_database);
|
|
99
|
+
|
|
100
|
+
let vitamins = new Vitamins(vue);
|
|
101
|
+
|
|
102
|
+
vitamins.query(api.collection('institution')?.document(institution_1._id).collection('client'), {},
|
|
103
|
+
(client) => vitamins.document(api.collection('institution')?.document(institution_1._id).collection('project').document(project_1._id))
|
|
104
|
+
).run()
|
|
105
|
+
await sleep(20);
|
|
106
|
+
|
|
107
|
+
vitamins.query(api.collection('institution'), {},
|
|
108
|
+
(institution) => { return vitamins.document(api.collection('institution').document(institution_1._id).collection('project').document(project_1._id),
|
|
109
|
+
//@ts-ignore
|
|
110
|
+
(project) => { return vitamins.query(api.collection('institution').document(institution_1._id).collection('client').document(client_1._id).collection('mutualism'), undefined);}
|
|
111
|
+
)}
|
|
112
|
+
).run()
|
|
113
|
+
await sleep(20);
|
|
114
|
+
|
|
115
|
+
let test_against = gen_vue();
|
|
116
|
+
test_against.institutions.set(institution_1._id, structuredClone(institution_1));
|
|
117
|
+
test_against.clients.set(client_1._id, structuredClone(client_1));
|
|
118
|
+
test_against.projects.set(project_1._id, structuredClone(project_1));
|
|
119
|
+
test_against.mutualisms.set(mutualism_1._id, structuredClone(mutualism_1));
|
|
120
|
+
|
|
121
|
+
assert.deepEqual(vue.institutions.get(institution_1._id), institution_1)
|
|
122
|
+
assert.deepEqual(vue.clients.get(client_1._id), client_1)
|
|
123
|
+
assert.deepEqual(vue.projects.get(project_1._id), project_1)
|
|
124
|
+
assert.deepEqual(vue.mutualisms.get(mutualism_1._id), mutualism_1)
|
|
125
|
+
assert.deepEqual(vue, test_against)
|
|
126
|
+
|
|
127
|
+
/*assert.equal(api.collection('institution')?.meta_counter.get(institution_1._id), 1)
|
|
128
|
+
assert.equal(api.collection('institution')?.document('*').collection('client').meta_counter.get(client_1._id), 1)
|
|
129
|
+
assert.equal(api.collection('institution')?.document('*').collection('client').meta_counter.get(client_2._id), 1)
|
|
130
|
+
assert.equal(api.collection('institution')?.document('*').collection('client').meta_counter.get(client_3._id), 1)*/
|
|
131
|
+
});
|
|
132
|
+
});
|
|
@@ -180,7 +180,7 @@ export class Client {
|
|
|
180
180
|
if(self.errors){ throw new Error('arbitrary error')};
|
|
181
181
|
return await get(document_id, self.database, self.meta_counter)
|
|
182
182
|
},
|
|
183
|
-
collection(collection_id: 'mutualism') {
|
|
183
|
+
collection(collection_id: 'mutualism'): Mutualism {
|
|
184
184
|
switch(collection_id){
|
|
185
185
|
case 'mutualism':
|
|
186
186
|
return self.mutualism;
|