mirror of
https://github.com/whscullin/apple2js.git
synced 2024-01-12 14:14:38 +00:00
72ecce113a
* Adds an initial test for DOS format (.do) files * Fix physical sector order when nibblizing DOS 3.3 ordered images Before, when `.dsk` or `.do` images were nibblized, the resulting track had the sectors in the wrong physical layout. Now the nibblized track has the correct physical layout (all sectors in order) which results in the correct DOS 3.3 layout as well. There is also a test that verifies the order. * Add another test for a non-zero sector The new test checks that the values in physical sector 1 are those for DOS sector 7. * Add test for all physical sectors on all tracks This change also removes a few stray console.log calls in the test.
88 lines
2.6 KiB
TypeScript
88 lines
2.6 KiB
TypeScript
import { BYTES_BY_SECTOR, BYTES_BY_TRACK, BYTES_IN_ORDER } from './16sector';
|
|
|
|
describe('BYTES_IN_ORDER', () => {
|
|
it('has the correct bytes in track 0, sector 0, byte 0 and byte 1', () => {
|
|
const disk = BYTES_IN_ORDER;
|
|
expect(disk[0][0][0]).toBe(0);
|
|
expect(disk[0][0][1]).toBe(1);
|
|
});
|
|
|
|
it('has the correct bytes in track 0, sector 0', () => {
|
|
const disk = BYTES_IN_ORDER;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[0][0][i]).toBe(i);
|
|
}
|
|
});
|
|
|
|
it('has the correct bytes in track 1, sector 0', () => {
|
|
const disk = BYTES_IN_ORDER;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[1][0][i]).toBe(i);
|
|
}
|
|
});
|
|
|
|
it('has the correct bytes in track 30, sector 11', () => {
|
|
const disk = BYTES_IN_ORDER;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[30][11][i]).toBe(i);
|
|
}
|
|
});
|
|
});
|
|
|
|
describe('BYTES_BY_SECTOR', () => {
|
|
it('has the correct bytes in track 0, sector 0, byte 0 and byte 1', () => {
|
|
const disk = BYTES_BY_SECTOR;
|
|
expect(disk[0][0][0]).toBe(0);
|
|
expect(disk[0][0][1]).toBe(0);
|
|
});
|
|
|
|
it('has the correct bytes in track 0, sector 0', () => {
|
|
const disk = BYTES_BY_SECTOR;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[0][0][i]).toBe(0);
|
|
}
|
|
});
|
|
|
|
it('has the correct bytes in track 1, sector 0', () => {
|
|
const disk = BYTES_BY_SECTOR;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[1][0][i]).toBe(0);
|
|
}
|
|
});
|
|
|
|
it('has the correct bytes in track 30, sector 11', () => {
|
|
const disk = BYTES_BY_SECTOR;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[30][11][i]).toBe(11);
|
|
}
|
|
});
|
|
});
|
|
|
|
describe('BYTES_BY_TRACK', () => {
|
|
it('has the correct bytes in track 0, sector 0, byte 0 and byte 1', () => {
|
|
const disk = BYTES_BY_TRACK;
|
|
expect(disk[0][0][0]).toBe(0);
|
|
expect(disk[0][0][1]).toBe(0);
|
|
});
|
|
|
|
it('has the correct bytes in track 0, sector 0', () => {
|
|
const disk = BYTES_BY_TRACK;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[0][0][i]).toBe(0);
|
|
}
|
|
});
|
|
|
|
it('has the correct bytes in track 1, sector 0', () => {
|
|
const disk = BYTES_BY_TRACK;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[1][0][i]).toBe(1);
|
|
}
|
|
});
|
|
|
|
it('has the correct bytes in track 30, sector 11', () => {
|
|
const disk = BYTES_BY_TRACK;
|
|
for (let i = 0; i < 256; i++) {
|
|
expect(disk[30][11][i]).toBe(30);
|
|
}
|
|
});
|
|
}); |