From 1734e5ae69329bd2a3f23170f8470ba3dd703adb Mon Sep 17 00:00:00 2001 From: Dermot Duffy Date: Wed, 5 Apr 2023 18:25:53 -0700 Subject: [PATCH] Fix size call. --- .vscode/settings.json | 2 +- src/camera-manager/cache.ts | 8 ++++++-- src/camera-manager/frigate/engine-frigate.ts | 2 +- tests/camera-manager/cache.test.ts | 10 ++++------ 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 22489f0f..31c57af5 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,5 +5,5 @@ "i18n-ally.keepFulfilled": true, "i18n-ally.editor.preferEditor": true, "i18n-ally.translate.saveAsCandidates": true, - "vitest.commandLine": "npx vitest --root /home/dizer/src/frigate-hass-card" + "vitest.commandLine": "npx vitest --root ." } diff --git a/src/camera-manager/cache.ts b/src/camera-manager/cache.ts index 16e6a910..7607aef7 100644 --- a/src/camera-manager/cache.ts +++ b/src/camera-manager/cache.ts @@ -107,6 +107,10 @@ class MemoryRangedCache { return output; } + public getSize(): number { + return this._data.length; + } + /** * Remove old data that matches a given predicate. No change to the covered * ranges is made, i.e. this is asserting authoritiatively that this data does @@ -146,8 +150,8 @@ export class RecordingSegmentsCache { return this._segments.get(cameraID)?.get(range) ?? null; } - public getCache(cameraID: string): MemoryRangedCache | null { - return this._segments.get(cameraID) ?? null; + public getSize(cameraID: string): number | null { + return this._segments.get(cameraID)?.getSize() ?? null; } public getCameraIDs(): string[] { diff --git a/src/camera-manager/frigate/engine-frigate.ts b/src/camera-manager/frigate/engine-frigate.ts index 8000cb64..b501cbbf 100644 --- a/src/camera-manager/frigate/engine-frigate.ts +++ b/src/camera-manager/frigate/engine-frigate.ts @@ -990,7 +990,7 @@ export class FrigateCameraManagerEngine const countSegments = () => sum( cameraIDs.map( - (cameraID) => this._recordingSegmentsCache.getCache(cameraID)?.size() ?? 0, + (cameraID) => this._recordingSegmentsCache.getSize(cameraID) ?? 0, ), ); const segmentsStart = countSegments(); diff --git a/tests/camera-manager/cache.test.ts b/tests/camera-manager/cache.test.ts index 6a4786c1..70889913 100644 --- a/tests/camera-manager/cache.test.ts +++ b/tests/camera-manager/cache.test.ts @@ -112,15 +112,13 @@ describe('RecordingSegmentsCache', () => { expect(cache.hasCoverage('camera-1', range)).toBeFalsy(); }); - it('should return internal cache', () => { + it('should get size', () => { cache.add('camera-1', range, segments); - const internalCache = cache.getCache('camera-1'); - expect(internalCache).toBeTruthy(); - expect(internalCache?.get(range)).toEqual(segments); + expect(cache.getSize("camera-1")).toBe(3); }); - it('should not return internal cache for wrong camera', () => { + it('should not size for other camera', () => { cache.add('camera-1', range, segments); - expect(cache.getCache('camera-2')).toBeNull(); + expect(cache.getSize("camera-2")).toBeNull(); }); it('should return cameraIDs', () => {