Allow camera capabilities to be configured.

This commit is contained in:
Dermot Duffy
2024-03-26 21:00:15 -07:00
parent 0c7260d95a
commit 95c44adcf1
63 changed files with 2308 additions and 1447 deletions
@@ -0,0 +1,46 @@
import { describe, expect, it, vi } from 'vitest';
import { convertRangeToCacheFriendlyTimes } from '../../../src/camera-manager/utils/range-to-cache-friendly';
describe('convertRangeToCacheFriendlyTimes', () => {
it('should return cache friendly within hour range', () => {
expect(
convertRangeToCacheFriendlyTimes({
start: new Date('2023-04-29T14:01:02'),
end: new Date('2023-04-29T14:11:03'),
}),
).toEqual({
start: new Date('2023-04-29T14:00:00'),
end: new Date('2023-04-29T14:59:59.999'),
});
});
it('should return cache friendly within day range', () => {
expect(
convertRangeToCacheFriendlyTimes({
start: new Date('2023-04-29T14:01:02'),
end: new Date('2023-04-29T15:11:03'),
}),
).toEqual({
start: new Date('2023-04-29T00:00:00'),
end: new Date('2023-04-29T23:59:59.999'),
});
});
it('should cap end date', () => {
vi.useFakeTimers();
vi.setSystemTime(new Date('2023-04-29T14:25'));
expect(
convertRangeToCacheFriendlyTimes(
{
start: new Date('2023-04-29T14:01:02'),
end: new Date('2023-04-29T14:11:03'),
},
{ endCap: true },
),
).toEqual({
start: new Date('2023-04-29T14:00:00'),
end: new Date('2023-04-29T14:25:59.999'),
});
vi.useRealTimers();
});
});