Skip to content

Commit 7284de2

Browse files
committed
Fixes with implementation from tests
1 parent 0c37a56 commit 7284de2

File tree

7 files changed

+21
-32
lines changed

7 files changed

+21
-32
lines changed

src/dependencies.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,10 +42,8 @@ export type Dependencies = {
4242
getCachedSheetData: () => TE.TaskEither<
4343
FailureWithStatus,
4444
ReadonlyArray<{
45-
cache_entry_id: string;
46-
cached_timestamp: Date;
45+
cached_at: Date;
4746
sheet_id: string;
48-
equipment_id: string;
4947
cached_data: t.Validation<
5048
ReadonlyArray<
5149
| EventOfType<'EquipmentTrainingQuizResult'>

src/init-dependencies/google/cached-data-table.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,8 @@ import * as tt from 'io-ts-types';
44
export const CachedDataTable = t.strict({
55
rows: t.readonlyArray(
66
t.strict({
7-
cache_entry_id: t.string,
8-
cached_timestamp: tt.DateFromNumber,
7+
cached_at: tt.DateFromNumber,
98
sheet_id: t.string,
10-
equipment_id: t.string,
119
cached_data: t.string,
1210
})
1311
),

src/init-dependencies/google/ensure-cached-sheet-data-table-exists.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ export const ensureCachedSheetDataTableExists = (dbClient: Client) =>
88
dbClient.execute(`
99
CREATE TABLE IF NOT EXISTS cached_sheet_data (
1010
sheet_id TEXT PRIMARY KEY,
11-
cache_timestamp timestamp,
11+
cached_at timestamp,
1212
cached_data TEXT
1313
);
1414
`),

src/init-dependencies/google/get-cached-sheet-data.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -84,16 +84,16 @@ export const cacheSheetData =
8484
dbClient
8585
.execute({
8686
sql: `
87-
INSERT INTO cached_sheet_data (cache_timestamp, sheet_id, cached_data)
88-
VALUES ($cacheTimestamp, $sheetId, $cachedData)
87+
INSERT INTO cached_sheet_data (cached_at, sheet_id, cached_data)
88+
VALUES ($cachedAt, $sheetId, $cachedData)
8989
ON CONFLICT (sheet_id) DO UPDATE SET
90-
cache_timestamp = excluded.cache_timestamp,
90+
cached_at = excluded.cached_at,
9191
cached_data = excluded.cached_data;
9292
`,
9393
args: {
94-
cacheTimestamp,
94+
cachedAt: cacheTimestamp,
9595
sheetId,
96-
data: JSON.stringify(data),
96+
cachedData: JSON.stringify(data),
9797
},
9898
})
9999
.then(() => {}),

src/load-cached-sheet-data.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,16 @@ export const loadCachedSheetData = async (
2424
events.right.forEach(cachedSheetData => {
2525
if (E.isLeft(cachedSheetData.cached_data)) {
2626
logger.info(
27-
'Failed to load events for sheet %s, equipment %s generated at %s, skipping...',
27+
'Failed to load events for sheet %s cached at %s, skipping...',
2828
cachedSheetData.sheet_id,
29-
cachedSheetData.equipment_id,
30-
cachedSheetData.cached_timestamp.toISOString()
29+
cachedSheetData.cached_at.toISOString()
3130
);
3231
} else {
3332
logger.info(
34-
'Loaded % events for sheet %s, equipment %s generated at %s',
33+
'Loaded % events for sheet %s, cached at %s',
3534
cachedSheetData.cached_data.right.length,
3635
cachedSheetData.sheet_id,
37-
cachedSheetData.equipment_id,
38-
cachedSheetData.cached_timestamp.toISOString()
36+
cachedSheetData.cached_at.toISOString()
3937
);
4038
cachedSheetData.cached_data.right.forEach(updateState);
4139
}

tests/init-dependencies/happy-path-adapters.helper.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import {initSharedReadModel} from '../../src/read-models/shared-state';
99
import * as libsqlClient from '@libsql/client';
1010
import {localGoogleHelpers} from './pull-local-google';
1111

12-
export const cacheSheetData = (
12+
const cacheSheetData = (
1313
_cacheTimestamp: Date,
1414
_sheetId: string,
1515
_data: ReadonlyArray<

tests/training-sheets/cached-sheet-data.test.ts

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,8 @@ describe('Cache sheet data', () => {
1717
const sheetId = 'myTestingSheetId';
1818
const cacheTimestamp = new Date(2024, 1, 23, 4, 23, 45);
1919
let cachedData: ReadonlyArray<{
20-
cache_entry_id: string;
21-
cached_timestamp: Date;
20+
cached_at: Date;
2221
sheet_id: string;
23-
equipment_id: string;
2422
cached_data: t.Validation<
2523
ReadonlyArray<
2624
| EventOfType<'EquipmentTrainingQuizResult'>
@@ -49,20 +47,17 @@ describe('Cache sheet data', () => {
4947
}),
5048
])()
5149
);
52-
console.log(await db.execute('SELECT * FROM cached_sheet_data'));
53-
5450
cachedData = getRightOrFail(await getCachedSheetData(db)()());
5551
});
5652
it('Each sheet is cached', () => {
5753
expect(cachedData).toHaveLength(1); // 1 sheet
5854
});
59-
// it('All events cached are returned', () => {
60-
// expect(getRightOrFail(cachedData[0].cached_data)).toHaveLength(2); // 2 events.
61-
// });
62-
// it('Event cache is correctly labeled', () => {
63-
// expect(cachedData[0].equipment_id).toStrictEqual(equipmentId);
64-
// expect(cachedData[0].sheet_id).toStrictEqual(sheetId);
65-
// expect(cachedData[0].cached_timestamp).toStrictEqual(cacheTimestamp);
66-
// });
55+
it('All events cached are returned', () => {
56+
expect(getRightOrFail(cachedData[0].cached_data)).toHaveLength(2); // 2 events.
57+
});
58+
it('Event cache is correctly labeled', () => {
59+
expect(cachedData[0].sheet_id).toStrictEqual(sheetId);
60+
expect(cachedData[0].cached_at).toStrictEqual(cacheTimestamp);
61+
});
6762
});
6863
});

0 commit comments

Comments
 (0)