@luzzle/core 0.0.53 → 0.0.54
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/src/database/migrations.test.js +14 -32
- package/dist/src/database/migrations.test.js.map +1 -1
- package/dist/src/lib/ajv.d.ts +2 -1
- package/dist/src/lib/ajv.js +6 -2
- package/dist/src/lib/ajv.js.map +1 -1
- package/dist/src/lib/ajv.test.js +8 -2
- package/dist/src/lib/ajv.test.js.map +1 -1
- package/dist/src/pieces/Piece.test.js +8 -20
- package/dist/src/pieces/Piece.test.js.map +1 -1
- package/dist/src/pieces/Pieces.test.js +16 -18
- package/dist/src/pieces/Pieces.test.js.map +1 -1
- package/dist/src/pieces/cache.test.js +55 -81
- package/dist/src/pieces/cache.test.js.map +1 -1
- package/dist/src/pieces/items.test.js +86 -83
- package/dist/src/pieces/items.test.js.map +1 -1
- package/dist/src/pieces/manager.test.js +40 -57
- package/dist/src/pieces/manager.test.js.map +1 -1
- package/dist/src/pieces/utils/frontmatter.js.map +1 -1
- package/dist/test/db.d.ts +3 -0
- package/dist/test/db.js +19 -0
- package/dist/test/db.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/src/database/database.mock.d.ts +0 -22
- package/dist/src/database/database.mock.js +0 -42
- package/dist/src/database/database.mock.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pieces.test.js","sourceRoot":"","sources":["../../../src/pieces/Pieces.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Pieces.test.js","sourceRoot":"","sources":["../../../src/pieces/Pieces.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,98 +1,72 @@
|
|
|
1
|
-
import { describe, expect, test,
|
|
1
|
+
import { describe, expect, test, beforeEach, afterEach } from 'vitest';
|
|
2
2
|
import * as cache from './cache.js';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
import { setupDatabase, teardownDatabase } from '../../test/db.js';
|
|
4
|
+
let db;
|
|
5
|
+
beforeEach(async () => {
|
|
6
|
+
db = await setupDatabase();
|
|
7
|
+
});
|
|
8
|
+
afterEach(async () => {
|
|
9
|
+
await teardownDatabase(db);
|
|
10
|
+
});
|
|
11
11
|
describe('pieces/cache.ts', () => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
test('getCache returns cached entry by file_path', async () => {
|
|
13
|
+
await cache.addCache(db, 'book.md', 'hash1');
|
|
14
|
+
const result = await cache.getCache(db, 'book.md');
|
|
15
|
+
expect(result).toMatchObject({
|
|
16
|
+
file_path: 'book.md',
|
|
17
|
+
content_hash: 'hash1',
|
|
18
18
|
});
|
|
19
19
|
});
|
|
20
|
-
test('getCache', async () => {
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
const dbCache = makeCache();
|
|
24
|
-
queries.executeTakeFirst.mockReturnValueOnce(dbCache);
|
|
25
|
-
const cacheGet = await cache.getCache(db, file);
|
|
26
|
-
expect(queries.where).toHaveBeenCalledWith('file_path', '=', file);
|
|
27
|
-
expect(cacheGet).toEqual(dbCache);
|
|
20
|
+
test('getCache returns null when not found', async () => {
|
|
21
|
+
const result = await cache.getCache(db, 'missing.md');
|
|
22
|
+
expect(result).toBeNull();
|
|
28
23
|
});
|
|
29
|
-
test('
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
expect(cacheGet).toEqual(null);
|
|
24
|
+
test('getCacheAll returns all entries', async () => {
|
|
25
|
+
await cache.addCache(db, 'a.md', 'hash_a');
|
|
26
|
+
await cache.addCache(db, 'b.md', 'hash_b');
|
|
27
|
+
const result = await cache.getCacheAll(db);
|
|
28
|
+
expect(result).toHaveLength(2);
|
|
35
29
|
});
|
|
36
|
-
test('
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
test('addCache', async () => {
|
|
44
|
-
const { db, queries } = mockKysely();
|
|
45
|
-
const file = '/path/to/piece';
|
|
46
|
-
const id = 'id';
|
|
47
|
-
const hash = 'hash';
|
|
48
|
-
mocks.createId.mockReturnValueOnce(id);
|
|
49
|
-
await cache.addCache(db, file, hash);
|
|
50
|
-
expect(mocks.createId).toHaveBeenCalledOnce();
|
|
51
|
-
expect(queries.values).toHaveBeenCalledWith({
|
|
52
|
-
file_path: file,
|
|
53
|
-
content_hash: hash,
|
|
54
|
-
id,
|
|
30
|
+
test('addCache inserts and upserts on conflict', async () => {
|
|
31
|
+
await cache.addCache(db, 'book.md', 'hash1');
|
|
32
|
+
await cache.addCache(db, 'book.md', 'hash2');
|
|
33
|
+
const result = await cache.getCache(db, 'book.md');
|
|
34
|
+
expect(result).toMatchObject({
|
|
35
|
+
file_path: 'book.md',
|
|
36
|
+
content_hash: 'hash2',
|
|
55
37
|
});
|
|
38
|
+
const all = await cache.getCacheAll(db);
|
|
39
|
+
expect(all).toHaveLength(1);
|
|
56
40
|
});
|
|
57
|
-
test('updateCache', async () => {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
content_hash:
|
|
64
|
-
date_updated: expect.any(Number),
|
|
41
|
+
test('updateCache updates existing entry', async () => {
|
|
42
|
+
await cache.addCache(db, 'book.md', 'hash1');
|
|
43
|
+
await cache.updateCache(db, 'book.md', 'hash2');
|
|
44
|
+
const result = await cache.getCache(db, 'book.md');
|
|
45
|
+
expect(result).toMatchObject({
|
|
46
|
+
file_path: 'book.md',
|
|
47
|
+
content_hash: 'hash2',
|
|
65
48
|
});
|
|
66
49
|
});
|
|
67
|
-
test('updateCache inserts', async () => {
|
|
68
|
-
|
|
69
|
-
const
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
queries.executeTakeFirst.mockReturnValueOnce(undefined);
|
|
74
|
-
await cache.updateCache(db, file, hash);
|
|
75
|
-
expect(queries.set).toHaveBeenCalledWith({
|
|
76
|
-
content_hash: hash,
|
|
77
|
-
date_updated: expect.any(Number),
|
|
78
|
-
});
|
|
79
|
-
expect(queries.values).toHaveBeenCalledWith({
|
|
80
|
-
file_path: file,
|
|
81
|
-
content_hash: hash,
|
|
82
|
-
id,
|
|
50
|
+
test('updateCache inserts when entry does not exist', async () => {
|
|
51
|
+
await cache.updateCache(db, 'new.md', 'hash_new');
|
|
52
|
+
const result = await cache.getCache(db, 'new.md');
|
|
53
|
+
expect(result).toMatchObject({
|
|
54
|
+
file_path: 'new.md',
|
|
55
|
+
content_hash: 'hash_new',
|
|
83
56
|
});
|
|
84
|
-
expect(mocks.createId).toHaveBeenCalledOnce();
|
|
85
57
|
});
|
|
86
|
-
test('removeCache', async () => {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
await cache.
|
|
90
|
-
expect(
|
|
58
|
+
test('removeCache deletes by file_path', async () => {
|
|
59
|
+
await cache.addCache(db, 'book.md', 'hash1');
|
|
60
|
+
await cache.removeCache(db, 'book.md');
|
|
61
|
+
const result = await cache.getCache(db, 'book.md');
|
|
62
|
+
expect(result).toBeNull();
|
|
91
63
|
});
|
|
92
|
-
test('
|
|
93
|
-
|
|
64
|
+
test('clearCache deletes all entries', async () => {
|
|
65
|
+
await cache.addCache(db, 'a.md', 'hash_a');
|
|
66
|
+
await cache.addCache(db, 'b.md', 'hash_b');
|
|
94
67
|
await cache.clearCache(db);
|
|
95
|
-
|
|
68
|
+
const all = await cache.getCacheAll(db);
|
|
69
|
+
expect(all).toHaveLength(0);
|
|
96
70
|
});
|
|
97
71
|
});
|
|
98
72
|
//# sourceMappingURL=cache.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.test.js","sourceRoot":"","sources":["../../../src/pieces/cache.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"cache.test.js","sourceRoot":"","sources":["../../../src/pieces/cache.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,100 +1,103 @@
|
|
|
1
|
-
import { describe, expect, test,
|
|
2
|
-
import { mockKysely } from '../database/database.mock.js';
|
|
1
|
+
import { describe, expect, test, beforeEach, afterEach } from 'vitest';
|
|
3
2
|
import * as items from './items.js';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
import { setupDatabase, teardownDatabase } from '../../test/db.js';
|
|
4
|
+
let db;
|
|
5
|
+
beforeEach(async () => {
|
|
6
|
+
db = await setupDatabase();
|
|
7
|
+
});
|
|
8
|
+
afterEach(async () => {
|
|
9
|
+
await teardownDatabase(db);
|
|
10
|
+
});
|
|
11
|
+
const itemData = {
|
|
12
|
+
file_path: 'book.md',
|
|
13
|
+
type: 'books',
|
|
14
|
+
id: 'item1',
|
|
15
|
+
frontmatter_json: '{"title":"My Book"}',
|
|
16
|
+
note_markdown: '# My Book',
|
|
11
17
|
};
|
|
12
|
-
const spies = {};
|
|
13
18
|
describe('src/pieces/items.ts', () => {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
19
|
+
test('insertItem inserts and returns the item', async () => {
|
|
20
|
+
const result = await items.insertItem(db, itemData);
|
|
21
|
+
expect(result).toMatchObject({
|
|
22
|
+
file_path: 'book.md',
|
|
23
|
+
type: 'books',
|
|
24
|
+
note_markdown: '# My Book',
|
|
17
25
|
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
26
|
+
});
|
|
27
|
+
test('selectItem returns item by file_path', async () => {
|
|
28
|
+
await items.insertItem(db, itemData);
|
|
29
|
+
const result = await items.selectItem(db, 'book.md');
|
|
30
|
+
expect(result).toMatchObject({
|
|
31
|
+
file_path: 'book.md',
|
|
32
|
+
type: 'books',
|
|
21
33
|
});
|
|
22
34
|
});
|
|
23
|
-
test('selectItem', async () => {
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
await items.selectItem(kysely.db, file);
|
|
27
|
-
expect(kysely.db.selectFrom).toHaveBeenCalled();
|
|
28
|
-
expect(kysely.queries.where).toHaveBeenCalledWith('file_path', '=', file);
|
|
35
|
+
test('selectItem returns undefined when not found', async () => {
|
|
36
|
+
const result = await items.selectItem(db, 'missing.md');
|
|
37
|
+
expect(result).toBeUndefined();
|
|
29
38
|
});
|
|
30
|
-
test('updateItem', async () => {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
expect(kysely.db.updateTable).toHaveBeenCalled();
|
|
36
|
-
expect(kysely.queries.where).toHaveBeenCalledWith('file_path', '=', file);
|
|
39
|
+
test('updateItem updates by file_path', async () => {
|
|
40
|
+
await items.insertItem(db, itemData);
|
|
41
|
+
await items.updateItem(db, 'book.md', { note_markdown: '# Updated' });
|
|
42
|
+
const result = await items.selectItem(db, 'book.md');
|
|
43
|
+
expect(result.note_markdown).toBe('# Updated');
|
|
37
44
|
});
|
|
38
|
-
test('
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
id: 'one',
|
|
44
|
-
frontmatter_json: '',
|
|
45
|
-
note_markdown: '',
|
|
46
|
-
};
|
|
47
|
-
await items.insertItem(kysely.db, data);
|
|
48
|
-
expect(kysely.db.insertInto).toHaveBeenCalled();
|
|
49
|
-
expect(kysely.queries.values).toHaveBeenCalledWith(data);
|
|
45
|
+
test('selectItems returns all items', async () => {
|
|
46
|
+
await items.insertItem(db, itemData);
|
|
47
|
+
await items.insertItem(db, { ...itemData, file_path: 'film.md', type: 'films', id: 'item2' });
|
|
48
|
+
const result = await items.selectItems(db);
|
|
49
|
+
expect(result).toHaveLength(2);
|
|
50
50
|
});
|
|
51
|
-
test('selectItems', async () => {
|
|
52
|
-
|
|
53
|
-
await items.
|
|
54
|
-
|
|
55
|
-
expect(
|
|
56
|
-
expect(
|
|
51
|
+
test('selectItems filters by type', async () => {
|
|
52
|
+
await items.insertItem(db, itemData);
|
|
53
|
+
await items.insertItem(db, { ...itemData, file_path: 'film.md', type: 'films', id: 'item2' });
|
|
54
|
+
const result = await items.selectItems(db, { type: 'books' });
|
|
55
|
+
expect(result).toHaveLength(1);
|
|
56
|
+
expect(result[0].file_path).toBe('book.md');
|
|
57
57
|
});
|
|
58
|
-
test('selectItems
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
58
|
+
test('selectItems filters by asset', async () => {
|
|
59
|
+
await items.insertItem(db, {
|
|
60
|
+
...itemData,
|
|
61
|
+
assets_json_array: JSON.stringify(['poster.jpg', 'cover.png']),
|
|
62
|
+
});
|
|
63
|
+
await items.insertItem(db, { ...itemData, file_path: 'film.md', type: 'films', id: 'item2' });
|
|
64
|
+
const result = await items.selectItems(db, { asset: 'poster.jpg' });
|
|
65
|
+
expect(result).toHaveLength(1);
|
|
66
|
+
expect(result[0].file_path).toBe('book.md');
|
|
65
67
|
});
|
|
66
|
-
test('
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
68
|
+
test('selectItemAssets returns distinct assets across all items', async () => {
|
|
69
|
+
await items.insertItem(db, {
|
|
70
|
+
...itemData,
|
|
71
|
+
assets_json_array: JSON.stringify(['poster.jpg', 'cover.png']),
|
|
72
|
+
});
|
|
73
|
+
await items.insertItem(db, {
|
|
74
|
+
...itemData,
|
|
75
|
+
file_path: 'film.md',
|
|
76
|
+
type: 'films',
|
|
77
|
+
id: 'item2',
|
|
78
|
+
assets_json_array: JSON.stringify(['poster.jpg', 'trailer.mp4']),
|
|
79
|
+
});
|
|
80
|
+
const assets = await items.selectItemAssets(db);
|
|
81
|
+
expect(assets).toHaveLength(3);
|
|
82
|
+
expect(assets.sort()).toEqual(['cover.png', 'poster.jpg', 'trailer.mp4']);
|
|
73
83
|
});
|
|
74
|
-
test('selectItemAssets', async () => {
|
|
75
|
-
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
spies.executeQuery = vi
|
|
79
|
-
.spyOn(kysely.db, 'executeQuery')
|
|
80
|
-
.mockResolvedValue({ rows: [{ asset }] });
|
|
81
|
-
const assets = await items.selectItemAssets(kysely.db);
|
|
82
|
-
expect(kysely.db.executeQuery).toHaveBeenCalled();
|
|
83
|
-
expect(assets).toEqual([asset]);
|
|
84
|
+
test('selectItemAssets returns empty when no assets', async () => {
|
|
85
|
+
await items.insertItem(db, itemData);
|
|
86
|
+
const assets = await items.selectItemAssets(db);
|
|
87
|
+
expect(assets).toHaveLength(0);
|
|
84
88
|
});
|
|
85
|
-
test('deleteItem', async () => {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
await items.
|
|
89
|
-
expect(
|
|
90
|
-
expect(kysely.queries.where).toHaveBeenCalledWith('file_path', '=', file);
|
|
89
|
+
test('deleteItem removes by file_path', async () => {
|
|
90
|
+
await items.insertItem(db, itemData);
|
|
91
|
+
await items.deleteItem(db, 'book.md');
|
|
92
|
+
const result = await items.selectItem(db, 'book.md');
|
|
93
|
+
expect(result).toBeUndefined();
|
|
91
94
|
});
|
|
92
|
-
test('deleteItems', async () => {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
await items.deleteItems(
|
|
96
|
-
|
|
97
|
-
expect(
|
|
95
|
+
test('deleteItems removes multiple by file_path', async () => {
|
|
96
|
+
await items.insertItem(db, itemData);
|
|
97
|
+
await items.insertItem(db, { ...itemData, file_path: 'film.md', type: 'films', id: 'item2' });
|
|
98
|
+
await items.deleteItems(db, ['book.md', 'film.md']);
|
|
99
|
+
const result = await items.selectItems(db);
|
|
100
|
+
expect(result).toHaveLength(0);
|
|
98
101
|
});
|
|
99
102
|
});
|
|
100
103
|
//# sourceMappingURL=items.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"items.test.js","sourceRoot":"","sources":["../../../src/pieces/items.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"items.test.js","sourceRoot":"","sources":["../../../src/pieces/items.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AACtE,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAGlE,IAAI,EAAkB,CAAA;AAEtB,UAAU,CAAC,KAAK,IAAI,EAAE;IACrB,EAAE,GAAG,MAAM,aAAa,EAAE,CAAA;AAC3B,CAAC,CAAC,CAAA;AAEF,SAAS,CAAC,KAAK,IAAI,EAAE;IACpB,MAAM,gBAAgB,CAAC,EAAE,CAAC,CAAA;AAC3B,CAAC,CAAC,CAAA;AAEF,MAAM,QAAQ,GAAG;IAChB,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,OAAO;IACb,EAAE,EAAE,OAAO;IACX,gBAAgB,EAAE,qBAAqB;IACvC,aAAa,EAAE,WAAW;CAC1B,CAAA;AAED,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACpC,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAEnD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YAC5B,SAAS,EAAE,SAAS;YACpB,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,WAAW;SAC1B,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAEpC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QAEpD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YAC5B,SAAS,EAAE,SAAS;YACpB,IAAI,EAAE,OAAO;SACb,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA;QAEvD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAEpC,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,CAAA;QAErE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QACpD,MAAM,CAAC,MAAO,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACpC,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QAE7F,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAE1C,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACpC,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QAE7F,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;QAE7D,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC5C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE;YAC1B,GAAG,QAAQ;YACX,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;SAC9D,CAAC,CAAA;QACF,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QAE7F,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA;QAEnE,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC5C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE;YAC1B,GAAG,QAAQ;YACX,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;SAC9D,CAAC,CAAA;QACF,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE;YAC1B,GAAG,QAAQ;YACX,SAAS,EAAE,SAAS;YACpB,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,OAAO;YACX,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;SAChE,CAAC,CAAA;QAEF,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;QAE/C,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC,CAAA;IAC1E,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAEpC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;QAE/C,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAEpC,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QAErC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QACpD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACpC,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QAE7F,MAAM,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;QAEnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAC1C,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
@@ -1,72 +1,55 @@
|
|
|
1
|
-
import { describe, expect, test,
|
|
2
|
-
import { mockKysely } from '../database/database.mock.js';
|
|
1
|
+
import { describe, expect, test, beforeEach, afterEach } from 'vitest';
|
|
3
2
|
import * as manager from './manager.js';
|
|
4
3
|
import { makeSchema } from './Piece.fixtures.js';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
import { setupDatabase, teardownDatabase } from '../../test/db.js';
|
|
5
|
+
let db;
|
|
6
|
+
beforeEach(async () => {
|
|
7
|
+
db = await setupDatabase();
|
|
8
|
+
});
|
|
9
|
+
afterEach(async () => {
|
|
10
|
+
await teardownDatabase(db);
|
|
11
|
+
});
|
|
10
12
|
describe('src/pieces/manager.ts', () => {
|
|
11
|
-
|
|
12
|
-
Object.values(mocks).forEach((mock) => {
|
|
13
|
-
mock.mockReset();
|
|
14
|
-
});
|
|
15
|
-
Object.keys(spies).forEach((key) => {
|
|
16
|
-
spies[key].mockRestore();
|
|
17
|
-
delete spies[key];
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
test('addPiece', async () => {
|
|
21
|
-
const kysely = mockKysely();
|
|
13
|
+
test('addPiece inserts a managed piece', async () => {
|
|
22
14
|
const schema = makeSchema();
|
|
23
|
-
await manager.addPiece(
|
|
24
|
-
|
|
15
|
+
await manager.addPiece(db, 'books', schema);
|
|
16
|
+
const piece = await manager.getPiece(db, 'books');
|
|
17
|
+
expect(piece).toMatchObject({
|
|
18
|
+
name: 'books',
|
|
19
|
+
schema,
|
|
20
|
+
});
|
|
25
21
|
});
|
|
26
|
-
test('updatePiece', async () => {
|
|
27
|
-
const kysely = mockKysely();
|
|
22
|
+
test('updatePiece updates schema for existing piece', async () => {
|
|
28
23
|
const schema = makeSchema();
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
24
|
+
await manager.addPiece(db, 'books', schema);
|
|
25
|
+
const updated = makeSchema({ rating: { type: 'number', nullable: true } });
|
|
26
|
+
await manager.updatePiece(db, 'books', updated);
|
|
27
|
+
const piece = await manager.getPiece(db, 'books');
|
|
28
|
+
expect(piece.schema).toEqual(updated);
|
|
33
29
|
});
|
|
34
|
-
test('getPiece', async () => {
|
|
35
|
-
const kysely = mockKysely();
|
|
36
|
-
const name = 'name';
|
|
30
|
+
test('getPiece returns piece with parsed schema', async () => {
|
|
37
31
|
const schema = makeSchema();
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
const piece = await manager.getPiece(kysely.db, name);
|
|
44
|
-
expect(piece).toEqual({
|
|
45
|
-
...managedPiece,
|
|
46
|
-
schema,
|
|
47
|
-
});
|
|
32
|
+
await manager.addPiece(db, 'books', schema);
|
|
33
|
+
const piece = await manager.getPiece(db, 'books');
|
|
34
|
+
expect(piece).not.toBeNull();
|
|
35
|
+
expect(piece.name).toBe('books');
|
|
36
|
+
expect(piece.schema).toEqual(schema);
|
|
48
37
|
});
|
|
49
|
-
test('getPiece returns null', async () => {
|
|
50
|
-
const
|
|
51
|
-
const name = 'name';
|
|
52
|
-
kysely.queries.executeTakeFirst.mockResolvedValueOnce(undefined);
|
|
53
|
-
const piece = await manager.getPiece(kysely.db, name);
|
|
38
|
+
test('getPiece returns null when not found', async () => {
|
|
39
|
+
const piece = await manager.getPiece(db, 'missing');
|
|
54
40
|
expect(piece).toBeNull();
|
|
55
41
|
});
|
|
56
|
-
test('getPieces', async () => {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
expect(kysely.db.selectFrom).toHaveBeenCalled();
|
|
62
|
-
expect(pieces).toEqual(managedPieces);
|
|
42
|
+
test('getPieces returns all managed pieces', async () => {
|
|
43
|
+
await manager.addPiece(db, 'books', makeSchema());
|
|
44
|
+
await manager.addPiece(db, 'films', makeSchema());
|
|
45
|
+
const pieces = await manager.getPieces(db);
|
|
46
|
+
expect(pieces).toHaveLength(2);
|
|
63
47
|
});
|
|
64
|
-
test('deletePiece', async () => {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
await manager.
|
|
68
|
-
expect(
|
|
69
|
-
expect(kysely.queries.where).toHaveBeenCalledWith('name', '=', name);
|
|
48
|
+
test('deletePiece removes by name', async () => {
|
|
49
|
+
await manager.addPiece(db, 'books', makeSchema());
|
|
50
|
+
await manager.deletePiece(db, 'books');
|
|
51
|
+
const piece = await manager.getPiece(db, 'books');
|
|
52
|
+
expect(piece).toBeNull();
|
|
70
53
|
});
|
|
71
54
|
});
|
|
72
55
|
//# sourceMappingURL=manager.test.js.map
|