67 lines
2.0 KiB
TypeScript
67 lines
2.0 KiB
TypeScript
import { describe, expect, it } from 'vitest';
|
|
import { ViewMediaType } from '../../src/view/media';
|
|
import { ViewMediaClassifier } from '../../src/view/media-classifier';
|
|
import { TestViewMedia } from '../test-utils';
|
|
|
|
describe('ViewMediaClassifier', () => {
|
|
describe('isEvent', () => {
|
|
it.each([
|
|
['clip' as const, true],
|
|
['snapshot' as const, true],
|
|
['recording' as const, false],
|
|
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
|
expect(
|
|
ViewMediaClassifier.isEvent(new TestViewMedia({ mediaType: mediaType })),
|
|
).toBe(expectedResult);
|
|
});
|
|
});
|
|
|
|
describe('isRecording', () => {
|
|
it.each([
|
|
['clip' as const, false],
|
|
['snapshot' as const, false],
|
|
['recording' as const, true],
|
|
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
|
expect(
|
|
ViewMediaClassifier.isRecording(new TestViewMedia({ mediaType: mediaType })),
|
|
).toBe(expectedResult);
|
|
});
|
|
});
|
|
|
|
describe('isClip', () => {
|
|
it.each([
|
|
['clip' as const, true],
|
|
['snapshot' as const, false],
|
|
['recording' as const, false],
|
|
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
|
expect(
|
|
ViewMediaClassifier.isClip(new TestViewMedia({ mediaType: mediaType })),
|
|
).toBe(expectedResult);
|
|
});
|
|
});
|
|
|
|
describe('isSnapshot', () => {
|
|
it.each([
|
|
['clip' as const, false],
|
|
['snapshot' as const, true],
|
|
['recording' as const, false],
|
|
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
|
expect(
|
|
ViewMediaClassifier.isSnapshot(new TestViewMedia({ mediaType: mediaType })),
|
|
).toBe(expectedResult);
|
|
});
|
|
});
|
|
|
|
describe('isVideo', () => {
|
|
it.each([
|
|
['clip' as const, true],
|
|
['snapshot' as const, false],
|
|
['recording' as const, true],
|
|
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
|
expect(
|
|
ViewMediaClassifier.isVideo(new TestViewMedia({ mediaType: mediaType })),
|
|
).toBe(expectedResult);
|
|
});
|
|
});
|
|
});
|