66 lines
1.5 KiB
TypeScript
66 lines
1.5 KiB
TypeScript
import {
|
|
isNibbleDisk,
|
|
isNibbleDiskFormat,
|
|
isBlockDiskFormat,
|
|
isWozDisk,
|
|
DiskFormat,
|
|
NibbleDisk,
|
|
WozDisk,
|
|
} from 'js/formats/types';
|
|
|
|
const nibbleDisk = {
|
|
encoding: 'nibble'
|
|
} as NibbleDisk;
|
|
|
|
const wozDisk = {
|
|
encoding: 'bitstream'
|
|
} as WozDisk;
|
|
|
|
describe('Format types', () => {
|
|
describe('isNibbleDisk', () => {
|
|
it.each([
|
|
[nibbleDisk, true],
|
|
[wozDisk, false],
|
|
])('%s is %s', (disk, value) => {
|
|
expect(isNibbleDisk(disk)).toEqual(value);
|
|
});
|
|
});
|
|
|
|
describe('isNibbleDiskFormat', () => {
|
|
it.each([
|
|
['2mg', true],
|
|
['d13', true],
|
|
['do', true],
|
|
['dsk', true],
|
|
['po', true],
|
|
['nib', true],
|
|
['hdv', false],
|
|
])('%s is %s', (fmt, val) => {
|
|
expect(isNibbleDiskFormat(fmt as DiskFormat)).toEqual(val);
|
|
});
|
|
});
|
|
|
|
describe('isBlockDiskFormat', () => {
|
|
it.each([
|
|
['2mg', true],
|
|
['d13', false],
|
|
['do', false],
|
|
['dsk', false],
|
|
['po', true],
|
|
['nib', false],
|
|
['hdv', true],
|
|
])('%s is %s', (fmt, val) => {
|
|
expect(isBlockDiskFormat(fmt as DiskFormat)).toEqual(val);
|
|
});
|
|
});
|
|
|
|
describe('isWozDisk', () => {
|
|
it.each([
|
|
[nibbleDisk, false],
|
|
[wozDisk, true],
|
|
])('%s is %s', (disk, value) => {
|
|
expect(isWozDisk(disk)).toEqual(value);
|
|
});
|
|
});
|
|
});
|