@@ -0,0 +1,76 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
import { ViewFolder, ViewMediaType } from '../../src/view/item';
|
||||
import { ViewItemClassifier } from '../../src/view/item-classifier';
|
||||
import { createFolder, TestViewMedia } from '../test-utils';
|
||||
|
||||
describe('ViewItemClassifier', () => {
|
||||
it('isMedia', () => {
|
||||
expect(ViewItemClassifier.isMedia(new TestViewMedia())).toBe(true);
|
||||
expect(ViewItemClassifier.isMedia(new ViewFolder(createFolder()))).toBe(false);
|
||||
});
|
||||
|
||||
it('isFolder', () => {
|
||||
expect(ViewItemClassifier.isFolder(new ViewFolder(createFolder()))).toBe(true);
|
||||
expect(ViewItemClassifier.isFolder(new TestViewMedia())).toBe(false);
|
||||
});
|
||||
|
||||
describe('isEvent', () => {
|
||||
it.each([
|
||||
[ViewMediaType.Clip as const, true],
|
||||
[ViewMediaType.Snapshot as const, true],
|
||||
[ViewMediaType.Recording as const, false],
|
||||
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
||||
expect(
|
||||
ViewItemClassifier.isEvent(new TestViewMedia({ mediaType: mediaType })),
|
||||
).toBe(expectedResult);
|
||||
});
|
||||
});
|
||||
|
||||
describe('isRecording', () => {
|
||||
it.each([
|
||||
[ViewMediaType.Clip as const, false],
|
||||
[ViewMediaType.Snapshot as const, false],
|
||||
[ViewMediaType.Recording as const, true],
|
||||
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
||||
expect(
|
||||
ViewItemClassifier.isRecording(new TestViewMedia({ mediaType: mediaType })),
|
||||
).toBe(expectedResult);
|
||||
});
|
||||
});
|
||||
|
||||
describe('isClip', () => {
|
||||
it.each([
|
||||
[ViewMediaType.Clip as const, true],
|
||||
[ViewMediaType.Snapshot as const, false],
|
||||
[ViewMediaType.Recording as const, false],
|
||||
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
||||
expect(
|
||||
ViewItemClassifier.isClip(new TestViewMedia({ mediaType: mediaType })),
|
||||
).toBe(expectedResult);
|
||||
});
|
||||
});
|
||||
|
||||
describe('isSnapshot', () => {
|
||||
it.each([
|
||||
[ViewMediaType.Clip as const, false],
|
||||
[ViewMediaType.Snapshot as const, true],
|
||||
[ViewMediaType.Recording as const, false],
|
||||
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
||||
expect(
|
||||
ViewItemClassifier.isSnapshot(new TestViewMedia({ mediaType: mediaType })),
|
||||
).toBe(expectedResult);
|
||||
});
|
||||
});
|
||||
|
||||
describe('isVideo', () => {
|
||||
it.each([
|
||||
[ViewMediaType.Clip as const, true],
|
||||
[ViewMediaType.Snapshot as const, false],
|
||||
[ViewMediaType.Recording as const, true],
|
||||
])('%s', (mediaType: ViewMediaType, expectedResult: boolean) => {
|
||||
expect(
|
||||
ViewItemClassifier.isVideo(new TestViewMedia({ mediaType: mediaType })),
|
||||
).toBe(expectedResult);
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user