From 274e3dfa62131a3ca77e62f46eb7e75e07e20695 Mon Sep 17 00:00:00 2001 From: Natalia Portillo Date: Tue, 2 Mar 2021 02:59:20 +0000 Subject: [PATCH] Use struct to define all expected data for media image format tests. --- Aaru.Tests/Images/2MG.cs | 317 +- Aaru.Tests/Images/AaruFormat/Tape/V1.cs | 1583 ++- Aaru.Tests/Images/AaruFormat/V1.cs | 2709 +++--- Aaru.Tests/Images/Alcohol120.cs | 3750 ++++---- Aaru.Tests/Images/Anex86.cs | 124 +- Aaru.Tests/Images/AppleDOS/DOS.cs | 162 +- Aaru.Tests/Images/AppleDOS/DOS32.cs | 41 +- Aaru.Tests/Images/AppleDOS/ProDOS.cs | 222 +- Aaru.Tests/Images/AppleNIB.cs | 101 +- Aaru.Tests/Images/Apridisk.cs | 97 +- Aaru.Tests/Images/BaseMediaImageTest.cs | 10 + Aaru.Tests/Images/BlindWrite4.cs | 2130 +++-- Aaru.Tests/Images/BlindWrite5.cs | 2252 +++-- Aaru.Tests/Images/BlindWrite6.cs | 956 +- Aaru.Tests/Images/BlindWrite7.cs | 250 +- Aaru.Tests/Images/BlockMediaImageTest.cs | 47 +- Aaru.Tests/Images/CDRWin.cs | 2116 +++-- Aaru.Tests/Images/CDRWin10.cs | 452 +- Aaru.Tests/Images/CPCDSK.cs | 287 +- Aaru.Tests/Images/CisCopy/Uncompressed.cs | 213 +- Aaru.Tests/Images/CloneCD.cs | 2981 +++--- Aaru.Tests/Images/Commodore64/D64.cs | 37 +- Aaru.Tests/Images/Commodore64/D81.cs | 37 +- Aaru.Tests/Images/CopyQM.cs | 4057 ++++---- Aaru.Tests/Images/CopyTape.cs | 1541 ++- Aaru.Tests/Images/D88.cs | 199 +- Aaru.Tests/Images/DART.cs | 97 +- Aaru.Tests/Images/DiscJuggler.cs | 3460 +++---- Aaru.Tests/Images/DiskCopy42.cs | 201 +- Aaru.Tests/Images/DiskCopy633/DiskCopy42.cs | 142 +- Aaru.Tests/Images/DiskCopy633/NDIF/ROCo.cs | 390 +- Aaru.Tests/Images/DiskCopy633/NDIF/RdWr.cs | 202 +- Aaru.Tests/Images/DiskCopy633/NDIF/Rdxx.cs | 207 +- Aaru.Tests/Images/DiskCopy65/UDCO.cs | 203 +- Aaru.Tests/Images/DiskCopy65/UDCo_obsolete.cs | 203 +- Aaru.Tests/Images/DiskCopy65/UDRO.cs | 203 +- Aaru.Tests/Images/DiskCopy65/UDRo_obsolete.cs | 203 +- .../Images/DiskImagesFramework/DiskCopy42.cs | 202 +- .../Images/DiskImagesFramework/NDIF/ROCo.cs | 343 +- .../Images/DiskImagesFramework/NDIF/RdWr.cs | 343 +- .../Images/DiskImagesFramework/NDIF/Rdxx.cs | 343 +- .../Images/DiskImagesFramework/UDIF/IPOD.cs | 364 +- .../Images/DiskImagesFramework/UDIF/UDBZ.cs | 364 +- .../Images/DiskImagesFramework/UDIF/UDCO.cs | 364 +- .../Images/DiskImagesFramework/UDIF/UDRO.cs | 364 +- .../Images/DiskImagesFramework/UDIF/UDRW.cs | 363 +- .../Images/DiskImagesFramework/UDIF/UDTO.cs | 363 +- .../Images/DiskImagesFramework/UDIF/UDZO.cs | 364 +- .../Images/DiskImagesFramework/UDIF/UFBI.cs | 364 +- .../Images/DiskImagesFramework/UDIF/ULMO.cs | 364 +- Aaru.Tests/Images/DiskUtilities/ImageDisk.cs | 101 +- Aaru.Tests/Images/DiskUtilities/Raw.cs | 158 +- Aaru.Tests/Images/DriDiskCopy.cs | 3821 +++----- Aaru.Tests/Images/GameJack6.cs | 957 +- Aaru.Tests/Images/HDCopy.cs | 1818 ++-- Aaru.Tests/Images/HxC/ImageDisk.cs | 546 +- Aaru.Tests/Images/HxC/Raw.cs | 566 +- Aaru.Tests/Images/HyperV.cs | 182 +- Aaru.Tests/Images/ImageDisk.cs | 5152 ++++------ Aaru.Tests/Images/IsoBuster/Cuesheet.cs | 1677 ++-- Aaru.Tests/Images/KryoFlux/Raw.cs | 142 +- Aaru.Tests/Images/Lisa/Raw.cs | 142 +- Aaru.Tests/Images/MAME/v1.cs | 37 +- Aaru.Tests/Images/MAME/v3.cs | 1303 +-- Aaru.Tests/Images/MAME/v4.cs | 1976 ++-- Aaru.Tests/Images/MAME/v5/compressed.cs | 1976 ++-- Aaru.Tests/Images/MAME/v5/uncompressed.cs | 1976 ++-- Aaru.Tests/Images/MagicISO/Cuesheet.cs | 1289 +-- Aaru.Tests/Images/MagicISO/Nero.cs | 1411 +-- Aaru.Tests/Images/MaxiDisk.cs | 303 +- Aaru.Tests/Images/NHDr0.cs | 162 +- Aaru.Tests/Images/Nero/V1.cs | 3713 ++++---- Aaru.Tests/Images/Nero/V2.cs | 8459 +++++++---------- Aaru.Tests/Images/OpticalMediaImageTest.cs | 74 +- Aaru.Tests/Images/PowerISO/Cuesheet.cs | 1086 ++- Aaru.Tests/Images/QEMU/HyperV.cs | 41 +- Aaru.Tests/Images/QEMU/Parallels.cs | 41 +- Aaru.Tests/Images/QEMU/QCOW.cs | 41 +- Aaru.Tests/Images/QEMU/QCOW2.cs | 61 +- Aaru.Tests/Images/QEMU/QCOW3.cs | 61 +- Aaru.Tests/Images/QEMU/QED.cs | 41 +- Aaru.Tests/Images/QEMU/Raw.cs | 41 +- Aaru.Tests/Images/QEMU/VMware5.cs | 41 +- Aaru.Tests/Images/QEMU/VMware6.cs | 41 +- Aaru.Tests/Images/QEMU/VirtualBox.cs | 41 +- Aaru.Tests/Images/QEMU/VirtualPC.cs | 81 +- Aaru.Tests/Images/RayDIM.cs | 4345 ++++----- Aaru.Tests/Images/RsIde.cs | 41 +- Aaru.Tests/Images/SaveDskF.cs | 2444 ++--- Aaru.Tests/Images/ShrinkWrap/DiskCopy42.cs | 142 +- Aaru.Tests/Images/ShrinkWrap/DiskDup.cs | 222 +- Aaru.Tests/Images/ShrinkWrap/NDIF/ROCo.cs | 222 +- Aaru.Tests/Images/ShrinkWrap/NDIF/RdWr.cs | 222 +- Aaru.Tests/Images/ShrinkWrap/NDIF/Rdxx.cs | 222 +- Aaru.Tests/Images/ShrinkWrap/Raw.cs | 222 +- Aaru.Tests/Images/TapeMediaImageTest.cs | 53 +- Aaru.Tests/Images/TeleDisk.cs | 1185 +-- Aaru.Tests/Images/Toast.cs | 1188 +-- Aaru.Tests/Images/UltraISO/Alcohol.cs | 1137 ++- Aaru.Tests/Images/UltraISO/CloneCD.cs | 953 +- Aaru.Tests/Images/UltraISO/Cuesheet.cs | 1150 ++- Aaru.Tests/Images/UltraISO/Nero.cs | 1158 ++- Aaru.Tests/Images/Virtual98.cs | 162 +- Aaru.Tests/Images/VirtualBox/VirtualPC.cs | 143 +- Aaru.Tests/Images/VirtualPC/Raw.cs | 122 +- Aaru.Tests/Images/VirtualPC/VirtualPC.cs | 278 +- Aaru.Tests/Images/partclone.cs | 121 +- Aaru.Tests/Images/pce/DiskCopy42.cs | 81 +- Aaru.Tests/Images/pce/ImageDisk.cs | 505 +- Aaru.Tests/Images/pce/TeleDisk.cs | 521 +- Aaru.Tests/Images/pce/XDF.cs | 61 +- Aaru.Tests/Images/pce/raw.cs | 566 +- Aaru.Tests/Structs.cs | 28 + 113 files changed, 42336 insertions(+), 51403 deletions(-) create mode 100644 Aaru.Tests/Images/BaseMediaImageTest.cs diff --git a/Aaru.Tests/Images/2MG.cs b/Aaru.Tests/Images/2MG.cs index ead624fdf..faa341252 100644 --- a/Aaru.Tests/Images/2MG.cs +++ b/Aaru.Tests/Images/2MG.cs @@ -36,56 +36,275 @@ namespace Aaru.Tests.Images [TestFixture] public class Apple2Mg : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "blank140.2mg.lz", "dos32.2mg.lz", "dos32_alt.2mg.lz", "dos33_dic.2mg.lz", "dos33-do.2mg.lz", - "dos33-nib.2mg.lz", "dos33_nib.2mg.lz", "dos33-po.2mg.lz", "dos33_po.2mg.lz", "hfs1440.2mg.lz", - "hfs800_dic.2mg.lz", "hfs_do.2mg.lz", "hfs_po.2mg.lz", "modified_do.2mg.lz", "modified_po.2mg.lz", - "pascal800_do.2mg.lz", "pascal800_p.2mg.lz", "pascal_dic.2mg.lz", "pascal_do.2mg.lz", "pascal_nib.2mg.lz", - "pascal_po.2mg.lz", "prodos1440.2mg.lz", "prodos1440_po.2mg.lz", "prodos5mb.2mg.lz", "prodos5m_dic.2mg.lz", - "prodos800_dic.2mg.lz", "prodos800_do.2mg.lz", "prodos800_po.2mg.lz", "prodos_dic.2mg.lz", - "prodos_do.2mg.lz", "prodos_nib.2mg.lz", "prodos_po.2mg.lz", "prodos.2mg.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - 560, 455, 455, 560, 560, 560, 560, 560, 560, 2880, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 560, 560, 560, - 560, 2880, 2880, 10240, 10240, 1600, 1600, 1600, 560, 560, 560, 560, 560 - }; - - public override uint[] _sectorSize => new uint[] - { - 256, 256, 256, 256, 256, 256, 256, 256, 256, 512, 512, 512, 512, 512, 512, 512, 512, 256, 256, 256, 256, - 512, 512, 512, 512, 512, 512, 512, 256, 256, 256, 256, 256 - }; - - public override MediaType[] _mediaTypes => new[] - { - MediaType.Apple33SS, MediaType.Apple32SS, MediaType.Apple32SS, MediaType.Apple33SS, MediaType.Apple33SS, - MediaType.Apple33SS, MediaType.Apple33SS, MediaType.Apple33SS, MediaType.Apple33SS, MediaType.DOS_35_HD, - MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.AppleSonyDS, - MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.Apple33SS, - MediaType.Apple33SS, MediaType.Apple33SS, MediaType.Apple33SS, MediaType.DOS_35_HD, MediaType.DOS_35_HD, - MediaType.Unknown, MediaType.Unknown, MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.AppleSonyDS, - MediaType.Apple33SS, MediaType.Apple33SS, MediaType.Apple33SS, MediaType.Apple33SS, MediaType.Apple33SS - }; - - public override string[] _md5S => new[] - { - "7db5d585270ab858043d50e60068d45f", "906c1bdbf76bf089ea47aae98151df5d", "76f8fe4c5bc1976f99641ad7cdf53109", - "0ffcbd4180306192726926b43755db2f", "91d020725d081500caa1fd8aad959397", "91d020725d081500caa1fd8aad959397", - "0ffcbd4180306192726926b43755db2f", "91d020725d081500caa1fd8aad959397", "0ffcbd4180306192726926b43755db2f", - "535648d1f9838b695403f2f48d5ac94c", "2762f41d0379b476042fc62891baac84", "2762f41d0379b476042fc62891baac84", - "2762f41d0379b476042fc62891baac84", "b748f6df3e60e7169d42ec6fcc857ea4", "b748f6df3e60e7169d42ec6fcc857ea4", - "dbd0ec8a3126236910709faf923adcf2", "dbd0ec8a3126236910709faf923adcf2", "4c4926103a32ac15f7e430ec3ced4be5", - "4c4926103a32ac15f7e430ec3ced4be5", "4c4926103a32ac15f7e430ec3ced4be5", "4c4926103a32ac15f7e430ec3ced4be5", - "eb9b60c78b30d2b6541ed0781944b6da", "1fe841b418ede51133878641e01544b5", "b156441e159a625ee00a0659dfb6e2f8", - "b156441e159a625ee00a0659dfb6e2f8", "fcf747bd356b48d442ff74adb8f3516b", "fcf747bd356b48d442ff74adb8f3516b", - "fcf747bd356b48d442ff74adb8f3516b", "11ef56c80c94347d2e3f921d5c36c8de", "11ef56c80c94347d2e3f921d5c36c8de", - "11ef56c80c94347d2e3f921d5c36c8de", "11ef56c80c94347d2e3f921d5c36c8de", "6f692a8fadfaa243d9f2d8d41f0e4cad" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "2mg"); public override IMediaImage _plugin => new DiscImages.Apple2Mg(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "blank140.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "7db5d585270ab858043d50e60068d45f" + }, + new BlockImageTestExpected + { + TestFile = "dos32.2mg.lz", + MediaType = MediaType.Apple32SS, + Sectors = 455, + SectorSize = 256, + MD5 = "906c1bdbf76bf089ea47aae98151df5d" + }, + new BlockImageTestExpected + { + TestFile = "dos32_alt.2mg.lz", + MediaType = MediaType.Apple32SS, + Sectors = 455, + SectorSize = 256, + MD5 = "76f8fe4c5bc1976f99641ad7cdf53109" + }, + new BlockImageTestExpected + { + TestFile = "dos33_dic.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "0ffcbd4180306192726926b43755db2f" + }, + new BlockImageTestExpected + { + TestFile = "dos33-do.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "91d020725d081500caa1fd8aad959397" + }, + new BlockImageTestExpected + { + TestFile = "dos33-nib.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "91d020725d081500caa1fd8aad959397" + }, + new BlockImageTestExpected + { + TestFile = "dos33_nib.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "0ffcbd4180306192726926b43755db2f" + }, + new BlockImageTestExpected + { + TestFile = "dos33-po.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "91d020725d081500caa1fd8aad959397" + }, + new BlockImageTestExpected + { + TestFile = "dos33_po.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "0ffcbd4180306192726926b43755db2f" + }, + new BlockImageTestExpected + { + TestFile = "hfs1440.2mg.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "535648d1f9838b695403f2f48d5ac94c" + }, + new BlockImageTestExpected + { + TestFile = "hfs800_dic.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "2762f41d0379b476042fc62891baac84" + }, + new BlockImageTestExpected + { + TestFile = "hfs_do.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "2762f41d0379b476042fc62891baac84" + }, + new BlockImageTestExpected + { + TestFile = "hfs_po.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "2762f41d0379b476042fc62891baac84" + }, + new BlockImageTestExpected + { + TestFile = "modified_do.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "b748f6df3e60e7169d42ec6fcc857ea4" + }, + new BlockImageTestExpected + { + TestFile = "modified_po.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "b748f6df3e60e7169d42ec6fcc857ea4" + }, + new BlockImageTestExpected + { + TestFile = "pascal800_do.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "dbd0ec8a3126236910709faf923adcf2" + }, + new BlockImageTestExpected + { + TestFile = "pascal800_p.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "dbd0ec8a3126236910709faf923adcf2" + }, + new BlockImageTestExpected + { + TestFile = "pascal_dic.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "4c4926103a32ac15f7e430ec3ced4be5" + }, + new BlockImageTestExpected + { + TestFile = "pascal_do.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "4c4926103a32ac15f7e430ec3ced4be5" + }, + new BlockImageTestExpected + { + TestFile = "pascal_nib.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "4c4926103a32ac15f7e430ec3ced4be5" + }, + new BlockImageTestExpected + { + TestFile = "pascal_po.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "4c4926103a32ac15f7e430ec3ced4be5" + }, + new BlockImageTestExpected + { + TestFile = "prodos1440.2mg.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "eb9b60c78b30d2b6541ed0781944b6da" + }, + new BlockImageTestExpected + { + TestFile = "prodos1440_po.2mg.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "1fe841b418ede51133878641e01544b5" + }, + new BlockImageTestExpected + { + TestFile = "prodos5mb.2mg.lz", + MediaType = MediaType.Unknown, + Sectors = 10240, + SectorSize = 512, + MD5 = "b156441e159a625ee00a0659dfb6e2f8" + }, + new BlockImageTestExpected + { + TestFile = "prodos5m_dic.2mg.lz", + MediaType = MediaType.Unknown, + Sectors = 10240, + SectorSize = 512, + MD5 = "b156441e159a625ee00a0659dfb6e2f8" + }, + new BlockImageTestExpected + { + TestFile = "prodos800_dic.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "fcf747bd356b48d442ff74adb8f3516b" + }, + new BlockImageTestExpected + { + TestFile = "prodos800_do.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "fcf747bd356b48d442ff74adb8f3516b" + }, + new BlockImageTestExpected + { + TestFile = "prodos800_po.2mg.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "fcf747bd356b48d442ff74adb8f3516b" + }, + new BlockImageTestExpected + { + TestFile = "prodos_dic.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "11ef56c80c94347d2e3f921d5c36c8de" + }, + new BlockImageTestExpected + { + TestFile = "prodos_do.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "11ef56c80c94347d2e3f921d5c36c8de" + }, + new BlockImageTestExpected + { + TestFile = "prodos_nib.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "11ef56c80c94347d2e3f921d5c36c8de" + }, + new BlockImageTestExpected + { + TestFile = "prodos_po.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "11ef56c80c94347d2e3f921d5c36c8de" + }, + new BlockImageTestExpected + { + TestFile = "prodos.2mg.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "6f692a8fadfaa243d9f2d8d41f0e4cad" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/AaruFormat/Tape/V1.cs b/Aaru.Tests/Images/AaruFormat/Tape/V1.cs index f5a5bcb45..a03868f98 100644 --- a/Aaru.Tests/Images/AaruFormat/Tape/V1.cs +++ b/Aaru.Tests/Images/AaruFormat/Tape/V1.cs @@ -37,886 +37,713 @@ namespace Aaru.Tests.Images.AaruFormat.Tape [TestFixture] public class V1 : TapeMediaImageTest { - public override string[] _testFiles => new[] - { - "Nonstop-UX System V Release 4 B32 (Boot Tape).aif", - "Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif", - "Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif", - "Nonstop-UX System V Release 4 B32 (Operating System).aif", - "Nonstop-UX System V Release 4 B32 (Optional Packages).aif", - "Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif", - "Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif", - "Nonstop-UX System V Release 4 B32 (Required Packages).aif", "OpenWindows.3.0.exabyte.aif", - "OpenWindows.3.0.Q150.aif", "OS.MP.4.1C.exabyte.aif", "X.3.0.exabyte.aif", "X.3.Q150.aif" - }; - - public override ulong[] _sectors => new ulong[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - 1604, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - 15485, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - 15, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - 3298, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - 3152, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - 818, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - 7, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - 684, - - // OpenWindows.3.0.exabyte.aif - 73525, - - // OpenWindows.3.0.Q150.aif - 290, - - // OS.MP.4.1C.exabyte.aif - 37587, - - // X.3.0.exabyte.aif - 25046, - - // X.3.Q150.aif - 102 - }; - - public override uint[] _sectorSize => new uint[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - 10240, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - 512, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - 28637, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - 32256, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - 32256, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - 32256, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - 26185, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - 32256, - - // OpenWindows.3.0.exabyte.aif - 1024, - - // OpenWindows.3.0.Q150.aif - 262144, - - // OS.MP.4.1C.exabyte.aif - 8192, - - // X.3.0.exabyte.aif - 1024, - - // X.3.Q150.aif - 258048 - }; - - public override MediaType[] _mediaTypes => new[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - MediaType.UnknownTape, - - // OpenWindows.3.0.exabyte.aif - MediaType.UnknownTape, - - // OpenWindows.3.0.Q150.aif - MediaType.UnknownTape, - - // OS.MP.4.1C.exabyte.aif - MediaType.UnknownTape, - - // X.3.0.exabyte.aif - MediaType.UnknownTape, - - // X.3.Q150.aif - MediaType.UnknownTape - }; - - public override string[] _md5S => new[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - "a6334d975523b3422fea522b0cc118a9", - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - "17ef78d9e5c53b976f530d4ca44223fd", - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - "6b6e80c4b3a48b2bc46571389eeaf78b", - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - "91b6115a718b9854b69478fee8e8644e", - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - "018c37c40f8df91ab9b098d643c9ae6c", - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - "181c9b00c236d14c7dfa4fa009c4559d", - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - "7dc46bb181077d215a5c93cc990da365", - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - "80e1d90052bf8c2df641398d0a30e630", - - // OpenWindows.3.0.exabyte.aif - "8861f8c06a2e93ca5a81d729ad3e1de1", - - // OpenWindows.3.0.Q150.aif - "2b944c7a353a63a48fdcf5517306fba6", - - // OS.MP.4.1C.exabyte.aif - "a923a4fffb3456386bafd00c1d939224", - - // X.3.0.exabyte.aif - "e625c03d7493dc22fe49f91f731446e8", - - // X.3.Q150.aif - "198464b1daf8e674debf8eda0fcbf016" - }; - - readonly bool[] _isTape = - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - true, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - true, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - true, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - true, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - true, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - true, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - true, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - true, - - // OpenWindows.3.0.exabyte.aif - true, - - // OpenWindows.3.0.Q150.aif - true, - - // OS.MP.4.1C.exabyte.aif - true, - - // X.3.0.exabyte.aif - true, - - // X.3.Q150.aif - true - }; - - public override TapeFile[][] _tapeFiles => new[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 1603, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 15484, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 14, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 3297, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 3151, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 817, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 6, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 683, - Partition = 0 - } - }, - - // OpenWindows.3.0.exabyte.aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 0, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 1, - LastBlock = 164, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 165, - LastBlock = 2412, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 2413, - LastBlock = 5612, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 5613, - LastBlock = 73524, - Partition = 0 - } - }, - - // OpenWindows.3.0.Q150.aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 0, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 1, - LastBlock = 1, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 2, - LastBlock = 10, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 11, - LastBlock = 23, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 24, - LastBlock = 289, - Partition = 0 - } - }, - - // OS.MP.4.1C.exabyte.aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 1, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 2, - LastBlock = 3, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 4, - LastBlock = 6860, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 6861, - LastBlock = 13773, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 13774, - LastBlock = 20263, - Partition = 0 - }, - new TapeFile - { - File = 5, - FirstBlock = 20264, - LastBlock = 20299, - Partition = 0 - }, - new TapeFile - { - File = 6, - FirstBlock = 20300, - LastBlock = 22603, - Partition = 0 - }, - new TapeFile - { - File = 7, - FirstBlock = 22604, - LastBlock = 23472, - Partition = 0 - }, - new TapeFile - { - File = 8, - FirstBlock = 23473, - LastBlock = 24946, - Partition = 0 - }, - new TapeFile - { - File = 9, - FirstBlock = 24947, - LastBlock = 26436, - Partition = 0 - }, - new TapeFile - { - File = 10, - FirstBlock = 26437, - LastBlock = 27720, - Partition = 0 - }, - new TapeFile - { - File = 11, - FirstBlock = 27721, - LastBlock = 31922, - Partition = 0 - }, - new TapeFile - { - File = 12, - FirstBlock = 31923, - LastBlock = 32283, - Partition = 0 - }, - new TapeFile - { - File = 13, - FirstBlock = 32284, - LastBlock = 32675, - Partition = 0 - }, - new TapeFile - { - File = 14, - FirstBlock = 32676, - LastBlock = 33549, - Partition = 0 - }, - new TapeFile - { - File = 15, - FirstBlock = 33550, - LastBlock = 33686, - Partition = 0 - }, - new TapeFile - { - File = 16, - FirstBlock = 33687, - LastBlock = 33909, - Partition = 0 - }, - new TapeFile - { - File = 17, - FirstBlock = 33910, - LastBlock = 33949, - Partition = 0 - }, - new TapeFile - { - File = 18, - FirstBlock = 33950, - LastBlock = 34180, - Partition = 0 - }, - new TapeFile - { - File = 19, - FirstBlock = 34181, - LastBlock = 34573, - Partition = 0 - }, - new TapeFile - { - File = 20, - FirstBlock = 34574, - LastBlock = 35072, - Partition = 0 - }, - new TapeFile - { - File = 21, - FirstBlock = 35073, - LastBlock = 35163, - Partition = 0 - }, - new TapeFile - { - File = 22, - FirstBlock = 35164, - LastBlock = 35908, - Partition = 0 - }, - new TapeFile - { - File = 23, - FirstBlock = 35909, - LastBlock = 35984, - Partition = 0 - }, - new TapeFile - { - File = 24, - FirstBlock = 35985, - LastBlock = 36098, - Partition = 0 - }, - new TapeFile - { - File = 25, - FirstBlock = 36099, - LastBlock = 36270, - Partition = 0 - }, - new TapeFile - { - File = 26, - FirstBlock = 36271, - LastBlock = 36276, - Partition = 0 - }, - new TapeFile - { - File = 27, - FirstBlock = 36277, - LastBlock = 36647, - Partition = 0 - }, - new TapeFile - { - File = 28, - FirstBlock = 36648, - LastBlock = 37111, - Partition = 0 - }, - new TapeFile - { - File = 29, - FirstBlock = 37112, - LastBlock = 37583, - Partition = 0 - }, - new TapeFile - { - File = 30, - FirstBlock = 37584, - LastBlock = 37584, - Partition = 0 - }, - new TapeFile - { - File = 31, - FirstBlock = 37585, - LastBlock = 37585, - Partition = 0 - }, - new TapeFile - { - File = 32, - FirstBlock = 37586, - LastBlock = 37586, - Partition = 0 - } - }, - - // X.3.0.exabyte.aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 0, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 1, - LastBlock = 61, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 62, - LastBlock = 149, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 150, - LastBlock = 2781, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 2782, - LastBlock = 11885, - Partition = 0 - }, - new TapeFile - { - File = 5, - FirstBlock = 11886, - LastBlock = 25045, - Partition = 0 - } - }, - - // X.3.Q150.aif - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 0, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 1, - LastBlock = 1, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 2, - LastBlock = 2, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 3, - LastBlock = 13, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 14, - LastBlock = 49, - Partition = 0 - }, - new TapeFile - { - File = 5, - FirstBlock = 50, - LastBlock = 101, - Partition = 0 - } - } - }; - - public override TapePartition[][] _tapePartitions => new[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 1603, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 15484, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 14, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 3297, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 3151, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 817, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 6, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 683, - Number = 0 - } - }, - - // OpenWindows.3.0.exabyte.aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 73524, - Number = 0 - } - }, - - // OpenWindows.3.0.Q150.aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 289, - Number = 0 - } - }, - - // OS.MP.4.1C.exabyte.aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 37586, - Number = 0 - } - }, - - // X.3.0.exabyte.aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 25045, - Number = 0 - } - }, - - // X.3.Q150.aif - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 101, - Number = 0 - } - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "AaruFormat", "V1"); public override IMediaImage _plugin => new DiscImages.AaruFormat(); + + public override TapeImageTestExpected[] Tests => new[] + { + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Boot Tape).aif", + MediaType = MediaType.UnknownTape, + Sectors = 1604, + SectorSize = 10240, + MD5 = "a6334d975523b3422fea522b0cc118a9", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 1603, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 1603, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif", + MediaType = MediaType.UnknownTape, + Sectors = 15485, + SectorSize = 512, + MD5 = "17ef78d9e5c53b976f530d4ca44223fd", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 15484, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 15484, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif", + MediaType = MediaType.UnknownTape, + Sectors = 15, + SectorSize = 28637, + MD5 = "6b6e80c4b3a48b2bc46571389eeaf78b", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 14, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 14, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Operating System).aif", + MediaType = MediaType.UnknownTape, + Sectors = 3298, + SectorSize = 32256, + MD5 = "91b6115a718b9854b69478fee8e8644e", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 3297, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 3297, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Optional Packages).aif", + MediaType = MediaType.UnknownTape, + Sectors = 3152, + SectorSize = 32256, + MD5 = "018c37c40f8df91ab9b098d643c9ae6c", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 3151, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 3151, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif", + MediaType = MediaType.UnknownTape, + Sectors = 818, + SectorSize = 32256, + MD5 = "181c9b00c236d14c7dfa4fa009c4559d", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 817, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 817, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif", + MediaType = MediaType.UnknownTape, + Sectors = 7, + SectorSize = 26185, + MD5 = "7dc46bb181077d215a5c93cc990da365", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 6, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 6, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Required Packages).aif", + MediaType = MediaType.UnknownTape, + Sectors = 684, + SectorSize = 32256, + MD5 = "80e1d90052bf8c2df641398d0a30e630", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 683, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 683, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "OpenWindows.3.0.exabyte.aif", + MediaType = MediaType.UnknownTape, + Sectors = 73525, + SectorSize = 1024, + MD5 = "8861f8c06a2e93ca5a81d729ad3e1de1", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 73524, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 0, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 1, + LastBlock = 164, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 165, + LastBlock = 2412, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 2413, + LastBlock = 5612, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 5613, + LastBlock = 73524, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "OpenWindows.3.0.Q150.aif", + MediaType = MediaType.UnknownTape, + Sectors = 290, + SectorSize = 262144, + MD5 = "2b944c7a353a63a48fdcf5517306fba6", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 289, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 0, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 1, + LastBlock = 1, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 2, + LastBlock = 10, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 11, + LastBlock = 23, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 24, + LastBlock = 289, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "OS.MP.4.1C.exabyte.aif", + MediaType = MediaType.UnknownTape, + Sectors = 37587, + SectorSize = 8192, + MD5 = "a923a4fffb3456386bafd00c1d939224", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 37586, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 1, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 2, + LastBlock = 3, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 4, + LastBlock = 6860, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 6861, + LastBlock = 13773, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 13774, + LastBlock = 20263, + Partition = 0 + }, + new TapeFile + { + File = 5, + FirstBlock = 20264, + LastBlock = 20299, + Partition = 0 + }, + new TapeFile + { + File = 6, + FirstBlock = 20300, + LastBlock = 22603, + Partition = 0 + }, + new TapeFile + { + File = 7, + FirstBlock = 22604, + LastBlock = 23472, + Partition = 0 + }, + new TapeFile + { + File = 8, + FirstBlock = 23473, + LastBlock = 24946, + Partition = 0 + }, + new TapeFile + { + File = 9, + FirstBlock = 24947, + LastBlock = 26436, + Partition = 0 + }, + new TapeFile + { + File = 10, + FirstBlock = 26437, + LastBlock = 27720, + Partition = 0 + }, + new TapeFile + { + File = 11, + FirstBlock = 27721, + LastBlock = 31922, + Partition = 0 + }, + new TapeFile + { + File = 12, + FirstBlock = 31923, + LastBlock = 32283, + Partition = 0 + }, + new TapeFile + { + File = 13, + FirstBlock = 32284, + LastBlock = 32675, + Partition = 0 + }, + new TapeFile + { + File = 14, + FirstBlock = 32676, + LastBlock = 33549, + Partition = 0 + }, + new TapeFile + { + File = 15, + FirstBlock = 33550, + LastBlock = 33686, + Partition = 0 + }, + new TapeFile + { + File = 16, + FirstBlock = 33687, + LastBlock = 33909, + Partition = 0 + }, + new TapeFile + { + File = 17, + FirstBlock = 33910, + LastBlock = 33949, + Partition = 0 + }, + new TapeFile + { + File = 18, + FirstBlock = 33950, + LastBlock = 34180, + Partition = 0 + }, + new TapeFile + { + File = 19, + FirstBlock = 34181, + LastBlock = 34573, + Partition = 0 + }, + new TapeFile + { + File = 20, + FirstBlock = 34574, + LastBlock = 35072, + Partition = 0 + }, + new TapeFile + { + File = 21, + FirstBlock = 35073, + LastBlock = 35163, + Partition = 0 + }, + new TapeFile + { + File = 22, + FirstBlock = 35164, + LastBlock = 35908, + Partition = 0 + }, + new TapeFile + { + File = 23, + FirstBlock = 35909, + LastBlock = 35984, + Partition = 0 + }, + new TapeFile + { + File = 24, + FirstBlock = 35985, + LastBlock = 36098, + Partition = 0 + }, + new TapeFile + { + File = 25, + FirstBlock = 36099, + LastBlock = 36270, + Partition = 0 + }, + new TapeFile + { + File = 26, + FirstBlock = 36271, + LastBlock = 36276, + Partition = 0 + }, + new TapeFile + { + File = 27, + FirstBlock = 36277, + LastBlock = 36647, + Partition = 0 + }, + new TapeFile + { + File = 28, + FirstBlock = 36648, + LastBlock = 37111, + Partition = 0 + }, + new TapeFile + { + File = 29, + FirstBlock = 37112, + LastBlock = 37583, + Partition = 0 + }, + new TapeFile + { + File = 30, + FirstBlock = 37584, + LastBlock = 37584, + Partition = 0 + }, + new TapeFile + { + File = 31, + FirstBlock = 37585, + LastBlock = 37585, + Partition = 0 + }, + new TapeFile + { + File = 32, + FirstBlock = 37586, + LastBlock = 37586, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "X.3.0.exabyte.aif", + MediaType = MediaType.UnknownTape, + Sectors = 25046, + SectorSize = 1024, + MD5 = "e625c03d7493dc22fe49f91f731446e8", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 25045, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 0, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 1, + LastBlock = 61, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 62, + LastBlock = 149, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 150, + LastBlock = 2781, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 2782, + LastBlock = 11885, + Partition = 0 + }, + new TapeFile + { + File = 5, + FirstBlock = 11886, + LastBlock = 25045, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "X.3.Q150.aif", + MediaType = MediaType.UnknownTape, + Sectors = 102, + SectorSize = 258048, + MD5 = "198464b1daf8e674debf8eda0fcbf016", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 101, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 0, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 1, + LastBlock = 1, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 2, + LastBlock = 2, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 3, + LastBlock = 13, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 14, + LastBlock = 49, + Partition = 0 + }, + new TapeFile + { + File = 5, + FirstBlock = 50, + LastBlock = 101, + Partition = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/AaruFormat/V1.cs b/Aaru.Tests/Images/AaruFormat/V1.cs index 3d7d13c12..0f2b18cec 100644 --- a/Aaru.Tests/Images/AaruFormat/V1.cs +++ b/Aaru.Tests/Images/AaruFormat/V1.cs @@ -36,1616 +36,1109 @@ namespace Aaru.Tests.Images.AaruFormat [TestFixture] public class V1 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.aif", "report_audiocd.aif", "report_cdr.aif", "report_cdrom.aif", - "report_cdrw_2x.aif", "report_dvd+r.aif", "report_dvd-r.aif", "report_dvd-ram_v1.aif", - "report_dvd-ram_v2.aif", "report_dvd+r_dl.aif", "report_dvd-rom.aif", "report_dvd+rw.aif", - "report_dvd-rw.aif", "report_enhancedcd.aif", "test_audiocd_cdtext.aif", - "test_audiocd_multiple_indexes.aif", "test_cdr_incd_finalized.aif", "test_enhancedcd.aif", - "test_multi_karaoke_sampler.aif", "test_multisession.aif", "test_videocd.aif", - "Nonstop-UX System V Release 4 B32 (Boot Tape).aif", - "Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif", - "Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif", - "Nonstop-UX System V Release 4 B32 (Operating System).aif", - "Nonstop-UX System V Release 4 B32 (Optional Packages).aif", - "Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif", - "Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif", - "Nonstop-UX System V Release 4 B32 (Required Packages).aif", "OpenWindows.3.0.exabyte.aif", - "OpenWindows.3.0.Q150.aif", "OS.MP.4.1C.exabyte.aif", "X.3.0.exabyte.aif", "X.3.Q150.aif" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.aif - 279300, - - // report_audiocd.aif - 247073, - - // report_cdr.aif - 254265, - - // report_cdrom.aif - 254265, - - // report_cdrw_2x.aif - 308224, - - // report_dvd+r.aif - 2146368, - - // report_dvd-r.aif - 2146368, - - // report_dvd-ram_v1.aif - 1218960, - - // report_dvd-ram_v2.aif - 2236704, - - // report_dvd+r_dl.aif - 16384000, - - // report_dvd-rom.aif - 2146368, - - // report_dvd+rw.aif - 2295104, - - // report_dvd-rw.aif - 2146368, - - // report_enhancedcd.aif - 303316, - - // test_audiocd_cdtext.aif - 277696, - - // test_audiocd_multiple_indexes.aif - 65536, - - // test_cdr_incd_finalized.aif - 350134, - - // test_enhancedcd.aif - 59206, - - // test_multi_karaoke_sampler.aif - 329158, - - // test_multisession.aif - 51168, - - // test_videocd.aif - 48794, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - 1604, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - 15485, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - 15, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - 3298, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - 3152, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - 818, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - 7, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - 684, - - // OpenWindows.3.0.exabyte.aif - 73525, - - // OpenWindows.3.0.Q150.aif - 290, - - // OS.MP.4.1C.exabyte.aif - 37587, - - // X.3.0.exabyte.aif - 25046, - - // X.3.Q150.aif - 102 - }; - - public override uint[] _sectorSize => new uint[] - { - // cdiready_the_apprentice.aif - 2352, - - // report_audiocd.aif - 2352, - - // report_cdr.aif - 2048, - - // report_cdrom.aif - 2048, - - // report_cdrw_2x.aif - 2048, - - // report_dvd+r.aif - 2048, - - // report_dvd-r.aif - 2048, - - // report_dvd-ram_v1.aif - 2048, - - // report_dvd-ram_v2.aif - 2048, - - // report_dvd+r_dl.aif - 2048, - - // report_dvd-rom.aif - 2048, - - // report_dvd+rw.aif - 2048, - - // report_dvd-rw.aif - 2048, - - // report_enhancedcd.aif - 2352, - - // test_audiocd_cdtext.aif - 2352, - - // test_audiocd_multiple_indexes.aif - 2352, - - // test_cdr_incd_finalized.aif - 2048, - - // test_enhancedcd.aif - 2352, - - // test_multi_karaoke_sampler.aif - 2352, - - // test_multisession.aif - 2048, - - // test_videocd.aif - 2328, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - 10240, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - 512, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - 28637, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - 32256, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - 32256, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - 32256, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - 26185, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - 32256, - - // OpenWindows.3.0.exabyte.aif - 1024, - - // OpenWindows.3.0.Q150.aif - 262144, - - // OS.MP.4.1C.exabyte.aif - 8192, - - // X.3.0.exabyte.aif - 1024, - - // X.3.Q150.aif - 258048 - }; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.aif - MediaType.CDIREADY, - - // report_audiocd.aif - MediaType.CDDA, - - // report_cdr.aif - MediaType.CDR, - - // report_cdrom.aif - MediaType.CDROM, - - // report_cdrw_2x.aif - MediaType.CDRW, - - // report_dvd+r.aif - MediaType.DVDPR, - - // report_dvd-r.aif - MediaType.DVDR, - - // report_dvd-ram_v1.aif - MediaType.DVDRAM, - - // report_dvd-ram_v2.aif - MediaType.DVDRAM, - - // report_dvd+r_dl.aif - MediaType.DVDROM, - - // report_dvd-rom.aif - MediaType.DVDROM, - - // report_dvd+rw.aif - MediaType.DVDPRW, - - // report_dvd-rw.aif - MediaType.DVDRWDL, - - // report_enhancedcd.aif - MediaType.CD, - - // test_audiocd_cdtext.aif - MediaType.CDR, - - // test_audiocd_multiple_indexes.aif - MediaType.CDR, - - // test_cdr_incd_finalized.aif - MediaType.CDR, - - // test_enhancedcd.aif - MediaType.CDR, - - // test_multi_karaoke_sampler.aif - MediaType.CD, - - // test_multisession.aif - MediaType.CDR, - - // test_videocd.aif - MediaType.CDR, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - MediaType.UnknownTape, - - // OpenWindows.3.0.exabyte.aif - MediaType.UnknownTape, - - // OpenWindows.3.0.Q150.aif - MediaType.UnknownTape, - - // OS.MP.4.1C.exabyte.aif - MediaType.UnknownTape, - - // X.3.0.exabyte.aif - MediaType.UnknownTape, - - // X.3.Q150.aif - MediaType.UnknownTape - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.aif - "ad6b898e5f93faf33967fe53fea7037e", - - // report_audiocd.aif - "c9036cb72bcb67d469ca82eb7a66cb2a", - - // report_cdr.aif - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrom.aif - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw_2x.aif - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // report_dvd+r.aif - "106f141400355476b499213f36a363f9", - - // report_dvd-r.aif - "106f141400355476b499213f36a363f9", - - // report_dvd-ram_v1.aif - "c22b7796791cd4299d74863ed04496c6", - - // report_dvd-ram_v2.aif - "00b1d7c5e9855959a4d2f6b796aeaf4c", - - // report_dvd+r_dl.aif - "63d0fd3f25ab503a1818b15ca5eb86b5", - - // report_dvd-rom.aif - "106f141400355476b499213f36a363f9", - - // report_dvd+rw.aif - "3c03ab1def372553f1b04afa0fdbc527", - - // report_dvd-rw.aif - "106f141400355476b499213f36a363f9", - - // report_enhancedcd.aif - "d10b427d18546a3c8f548edb6d911798", - - // test_audiocd_cdtext.aif - "78466ec1a08d7804a6cb38f2ed89b10f", - - // test_audiocd_multiple_indexes.aif - "d5d22e15dcf3f081d562b351611a8991", - - // test_cdr_incd_finalized.aif - "edc146b00d622f92c6a9bb4648cbea82", - - // test_enhancedcd.aif - "2fd88f1e8c21601017c937963d8fe5eb", - - // test_multi_karaoke_sampler.aif - "fef9ff409aa2643ac0c0649e84346f5f", - - // test_multisession.aif - "099011fe470ce7ca0ecb52368cd2efe5", - - // test_videocd.aif - "a5531d15eefe70ff21718b3b5da08255", - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - "a6334d975523b3422fea522b0cc118a9", - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - "17ef78d9e5c53b976f530d4ca44223fd", - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - "6b6e80c4b3a48b2bc46571389eeaf78b", - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - "91b6115a718b9854b69478fee8e8644e", - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - "018c37c40f8df91ab9b098d643c9ae6c", - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - "181c9b00c236d14c7dfa4fa009c4559d", - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - "7dc46bb181077d215a5c93cc990da365", - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - "80e1d90052bf8c2df641398d0a30e630", - - // OpenWindows.3.0.exabyte.aif - "8861f8c06a2e93ca5a81d729ad3e1de1", - - // OpenWindows.3.0.Q150.aif - "2b944c7a353a63a48fdcf5517306fba6", - - // OS.MP.4.1C.exabyte.aif - "a923a4fffb3456386bafd00c1d939224", - - // X.3.0.exabyte.aif - "e625c03d7493dc22fe49f91f731446e8", - - // X.3.Q150.aif - "198464b1daf8e674debf8eda0fcbf016" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.aif - "8c897ff39ce1ae7b091bfd00fbc3c1bb", - - // report_audiocd.aif - "c9036cb72bcb67d469ca82eb7a66cb2a", - - // report_cdr.aif - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrom.aif - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw_2x.aif - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_dvd+r.aif - "106f141400355476b499213f36a363f9", - - // report_dvd-r.aif - "106f141400355476b499213f36a363f9", - - // report_dvd-ram_v1.aif - "c22b7796791cd4299d74863ed04496c6", - - // report_dvd-ram_v2.aif - "00b1d7c5e9855959a4d2f6b796aeaf4c", - - // report_dvd+r_dl.aif - "63d0fd3f25ab503a1818b15ca5eb86b5", - - // report_dvd-rom.aif - "106f141400355476b499213f36a363f9", - - // report_dvd+rw.aif - "3c03ab1def372553f1b04afa0fdbc527", - - // report_dvd-rw.aif - "106f141400355476b499213f36a363f9", - - // report_enhancedcd.aif - "1c2ff79133d4db028ce415a8b03e70c2", - - // test_audiocd_cdtext.aif - "78466ec1a08d7804a6cb38f2ed89b10f", - - // test_audiocd_multiple_indexes.aif - "d5d22e15dcf3f081d562b351611a8991", - - // test_cdr_incd_finalized.aif - "6b36340c27d5583e73539175eb87c683", - - // test_enhancedcd.aif - "151e45bd1e949e0416d64eb89f48a55b", - - // test_multi_karaoke_sampler.aif - "ef18dc4f63ad59c6294ab09da7704366", - - // test_multisession.aif - "997fa9a35a2c9a6efbbbd55fcc9008f5", - - // test_videocd.aif - "11a0d9994ee761655ef4d61c6cda99e9", - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - null, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - null, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - null, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - null, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - null, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - null, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - null, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - null, - - // OpenWindows.3.0.exabyte.aif - null, - - // OpenWindows.3.0.Q150.aif - null, - - // OS.MP.4.1C.exabyte.aif - null, - - // X.3.0.exabyte.aif - null, - - // X.3.Q150.aif - null - }; - - public override string[] _subchannelMd5S => new[] - { - // cdiready_the_apprentice.aif - "579e2b502d86bc1eb7d6aded2b752c36", - - // report_audiocd.aif - "6d2ae02b362918f531ad414c736d349a", - - // report_cdr.aif - "34b8e75c3038deceaea7d382f22740cb", - - // report_cdrom.aif - "5d7f79a75e21f56e62d6fc894ee71ee6", - - // report_cdrw_2x.aif - "80a59aaf861f925a530e1b0d7857fe25", - - // report_dvd+r.aif - null, - - // report_dvd-r.aif - null, - - // report_dvd-ram_v1.aif - null, - - // report_dvd-ram_v2.aif - null, - - // report_dvd+r_dl.aif - null, - - // report_dvd-rom.aif - null, - - // report_dvd+rw.aif - null, - - // report_dvd-rw.aif - null, - - // report_enhancedcd.aif - "f80d8f55069a8815bd03cb2b6d9284b8", - - // test_audiocd_cdtext.aif - "ac39ed98b7033da6aa936b4314574a2a", - - // test_audiocd_multiple_indexes.aif - "3546cc3e1b2b3898de5a03083af9d6ee", - - // test_cdr_incd_finalized.aif - "663da762a5bef780d09217fca9d23e08", - - // test_enhancedcd.aif - "9b33f13d1dab986e981ba924797f464a", - - // test_multi_karaoke_sampler.aif - "aa71734f6385319656e2f1a64af5328b", - - // test_multisession.aif - "0eecfd65daf8a2aa9fea47cf2072350e", - - // test_videocd.aif - "f49e383ccee2f3cb97aeb82fcb4fdb18", - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - null, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - null, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - null, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - null, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - null, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - null, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - null, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - null, - - // OpenWindows.3.0.exabyte.aif - null, - - // OpenWindows.3.0.Q150.aif - null, - - // OS.MP.4.1C.exabyte.aif - null, - - // X.3.0.exabyte.aif - null, - - // X.3.Q150.aif - null - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.aif - 23, - - // report_audiocd.aif - 14, - - // report_cdr.aif - 1, - - // report_cdrom.aif - 1, - - // report_cdrw_2x.aif - 1, - - // report_dvd+r.aif - 1, - - // report_dvd-r.aif - 1, - - // report_dvd-ram_v1.aif - 1, - - // report_dvd-ram_v2.aif - 1, - - // report_dvd+r_dl.aif - 1, - - // report_dvd-rom.aif - 1, - - // report_dvd+rw.aif - 1, - - // report_dvd-rw.aif - 1, - - // report_enhancedcd.aif - 14, - - // test_audiocd_cdtext.aif - 11, - - // test_audiocd_multiple_indexes.aif - 5, - - // test_cdr_incd_finalized.aif - 1, - - // test_enhancedcd.aif - 3, - - // test_multi_karaoke_sampler.aif - 16, - - // test_multisession.aif - 4, - - // test_videocd.aif - 2, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - 0, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - 0, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - 0, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - 0, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - 0, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - 0, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - 0, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - 0, - - // OpenWindows.3.0.exabyte.aif - 0, - - // OpenWindows.3.0.Q150.aif - 0, - - // OS.MP.4.1C.exabyte.aif - 0, - - // X.3.0.exabyte.aif - 0, - - // X.3.Q150.aif - 0 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.aif - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.aif - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.aif - new[] - { - 1 - }, - - // report_cdrom.aif - new[] - { - 1 - }, - - // report_cdrw_2x.aif - new[] - { - 1 - }, - - // report_dvd+r.aif - new[] - { - 1 - }, - - // report_dvd-r.aif - new[] - { - 1 - }, - - // report_dvd-ram_v1.aif - new[] - { - 1 - }, - - // report_dvd-ram_v2.aif - new[] - { - 1 - }, - - // report_dvd+r_dl.aif - new[] - { - 1 - }, - - // report_dvd-rom.aif - new[] - { - 1 - }, - - // report_dvd+rw.aif - new[] - { - 1 - }, - - // report_dvd-rw.aif - new[] - { - 1 - }, - - // report_enhancedcd.aif - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_audiocd_cdtext.aif - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_audiocd_multiple_indexes.aif - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_cdr_incd_finalized.aif - new[] - { - 1 - }, - - // test_enhancedcd.aif - new[] - { - 1, 1, 2 - }, - - // test_multi_karaoke_sampler.aif - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multisession.aif - new[] - { - 1, 2, 3, 4 - }, - - // test_videocd.aif - new[] - { - 1, 1 - }, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - null, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - null, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - null, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - null, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - null, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - null, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - null, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - null, - - // OpenWindows.3.0.exabyte.aif - null, - - // OpenWindows.3.0.Q150.aif - null, - - // OS.MP.4.1C.exabyte.aif - null, - - // X.3.0.exabyte.aif - null, - - // X.3.Q150.aif - null - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.aif - new ulong[] - { - 0, 69150, 88650, 107475, 112050, 133500, 138075, 159675, 164625, 185250, 189975, 208725, 212850, 232050, - 236550, 241725, 255975, 256725, 265500, 267225, 269850, 271500, 274125 - }, - - // report_audiocd.aif - new ulong[] - { - 0, 16399, 29901, 47800, 63164, 78775, 94582, 116975, 136016, 153922, 170601, 186389, 201649, 224299 - }, - - // report_cdr.aif - new ulong[] - { - 0 - }, - - // report_cdrom.aif - new ulong[] - { - 0 - }, - - // report_cdrw_2x.aif - new ulong[] - { - 0 - }, - - // report_dvd+r.aif - new ulong[] - { - 0 - }, - - // report_dvd-r.aif - new ulong[] - { - 0 - }, - - // report_dvd-ram_v1.aif - new ulong[] - { - 0 - }, - - // report_dvd-ram_v2.aif - new ulong[] - { - 0 - }, - - // report_dvd+r_dl.aif - new ulong[] - { - 0 - }, - - // report_dvd-rom.aif - new ulong[] - { - 0 - }, - - // report_dvd+rw.aif - new ulong[] - { - 0 - }, - - // report_dvd-rw.aif - new ulong[] - { - 0 - }, - - // report_enhancedcd.aif - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234034 - }, - - // test_audiocd_cdtext.aif - new ulong[] - { - 0, 29752, 65034, 78426, 95080, 126147, 154959, 191685, 222776, 243438, 269600 - }, - - // test_audiocd_multiple_indexes.aif - new ulong[] - { - 0, 4653, 13805, 36685, 54989 - }, - - // test_cdr_incd_finalized.aif - new ulong[] - { - 0 - }, - - // test_enhancedcd.aif - new ulong[] - { - 0, 14256, 40207 - }, - - // test_multi_karaoke_sampler.aif - new ulong[] - { - 0, 1737, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multisession.aif - new ulong[] - { - 0, 19387, 32714, 45232 - }, - - // test_videocd.aif - new ulong[] - { - 0, 1108 - }, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - null, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - null, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - null, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - null, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - null, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - null, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - null, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - null, - - // OpenWindows.3.0.exabyte.aif - null, - - // OpenWindows.3.0.Q150.aif - null, - - // OS.MP.4.1C.exabyte.aif - null, - - // X.3.0.exabyte.aif - null, - - // X.3.Q150.aif - null - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.aif - new ulong[] - { - 69149, 88649, 107474, 112049, 133499, 138074, 159674, 164624, 185249, 189974, 208724, 212849, 232049, - 236549, 241724, 255974, 256724, 265499, 267224, 269849, 271499, 274124, 279299 - }, - - // report_audiocd.aif - new ulong[] - { - 16398, 29900, 47799, 63163, 78774, 94581, 116974, 136015, 153921, 170600, 186388, 201648, 224298, 247072 - }, - - // report_cdr.aif - new ulong[] - { - 254264 - }, - - // report_cdrom.aif - new ulong[] - { - 254264 - }, - - // report_cdrw_2x.aif - new ulong[] - { - 308223 - }, - - // report_dvd+r.aif - new ulong[] - { - 2146367 - }, - - // report_dvd-r.aif - new ulong[] - { - 2146367 - }, - - // report_dvd-ram_v1.aif - new ulong[] - { - 1218959 - }, - - // report_dvd-ram_v2.aif - new ulong[] - { - 2236703 - }, - - // report_dvd+r_dl.aif - new ulong[] - { - 16383999 - }, - - // report_dvd-rom.aif - new ulong[] - { - 2146367 - }, - - // report_dvd+rw.aif - new ulong[] - { - 2295103 - }, - - // report_dvd-rw.aif - new ulong[] - { - 2146367 - }, - - // report_enhancedcd.aif - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 234033, - 303315 - }, - - // test_audiocd_cdtext.aif - new ulong[] - { - 29751, 65033, 78425, 95079, 126146, 154958, 191684, 222775, 243437, 269599, 277695 - }, - - // test_audiocd_multiple_indexes.aif - new ulong[] - { - 4652, 13804, 36684, 54988, 65535 - }, - - // test_cdr_incd_finalized.aif - new ulong[] - { - 350133 - }, - - // test_enhancedcd.aif - new ulong[] - { - 14255, 40206, 59205 - }, - - // test_multi_karaoke_sampler.aif - new ulong[] - { - 1736, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multisession.aif - new ulong[] - { - 19386, 32713, 45231, 51167 - }, - - // test_videocd.aif - new ulong[] - { - 1107, 48793 - }, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - null, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - null, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - null, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - null, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - null, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - null, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - null, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - null, - - // OpenWindows.3.0.exabyte.aif - null, - - // OpenWindows.3.0.Q150.aif - null, - - // OS.MP.4.1C.exabyte.aif - null, - - // X.3.0.exabyte.aif - null, - - // X.3.Q150.aif - null - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.aif - new ulong[] - { - 0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, - 150, 150 - }, - - // report_audiocd.aif - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // report_cdr.aif - new ulong[] - { - 150 - }, - - // report_cdrom.aif - new ulong[] - { - 150 - }, - - // report_cdrw_2x.aif - new ulong[] - { - 150 - }, - - // report_dvd+r.aif - new ulong[] - { - 0 - }, - - // report_dvd-r.aif - new ulong[] - { - 0 - }, - - // report_dvd-ram_v1.aif - new ulong[] - { - 0 - }, - - // report_dvd-ram_v2.aif - new ulong[] - { - 0 - }, - - // report_dvd+r_dl.aif - new ulong[] - { - 0 - }, - - // report_dvd-rom.aif - new ulong[] - { - 0 - }, - - // report_dvd+rw.aif - new ulong[] - { - 0 - }, - - // report_dvd-rw.aif - new ulong[] - { - 0 - }, - - // report_enhancedcd.aif - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146 - }, - - // test_audiocd_cdtext.aif - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // test_audiocd_multiple_indexes.aif - new ulong[] - { - 150, 151, 70, 4500, 0 - }, - - // test_cdr_incd_finalized.aif - new ulong[] - { - 150 - }, - - // test_enhancedcd.aif - new ulong[] - { - 150, 149, 146 - }, - - // test_multi_karaoke_sampler.aif - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multisession.aif - new ulong[] - { - 150, 146, 146, 146 - }, - - // test_videocd.aif - new ulong[] - { - 150, 144 - }, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - null, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - null, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - null, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - null, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - null, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - null, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - null, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - null, - - // OpenWindows.3.0.exabyte.aif - null, - - // OpenWindows.3.0.Q150.aif - null, - - // OS.MP.4.1C.exabyte.aif - null, - - // X.3.0.exabyte.aif - null, - - // X.3.Q150.aif - null - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.aif - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.aif - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.aif - new byte[] - { - 4 - }, - - // report_cdrom.aif - new byte[] - { - 4 - }, - - // report_cdrw_2x.aif - new byte[] - { - 4 - }, - - // report_dvd+r.aif - // null, - new byte[] - { - 0 - }, - - // report_dvd-r.aif - // null, - new byte[] - { - 0 - }, - - // report_dvd-ram_v1.aif - // null, - new byte[] - { - 0 - }, - - // report_dvd-ram_v2.aif - // null, - new byte[] - { - 0 - }, - - // report_dvd+r_dl.aif - // null, - new byte[] - { - 0 - }, - - // report_dvd-rom.aif - // null, - new byte[] - { - 0 - }, - - // report_dvd+rw.aif - // null, - new byte[] - { - 0 - }, - - // report_dvd-rw.aif - // null, - new byte[] - { - 0 - }, - - // report_enhancedcd.aif - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // test_audiocd_cdtext.aif - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_audiocd_multiple_indexes.aif - new byte[] - { - 2, 0, 0, 8, 1 - }, - - // test_cdr_incd_finalized.aif - new byte[] - { - 7 - }, - - // test_enhancedcd.aif - new byte[] - { - 0, 0, 4 - }, - - // test_multi_karaoke_sampler.aif - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multisession.aif - new byte[] - { - 4, 4, 4, 4 - }, - - // test_videocd.aif - new byte[] - { - 4, 4 - }, - - // Nonstop-UX System V Release 4 B32 (Boot Tape).aif - null, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).aif - null, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).aif - null, - - // Nonstop-UX System V Release 4 B32 (Operating System).aif - null, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).aif - null, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).aif - null, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).aif - null, - - // Nonstop-UX System V Release 4 B32 (Required Packages).aif - null, - - // OpenWindows.3.0.exabyte.aif - null, - - // OpenWindows.3.0.Q150.aif - null, - - // OS.MP.4.1C.exabyte.aif - null, - - // X.3.0.exabyte.aif - null, - - // X.3.Q150.aif - null - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "AaruFormat", "V1"); public override IMediaImage _plugin => new DiscImages.AaruFormat(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.aif", + MediaType = MediaType.CDIREADY, + Sectors = 279300, + SectorSize = 2352, + MD5 = "ad6b898e5f93faf33967fe53fea7037e", + LongMD5 = "8c897ff39ce1ae7b091bfd00fbc3c1bb", + SubchannelMD5 = "579e2b502d86bc1eb7d6aded2b752c36", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 69149, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88649, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88650, + End = 107474, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107475, + End = 112049, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112050, + End = 133499, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133500, + End = 138074, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138075, + End = 159674, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159675, + End = 164624, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164625, + End = 185249, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185250, + End = 189974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 189975, + End = 208724, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208725, + End = 212849, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 212850, + End = 232049, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232050, + End = 236549, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236550, + End = 241724, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241725, + End = 255974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 255975, + End = 256724, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256725, + End = 265499, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265500, + End = 267224, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267225, + End = 269849, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269850, + End = 271499, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271500, + End = 274124, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274125, + End = 279299, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.aif", + MediaType = MediaType.CDDA, + Sectors = 247073, + SectorSize = 2352, + MD5 = "c9036cb72bcb67d469ca82eb7a66cb2a", + LongMD5 = "c9036cb72bcb67d469ca82eb7a66cb2a", + SubchannelMD5 = "6d2ae02b362918f531ad414c736d349a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16398, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16399, + End = 29900, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29901, + End = 47799, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47800, + End = 63163, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63164, + End = 78774, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78775, + End = 94581, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94582, + End = 116974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 116975, + End = 136015, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136016, + End = 153921, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153922, + End = 170600, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170601, + End = 186388, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186389, + End = 201648, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201649, + End = 224298, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224299, + End = 247072, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.aif", + MediaType = MediaType.CDR, + Sectors = 254265, + SectorSize = 2048, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + SubchannelMD5 = "34b8e75c3038deceaea7d382f22740cb", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.aif", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + SubchannelMD5 = "5d7f79a75e21f56e62d6fc894ee71ee6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_2x.aif", + MediaType = MediaType.CDRW, + Sectors = 308224, + SectorSize = 2048, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + SubchannelMD5 = "80a59aaf861f925a530e1b0d7857fe25", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r.aif", + MediaType = MediaType.DVDPR, + Sectors = 2146368, + SectorSize = 2048, + MD5 = "106f141400355476b499213f36a363f9", + LongMD5 = "106f141400355476b499213f36a363f9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-r.aif", + MediaType = MediaType.DVDR, + Sectors = 2146368, + SectorSize = 2048, + MD5 = "106f141400355476b499213f36a363f9", + LongMD5 = "106f141400355476b499213f36a363f9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-ram_v1.aif", + MediaType = MediaType.DVDRAM, + Sectors = 1218960, + SectorSize = 2048, + MD5 = "c22b7796791cd4299d74863ed04496c6", + LongMD5 = "c22b7796791cd4299d74863ed04496c6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1218959, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-ram_v2.aif", + MediaType = MediaType.DVDRAM, + Sectors = 2236704, + SectorSize = 2048, + MD5 = "00b1d7c5e9855959a4d2f6b796aeaf4c", + LongMD5 = "00b1d7c5e9855959a4d2f6b796aeaf4c", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2236703, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r_dl.aif", + MediaType = MediaType.DVDROM, + Sectors = 16384000, + SectorSize = 2048, + MD5 = "63d0fd3f25ab503a1818b15ca5eb86b5", + LongMD5 = "63d0fd3f25ab503a1818b15ca5eb86b5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16383999, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-rom.aif", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + SectorSize = 2048, + MD5 = "106f141400355476b499213f36a363f9", + LongMD5 = "106f141400355476b499213f36a363f9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+rw.aif", + MediaType = MediaType.DVDPRW, + Sectors = 2295104, + SectorSize = 2048, + MD5 = "3c03ab1def372553f1b04afa0fdbc527", + LongMD5 = "3c03ab1def372553f1b04afa0fdbc527", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2295103, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-rw.aif", + MediaType = MediaType.DVDRWDL, + Sectors = 2146368, + SectorSize = 2048, + MD5 = "106f141400355476b499213f36a363f9", + LongMD5 = "106f141400355476b499213f36a363f9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.aif", + MediaType = MediaType.CD, + Sectors = 303316, + SectorSize = 2352, + MD5 = "d10b427d18546a3c8f548edb6d911798", + LongMD5 = "1c2ff79133d4db028ce415a8b03e70c2", + SubchannelMD5 = "f80d8f55069a8815bd03cb2b6d9284b8", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 234033, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234034, + End = 303315, + Pregap = 146, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.aif", + MediaType = MediaType.CDR, + Sectors = 277696, + SectorSize = 2352, + MD5 = "78466ec1a08d7804a6cb38f2ed89b10f", + LongMD5 = "78466ec1a08d7804a6cb38f2ed89b10f", + SubchannelMD5 = "ac39ed98b7033da6aa936b4314574a2a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29751, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29752, + End = 65033, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65034, + End = 78425, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78426, + End = 95079, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95080, + End = 126146, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126147, + End = 154958, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154959, + End = 191684, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191685, + End = 222775, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222776, + End = 243437, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243438, + End = 269599, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269600, + End = 277695, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_multiple_indexes.aif", + MediaType = MediaType.CDR, + Sectors = 65536, + SectorSize = 2352, + MD5 = "d5d22e15dcf3f081d562b351611a8991", + LongMD5 = "d5d22e15dcf3f081d562b351611a8991", + SubchannelMD5 = "3546cc3e1b2b3898de5a03083af9d6ee", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4652, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4653, + End = 13804, + Pregap = 151, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13805, + End = 36684, + Pregap = 70, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36685, + End = 54988, + Pregap = 4500, + Flags = 8 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_cdr_incd_finalized.aif", + MediaType = MediaType.CDR, + Sectors = 350134, + SectorSize = 2048, + MD5 = "edc146b00d622f92c6a9bb4648cbea82", + LongMD5 = "6b36340c27d5583e73539175eb87c683", + SubchannelMD5 = "663da762a5bef780d09217fca9d23e08", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 7 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.aif", + MediaType = MediaType.CDR, + Sectors = 59206, + SectorSize = 2352, + MD5 = "2fd88f1e8c21601017c937963d8fe5eb", + LongMD5 = "151e45bd1e949e0416d64eb89f48a55b", + SubchannelMD5 = "9b33f13d1dab986e981ba924797f464a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14255, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14256, + End = 40206, + Pregap = 149, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 40207, + End = 59205, + Pregap = 146, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.aif", + MediaType = MediaType.CD, + Sectors = 329158, + SectorSize = 2352, + MD5 = "fef9ff409aa2643ac0c0649e84346f5f", + LongMD5 = "ef18dc4f63ad59c6294ab09da7704366", + SubchannelMD5 = "aa71734f6385319656e2f1a64af5328b", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.aif", + MediaType = MediaType.CDR, + Sectors = 51168, + SectorSize = 2048, + MD5 = "099011fe470ce7ca0ecb52368cd2efe5", + LongMD5 = "997fa9a35a2c9a6efbbbd55fcc9008f5", + SubchannelMD5 = "0eecfd65daf8a2aa9fea47cf2072350e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 19386, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19387, + End = 32713, + Pregap = 146, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32714, + End = 45231, + Pregap = 146, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45232, + End = 51167, + Pregap = 146, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.aif", + MediaType = MediaType.CDR, + Sectors = 48794, + SectorSize = 2328, + MD5 = "a5531d15eefe70ff21718b3b5da08255", + LongMD5 = "11a0d9994ee761655ef4d61c6cda99e9", + SubchannelMD5 = "f49e383ccee2f3cb97aeb82fcb4fdb18", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1107, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1108, + End = 48793, + Pregap = 144, + Flags = 4 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Alcohol120.cs b/Aaru.Tests/Images/Alcohol120.cs index bee0be80b..2042478c8 100644 --- a/Aaru.Tests/Images/Alcohol120.cs +++ b/Aaru.Tests/Images/Alcohol120.cs @@ -36,1918 +36,1848 @@ namespace Aaru.Tests.Images [TestFixture] public class Alcohol120 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.mds", "gigarec.mds", "jaguarcd.mds", "pcengine.mds", "pcfx.mds", - "report_audiocd.mds", "report_cdr.mds", "report_cdrom.mds", "report_cdrw_12x.mds", "report_cdrw_2x.mds", - "report_cdrw_4x.mds", "report_dvd+r-dl.mds", "report_dvd+r.mds", "report_dvd-r.mds", "report_dvdrom.mds", - "report_dvd+rw.mds", "report_dvd-rw.mds", "report_enhancedcd.mds", "test_all_tracks_are_track_1.mds", - "test_audiocd_cdtext.mds", "test_castrated_leadout.mds", "test_data_track_as_audio_fixed_sub.mds", - "test_data_track_as_audio.mds", "test_enhancedcd.mds", "test_incd_udf200_finalized.mds", - "test_multi_karaoke_sampler.mds", "test_multiple_indexes.mds", "test_multisession_dvd+r.mds", - "test_multisession_dvd-r.mds", "test_multisession.mds", "test_track0_in_session2.mds", - "test_track111_in_session2_fixed_sub.mds", "test_track111_in_session2.mds", "test_track1_2_9_fixed_sub.mds", - "test_track1_2_9.mds", "test_track2_inside_leadout.mds", "test_track2_inside_session2_leadin.mds", - "test_track2_inside_track1.mds", "test_videocd.mds" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.mds - 279300, - - // gigarec.mds - 469652, - - // jaguarcd.mds - 243587, - - // pcengine.mds - 160956, - - // pcfx.mds - 246680, - - // report_audiocd.mds - 247073, - - // report_cdr.mds - 254265, - - // report_cdrom.mds - 254265, - - // report_cdrw_12x.mds - 308224, - - // report_cdrw_2x.mds - 308224, - - // report_cdrw_4x.mds - 254265, - - // report_dvd+r-dl.mds - 3455936, - - // report_dvd+r.mds - 2146368, - - // report_dvd-r.mds - 2146368, - - // report_dvdrom.mds - 2146368, - - // report_dvd+rw.mds - 2295104, - - // report_dvd-rw.mds - 2146368, - - // report_enhancedcd.mds - 303316, - - // test_all_tracks_are_track_1.mds - 51078, - - // test_audiocd_cdtext.mds - 277696, - - // test_castrated_leadout.mds - 1050, - - // test_data_track_as_audio_fixed_sub.mds - 62385, - - // test_data_track_as_audio.mds - 62385, - - // test_enhancedcd.mds - 59206, - - // test_incd_udf200_finalized.mds - 350134, - - // test_multi_karaoke_sampler.mds - 329158, - - // test_multiple_indexes.mds - 65536, - - // test_multisession_dvd+r.mds - 230624, - - // test_multisession_dvd-r.mds - 257264, - - // test_multisession.mds - 51168, - - // test_track0_in_session2.mds - 25539, - - // test_track111_in_session2_fixed_sub.mds - 25539, - - // test_track111_in_session2.mds - 25539, - - // test_track1_2_9_fixed_sub.mds - 25539, - - // test_track1_2_9.mds - 25539, - - // test_track2_inside_leadout.mds - 25539, - - // test_track2_inside_session2_leadin.mds - 62385, - - // test_track2_inside_track1.mds - 62385, - - // test_videocd.mds - 48794 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.mds - MediaType.CDDA, - - // gigarec.mds - MediaType.CDR, - - // jaguarcd.mds - MediaType.CDDA, - - // pcengine.mds - MediaType.CD, - - // pcfx.mds - MediaType.CD, - - // report_audiocd.mds - MediaType.CDDA, - - // report_cdr.mds - MediaType.CDR, - - // report_cdrom.mds - MediaType.CDROM, - - // report_cdrw_12x.mds - MediaType.CDRW, - - // report_cdrw_2x.mds - MediaType.CDRW, - - // report_cdrw_4x.mds - MediaType.CDRW, - - // report_dvd+r-dl.mds - MediaType.DVDROM, - - // report_dvd+r.mds - MediaType.DVDROM, - - // report_dvd-r.mds - MediaType.DVDROM, - - // report_dvdrom.mds - MediaType.DVDROM, - - // report_dvd+rw.mds - MediaType.DVDROM, - - // report_dvd-rw.mds - MediaType.DVDROM, - - // report_enhancedcd.mds - MediaType.CDPLUS, - - // test_all_tracks_are_track_1.mds - MediaType.CDR, - - // test_audiocd_cdtext.mds - MediaType.CDR, - - // test_castrated_leadout.mds - MediaType.CDR, - - // test_data_track_as_audio_fixed_sub.mds - MediaType.CDR, - - // test_data_track_as_audio.mds - MediaType.CDR, - - // test_enhancedcd.mds - MediaType.CDR, - - // test_incd_udf200_finalized.mds - MediaType.CDR, - - // test_multi_karaoke_sampler.mds - MediaType.CDROMXA, - - // test_multiple_indexes.mds - MediaType.CDR, - - // test_multisession_dvd+r.mds - MediaType.DVDROM, - - // test_multisession_dvd-r.mds - MediaType.DVDROM, - - // test_multisession.mds - MediaType.CDR, - - // test_track0_in_session2.mds - MediaType.CDR, - - // test_track111_in_session2_fixed_sub.mds - MediaType.CDR, - - // test_track111_in_session2.mds - MediaType.CDR, - - // test_track1_2_9_fixed_sub.mds - MediaType.CDR, - - // test_track1_2_9.mds - MediaType.CDR, - - // test_track2_inside_leadout.mds - MediaType.CDR, - - // test_track2_inside_session2_leadin.mds - MediaType.CDR, - - // test_track2_inside_track1.mds - MediaType.CDR, - - // test_videocd.mds - MediaType.CDR - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.mds - "UNKNOWN", - - // gigarec.mds - "dc8aaff9bd1a8a6f642e15bce29cd03e", - - // jaguarcd.mds - "8086a3654d6dede562621d24ae18729e", - - // pcengine.mds - "0dac1b20a9dc65c4ed1b11f6160ed983", - - // pcfx.mds - "bc514cb4f3c7e2ee6857b2a3d470278b", - - // report_audiocd.mds - "ff35cfa013871b322ef54612e719c185", - - // report_cdr.mds - "016e9431ca3161d427b29dbc1312a232", - - // report_cdrom.mds - "016e9431ca3161d427b29dbc1312a232", - - // report_cdrw_12x.mds - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // report_cdrw_2x.mds - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // report_cdrw_4x.mds - "fe67ffb95da123e060a1c4d278df3c5a", - - // report_dvd+r-dl.mds - "692148a01b4204160b088141fb52bd70", - - // report_dvd+r.mds - "32746029d25e430cd50c464232536d1a", - - // report_dvd-r.mds - "c20217c0356fcd074c33b5f4b1355914", - - // report_dvdrom.mds - "0a49394278360f737a22e48ef125d7cd", - - // report_dvd+rw.mds - "2022eaeb9ccda7532d981c5e22cc9bec", - - // report_dvd-rw.mds - "4844a94a97027b0fea664a1fba3ecbb2", - - // report_enhancedcd.mds - "dfd6c0bd02c19145b2a64d8a15912302", - - // test_all_tracks_are_track_1.mds - "UNKNOWN", - - // test_audiocd_cdtext.mds - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_castrated_leadout.mds - "UNKNOWN", - - // test_data_track_as_audio_fixed_sub.mds - "d9d46cae2a3a46316c8e1411e84d40ef", - - // test_data_track_as_audio.mds - "d9d46cae2a3a46316c8e1411e84d40ef", - - // test_enhancedcd.mds - "eb672b8110c73e4df86fc61bfb37f188", - - // test_incd_udf200_finalized.mds - "f95d6f978ddb4f98bbffda403f627fe1", - - // test_multi_karaoke_sampler.mds - "1731384a29149b7e6f4c0d0d07f178ca", - - // test_multiple_indexes.mds - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession_dvd+r.mds - "020993315e49ab0d36bc7248819162ea", - - // test_multisession_dvd-r.mds - "dff8f2107a4ea9633a88ce38ff609b8e", - - // test_multisession.mds - "f793fecc486a83cbe05b51c2d98059b9", - - // test_track0_in_session2.mds - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track111_in_session2_fixed_sub.mds - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track111_in_session2.mds - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track1_2_9_fixed_sub.mds - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track1_2_9.mds - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track2_inside_leadout.mds - "UNKNOWN", - - // test_track2_inside_session2_leadin.mds - "6fa06c10561343438736a8d3d9a965ea", - - // test_track2_inside_track1.mds - "6fa06c10561343438736a8d3d9a965ea", - - // test_videocd.mds - "ec7c86e6cfe5f965faa2488ae940e15a" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.mds - "UNKNOWN", - - // gigarec.mds - "1ba5f0fb9f3572197a8d039fd341c0aa", - - // jaguarcd.mds - "8086a3654d6dede562621d24ae18729e", - - // pcengine.mds - "f1c1dbe1cd9df11fe2c1f0a97130c25f", - - // pcfx.mds - "dac5dc0961fa435da3c7d433477cda1a", - - // report_audiocd.mds - "ff35cfa013871b322ef54612e719c185", - - // report_cdr.mds - "6b4e35ec371770751f26163629253015", - - // report_cdrom.mds - "6b4e35ec371770751f26163629253015", - - // report_cdrw_12x.mds - "a1890f71563eb9907e4a08fef6afd6bf", - - // report_cdrw_2x.mds - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_cdrw_4x.mds - "9c13c4f7dcb76feae684ba9a368094c5", - - // report_dvd+r-dl.mds - "692148a01b4204160b088141fb52bd70", - - // report_dvd+r.mds - "32746029d25e430cd50c464232536d1a", - - // report_dvd-r.mds - "c20217c0356fcd074c33b5f4b1355914", - - // report_dvdrom.mds - "0a49394278360f737a22e48ef125d7cd", - - // report_dvd+rw.mds - "2022eaeb9ccda7532d981c5e22cc9bec", - - // report_dvd-rw.mds - "4844a94a97027b0fea664a1fba3ecbb2", - - // report_enhancedcd.mds - "0038395e272242a29e84a1fb34a3a15e", - - // test_all_tracks_are_track_1.mds - "UNKNOWN", - - // test_audiocd_cdtext.mds - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_castrated_leadout.mds - "UNKNOWN", - - // test_data_track_as_audio_fixed_sub.mds - "b3550e61649ba5276fed8d74f8e512ee", - - // test_data_track_as_audio.mds - "b3550e61649ba5276fed8d74f8e512ee", - - // test_enhancedcd.mds - "842a9a248396018ddfbfd90785c3f0ce", - - // test_incd_udf200_finalized.mds - "6751e0ae7821f92221672b1cd5a1ff36", - - // test_multi_karaoke_sampler.mds - "efe2b3fe51022ef8e0a62587294d1d9c", - - // test_multiple_indexes.mds - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession_dvd+r.mds - "020993315e49ab0d36bc7248819162ea", - - // test_multisession_dvd-r.mds - "dff8f2107a4ea9633a88ce38ff609b8e", - - // test_multisession.mds - "199b85a01c27f55f463fc7d606adfafa", - - // test_track0_in_session2.mds - "3b3172070738044417ae5284195acbfd", - - // test_track111_in_session2_fixed_sub.mds - "396f86cdd8bfb012b68eabd5a94f604b", - - // test_track111_in_session2.mds - "76175679c852073137299c5ca7b113e4", - - // test_track1_2_9_fixed_sub.mds - "6ff84bf8ecf2624fbaba37df08462294", - - // test_track1_2_9.mds - "3b3172070738044417ae5284195acbfd", - - // test_track2_inside_leadout.mds - "UNKNOWN", - - // test_track2_inside_session2_leadin.mds - "608a73cd10bccdadde68523aead1ee72", - - // test_track2_inside_track1.mds - "c82d20702d31bc15bdc91f7e107862ae", - - // test_videocd.mds - "4a045788e69965efe0c87950d013e720" - }; - - public override string[] _subchannelMd5S => new[] - { - // cdiready_the_apprentice.mds - "UNKNOWN", - - // gigarec.mds - "95ef603d7dc9e285929cbf3c79ba9db2", - - // jaguarcd.mds - "83ec1010fc44694d69dc48bacec5481a", - - // pcengine.mds - "9e9a6b51bc2e5ec67400cb33ad0ca33f", - - // pcfx.mds - "e3a0d78b6c32f5795b1b513bd13a6bda", - - // report_audiocd.mds - "9da6ad8f6f0cadd92509c10809da7296", - - // report_cdr.mds - "6ea1db8638c111b7fd45b35a138d24fe", - - // report_cdrom.mds - "1994c303674718c74b35f9a4ea1d3515", - - // report_cdrw_12x.mds - "337aefffca57a2d0222dabd8989f0b3f", - - // report_cdrw_2x.mds - "6fe81a972e750c68e08f6935e4d91e34", - - // report_cdrw_4x.mds - "e4095cb91fa40382dcadc22433b281c3", - - // report_dvd+r-dl.mds - null, - - // report_dvd+r.mds - null, - - // report_dvd-r.mds - null, - - // report_dvdrom.mds - null, - - // report_dvd+rw.mds - null, - - // report_dvd-rw.mds - null, - - // report_enhancedcd.mds - "e6f7319532f46c3fa4fd3569c65546e1", - - // test_all_tracks_are_track_1.mds - "UNKNOWN", - - // test_audiocd_cdtext.mds - "ca781a7afc4eb77c51f7c551ed45c03c", - - // test_castrated_leadout.mds - "UNKNOWN", - - // test_data_track_as_audio_fixed_sub.mds - "77778d0e72a499b6c22f75df11a8d97f", - - // test_data_track_as_audio.mds - "5479a1115bb6481db69fd6262e8c6076", - - // test_enhancedcd.mds - "fa2c839e1d7fedd1f4e853f682d3bf51", - - // test_incd_udf200_finalized.mds - "65f938f7f9ac34fabd3ab94c14eb76b5", - - // test_multi_karaoke_sampler.mds - "f8c96f120cac18c52178b99ef4c4e2a9", - - // test_multiple_indexes.mds - "25bae9e30657e2f64a45e5f690e3ae9e", - - // test_multisession_dvd+r.mds - null, - - // test_multisession_dvd-r.mds - null, - - // test_multisession.mds - "48656afdbc40b6df06486a04a4d62401", - - // test_track0_in_session2.mds - "7eedb60edb3dc77eac41fd8f2214dfb8", - - // test_track111_in_session2_fixed_sub.mds - "c81a161af0fcd01dfd340290178a32fd", - - // test_track111_in_session2.mds - "8a3b37786d5276529c8cdbbf57e2d528", - - // test_track1_2_9_fixed_sub.mds - "b6051aa115a91c08de0ffc47ca64275e", - - // test_track1_2_9.mds - "ee1a81152b386347dc656697d8f50ab9", - - // test_track2_inside_leadout.mds - "UNKNOWN", - - // test_track2_inside_session2_leadin.mds - "933f1699ba88a70aff5062f9626ef529", - - // test_track2_inside_track1.mds - "d8eed571f137c92f22bb858d78fc1e41", - - // test_videocd.mds - "935a91f5850352818d92b71f1c87c393" - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.mds - 22, - - // gigarec.mds - 1, - - // jaguarcd.mds - 11, - - // pcengine.mds - 16, - - // pcfx.mds - 8, - - // report_audiocd.mds - 14, - - // report_cdr.mds - 1, - - // report_cdrom.mds - 1, - - // report_cdrw_12x.mds - 1, - - // report_cdrw_2x.mds - 1, - - // report_cdrw_4x.mds - 1, - - // report_dvd+r-dl.mds - 1, - - // report_dvd+r.mds - 1, - - // report_dvd-r.mds - 1, - - // report_dvdrom.mds - 1, - - // report_dvd+rw.mds - 1, - - // report_dvd-rw.mds - 1, - - // report_enhancedcd.mds - 14, - - // test_all_tracks_are_track_1.mds - 2, - - // test_audiocd_cdtext.mds - 11, - - // test_castrated_leadout.mds - 11, - - // test_data_track_as_audio_fixed_sub.mds - 2, - - // test_data_track_as_audio.mds - 2, - - // test_enhancedcd.mds - 3, - - // test_incd_udf200_finalized.mds - 1, - - // test_multi_karaoke_sampler.mds - 16, - - // test_multiple_indexes.mds - 5, - - // test_multisession_dvd+r.mds - // Alcohol does not detect multiple tracks or sessions in recordable DVDs - 1, - - // test_multisession_dvd-r.mds - // Alcohol does not detect multiple tracks or sessions in recordable DVDs - 1, - - // test_multisession.mds - 4, - - // test_track0_in_session2.mds - // Alcohol did not detect the second session - 1, - - // test_track111_in_session2_fixed_sub.mds - // Alcohol did not detect the second session - 1, - - // test_track111_in_session2.mds - // Alcohol did not detect the second session - 1, - - // test_track1_2_9_fixed_sub.mds - // Alcohol did not detect the second session - 2, - - // test_track1_2_9.mds - // Alcohol did not detect the second session - 2, - - // test_track2_inside_leadout.mds - // Alcohol did not detect the second session - 2, - - // test_track2_inside_session2_leadin.mds - 3, - - // test_track2_inside_track1.mds - 3, - - // test_videocd.mds - 2 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // gigarec.mds - new[] - { - 1 - }, - - // jaguarcd.mds - new[] - { - 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // pcengine.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.mds - new[] - { - 1 - }, - - // report_cdrom.mds - new[] - { - 1 - }, - - // report_cdrw_12x.mds - new[] - { - 1 - }, - - // report_cdrw_2x.mds - new[] - { - 1 - }, - - // report_cdrw_4x.mds - new[] - { - 1 - }, - - // report_dvd+r-dl.mds - new[] - { - 1 - }, - - // report_dvd+r.mds - new[] - { - 1 - }, - - // report_dvd-r.mds - new[] - { - 1 - }, - - // report_dvdrom.mds - new[] - { - 1 - }, - - // report_dvd+rw.mds - new[] - { - 1 - }, - - // report_dvd-rw.mds - new[] - { - 1 - }, - - // report_enhancedcd.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_all_tracks_are_track_1.mds - new[] - { - 1, 2 - }, - - // test_audiocd_cdtext.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_castrated_leadout.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_data_track_as_audio_fixed_sub.mds - new[] - { - 1, 2 - }, - - // test_data_track_as_audio.mds - new[] - { - 1, 2 - }, - - // test_enhancedcd.mds - new[] - { - 1, 1, 2 - }, - - // test_incd_udf200_finalized.mds - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.mds - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession_dvd+r.mds - new[] - { - 1 - }, - - // test_multisession_dvd-r.mds - new[] - { - 1 - }, - - // test_multisession.mds - new[] - { - 1, 2, 3, 4 - }, - - // test_track0_in_session2.mds - new[] - { - 1 - }, - - // test_track111_in_session2_fixed_sub.mds - new[] - { - 1 - }, - - // test_track111_in_session2.mds - new[] - { - 1 - }, - - // test_track1_2_9_fixed_sub.mds - new[] - { - 1, 1 - }, - - // test_track1_2_9.mds - new[] - { - 1, 1 - }, - - // test_track2_inside_leadout.mds - new[] - { - 1, 1 - }, - - // test_track2_inside_session2_leadin.mds - new[] - { - 1, 1, 1 - }, - - // test_track2_inside_track1.mds - new[] - { - 1, 1, 1 - }, - - // test_videocd.mds - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.mds - new ulong[] - { - 69150, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // gigarec.mds - new ulong[] - { - 0 - }, - - // jaguarcd.mds - new ulong[] - { - 0, 27640, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.mds - new ulong[] - { - 0, 3590, 38614, 47217, 53501, 61819, 68563, 75397, 83130, 86481, 91267, 99274, 106693, 112238, 120270, - 126229 - }, - - // pcfx.mds - new ulong[] - { - 0, 4395, 4909, 5941, 42059, 220795, 225646, 235498 - }, - - // report_audiocd.mds - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdr.mds - new ulong[] - { - 0 - }, - - // report_cdrom.mds - new ulong[] - { - 0 - }, - - // report_cdrw_12x.mds - new ulong[] - { - 0 - }, - - // report_cdrw_2x.mds - new ulong[] - { - 0 - }, - - // report_cdrw_4x.mds - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.mds - new ulong[] - { - 0 - }, - - // report_dvd+r.mds - new ulong[] - { - 0 - }, - - // report_dvd-r.mds - new ulong[] - { - 0 - }, - - // report_dvdrom.mds - new ulong[] - { - 0 - }, - - // report_dvd+rw.mds - new ulong[] - { - 0 - }, - - // report_dvd-rw.mds - new ulong[] - { - 0 - }, - - // report_enhancedcd.mds - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234180 - }, - - // test_all_tracks_are_track_1.mds - new ulong[] - { - 0, 25539 - }, - - // test_audiocd_cdtext.mds - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_castrated_leadout.mds - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_data_track_as_audio_fixed_sub.mds - new ulong[] - { - 0, 36939 - }, - - // test_data_track_as_audio.mds - new ulong[] - { - 0, 36939 - }, - - // test_enhancedcd.mds - new ulong[] - { - 0, 14405, 40353 - }, - - // test_incd_udf200_finalized.mds - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.mds - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.mds - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession_dvd+r.mds - new ulong[] - { - 0 - }, - - // test_multisession_dvd-r.mds - new ulong[] - { - 0 - }, - - // test_multisession.mds - new ulong[] - { - 0, 19533, 32860, 45378 - }, - - // test_track0_in_session2.mds - new ulong[] - { - 0 - }, - - // test_track111_in_session2_fixed_sub.mds - new ulong[] - { - 0 - }, - - // test_track111_in_session2.mds - new ulong[] - { - 0 - }, - - // test_track1_2_9_fixed_sub.mds - new ulong[] - { - 0, 13350 - }, - - // test_track1_2_9.mds - new ulong[] - { - 0, 13350 - }, - - // test_track2_inside_leadout.mds - new ulong[] - { - 0, 62385 - }, - - // test_track2_inside_session2_leadin.mds - new ulong[] - { - 0, 25500, 36939 - }, - - // test_track2_inside_track1.mds - new ulong[] - { - 0, 13350, 36939 - }, - - // test_videocd.mds - new ulong[] - { - 0, 1252 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.mds - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 279299 - }, - - // gigarec.mds - new ulong[] - { - 469651 - }, - - // jaguarcd.mds - new ulong[] - { - 16239, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.mds - new ulong[] - { - 3439, 38463, 47216, 53500, 61818, 68562, 75396, 83129, 86480, 91266, 99273, 106692, 112237, 120269, - 126078, 160955 - }, - - // pcfx.mds - new ulong[] - { - 4244, 4908, 5940, 42058, 220644, 225645, 235497, 246679 - }, - - // report_audiocd.mds - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdr.mds - new ulong[] - { - 254264 - }, - - // report_cdrom.mds - new ulong[] - { - 254264 - }, - - // report_cdrw_12x.mds - new ulong[] - { - 308223 - }, - - // report_cdrw_2x.mds - new ulong[] - { - 308223 - }, - - // report_cdrw_4x.mds - new ulong[] - { - 254264 - }, - - // report_dvd+r-dl.mds - new ulong[] - { - 3455935 - }, - - // report_dvd+r.mds - new ulong[] - { - 2146367 - }, - - // report_dvd-r.mds - new ulong[] - { - 2146367 - }, - - // report_dvdrom.mds - new ulong[] - { - 2146367 - }, - - // report_dvd+rw.mds - new ulong[] - { - 2295103 - }, - - // report_dvd-rw.mds - new ulong[] - { - 2146367 - }, - - // report_enhancedcd.mds - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 222779, - 303315 - }, - - // test_all_tracks_are_track_1.mds - new ulong[] - { - 25538, 51077 - }, - - // test_audiocd_cdtext.mds - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_castrated_leadout.mds - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 1049 - }, - - // test_data_track_as_audio_fixed_sub.mds - new ulong[] - { - 25538, 62384 - }, - - // test_data_track_as_audio.mds - new ulong[] - { - 25538, 62384 - }, - - // test_enhancedcd.mds - new ulong[] - { - 14404, 28952, 59205 - }, - - // test_incd_udf200_finalized.mds - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.mds - new ulong[] - { - 1736, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.mds - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession_dvd+r.mds - new ulong[] - { - 230623 - }, - - // test_multisession_dvd-r.mds - new ulong[] - { - 257263 - }, - - // test_multisession.mds - new ulong[] - { - 8132, 25959, 38477, 51167 - }, - - // test_track0_in_session2.mds - new ulong[] - { - 25538 - }, - - // test_track111_in_session2_fixed_sub.mds - new ulong[] - { - 25538 - }, - - // test_track111_in_session2.mds - new ulong[] - { - 25538 - }, - - // test_track1_2_9_fixed_sub.mds - new ulong[] - { - 13349, 25538 - }, - - // test_track1_2_9.mds - new ulong[] - { - 13349, 25538 - }, - - // test_track2_inside_leadout.mds - new ulong[] - { - 62234, 25538 - }, - - // test_track2_inside_session2_leadin.mds - new ulong[] - { - 25499, 25538, 62384 - }, - - // test_track2_inside_track1.mds - new ulong[] - { - 13349, 25538, 62384 - }, - - // test_videocd.mds - new ulong[] - { - 1101, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.mds - new ulong[] - { - 69300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // gigarec.mds - new ulong[] - { - 150 - }, - - // jaguarcd.mds - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.mds - new ulong[] - { - 150, 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // pcfx.mds - new ulong[] - { - 150, 150, 0, 0, 0, 150, 0, 0 - }, - - // report_audiocd.mds - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.mds - new ulong[] - { - 150 - }, - - // report_cdrom.mds - new ulong[] - { - 150 - }, - - // report_cdrw_12x.mds - new ulong[] - { - 150 - }, - - // report_cdrw_2x.mds - new ulong[] - { - 150 - }, - - // report_cdrw_4x.mds - new ulong[] - { - 150 - }, - - // report_dvd+r-dl.mds - new ulong[] - { - 0 - }, - - // report_dvd+r.mds - new ulong[] - { - 0 - }, - - // report_dvd-r.mds - new ulong[] - { - 0 - }, - - // report_dvdrom.mds - new ulong[] - { - 0 - }, - - // report_dvd+rw.mds - new ulong[] - { - 0 - }, - - // report_dvd-rw.mds - new ulong[] - { - 0 - }, - - // report_enhancedcd.mds - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_all_tracks_are_track_1.mds - new ulong[] - { - 150, 150 - }, - - // test_audiocd_cdtext.mds - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_castrated_leadout.mds - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_data_track_as_audio_fixed_sub.mds - new ulong[] - { - 150, 150 - }, - - // test_data_track_as_audio.mds - new ulong[] - { - 150, 150 - }, - - // test_enhancedcd.mds - new ulong[] - { - 150, 0, 150 - }, - - // test_incd_udf200_finalized.mds - new ulong[] - { - 150 - }, - - // test_multi_karaoke_sampler.mds - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.mds - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession_dvd+r.mds - new ulong[] - { - 0 - }, - - // test_multisession_dvd-r.mds - new ulong[] - { - 0 - }, - - // test_multisession.mds - new ulong[] - { - 150, 150, 150, 150 - }, - - // test_track0_in_session2.mds - new ulong[] - { - 150 - }, - - // test_track111_in_session2_fixed_sub.mds - new ulong[] - { - 150 - }, - - // test_track111_in_session2.mds - new ulong[] - { - 150 - }, - - // test_track1_2_9_fixed_sub.mds - new ulong[] - { - 150, 0 - }, - - // test_track1_2_9.mds - new ulong[] - { - 150, 0 - }, - - // test_track2_inside_leadout.mds - new ulong[] - { - 150, 150 - }, - - // test_track2_inside_session2_leadin.mds - new ulong[] - { - 150, 0, 150 - }, - - // test_track2_inside_track1.mds - new ulong[] - { - 150, 0, 150 - }, - - // test_videocd.mds - new ulong[] - { - 150, 150 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.mds - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // gigarec.mds - new byte[] - { - 4 - }, - - // jaguarcd.mds - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.mds - new byte[] - { - 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // pcfx.mds - new byte[] - { - 0, 4, 4, 4, 4, 0, 0, 0 - }, - - // report_audiocd.mds - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.mds - new byte[] - { - 4 - }, - - // report_cdrom.mds - new byte[] - { - 4 - }, - - // report_cdrw_12x.mds - new byte[] - { - 4 - }, - - // report_cdrw_2x.mds - new byte[] - { - 4 - }, - - // report_cdrw_4x.mds - new byte[] - { - 4 - }, - - // report_dvd+r-dl.mds - null, - - // report_dvd+r.mds - null, - - // report_dvd-r.mds - null, - - // report_dvdrom.mds - null, - - // report_dvd+rw.mds - null, - - // report_dvd-rw.mds - null, - - // report_enhancedcd.mds - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // test_all_tracks_are_track_1.mds - new byte[] - { - 4, 4 - }, - - // test_audiocd_cdtext.mds - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_castrated_leadout.mds - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_data_track_as_audio_fixed_sub.mds - new byte[] - { - 4, 2 - }, - - // test_data_track_as_audio.mds - new byte[] - { - 4, 2 - }, - - // test_enhancedcd.mds - new byte[] - { - 0, 0, 4 - }, - - // test_incd_udf200_finalized.mds - new byte[] - { - 7 - }, - - // test_multi_karaoke_sampler.mds - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.mds - new byte[] - { - 2, 0, 0, 8, 1 - }, - - // test_multisession_dvd+r.mds - null, - - // test_multisession_dvd-r.mds - null, // test_multisession.mds - new byte[] - { - 4, 4, 4, 4 - }, - - // test_track0_in_session2.mds - new byte[] - { - 4 - }, - - // test_track111_in_session2_fixed_sub.mds - new byte[] - { - 4 - }, - - // test_track111_in_session2.mds - new byte[] - { - 4 - }, - - // test_track1_2_9_fixed_sub.mds - new byte[] - { - 4, 4 - }, - - // test_track1_2_9.mds - new byte[] - { - 4, 4 - }, - - // test_track2_inside_leadout.mds - new byte[] - { - 4, 4 - }, - - // test_track2_inside_session2_leadin.mds - new byte[] - { - 4, 4, 4 - }, - - // test_track2_inside_track1.mds - new byte[] - { - 4, 4, 4 - }, - - // test_videocd.mds - new byte[] - { - 4, 4 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Alcohol 120%"); public override IMediaImage _plugin => new DiscImages.Alcohol120(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.mds", + MediaType = MediaType.CDDA, + Sectors = 279300, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88799, + Pregap = 69300, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279299, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "gigarec.mds", + MediaType = MediaType.CDR, + Sectors = 469652, + MD5 = "dc8aaff9bd1a8a6f642e15bce29cd03e", + LongMD5 = "1ba5f0fb9f3572197a8d039fd341c0aa", + SubchannelMD5 = "95ef603d7dc9e285929cbf3c79ba9db2", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 469651, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.mds", + MediaType = MediaType.CDDA, + Sectors = 243587, + MD5 = "8086a3654d6dede562621d24ae18729e", + LongMD5 = "8086a3654d6dede562621d24ae18729e", + SubchannelMD5 = "83ec1010fc44694d69dc48bacec5481a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16239, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 27640, + End = 28236, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.mds", + MediaType = MediaType.CD, + Sectors = 160956, + MD5 = "0dac1b20a9dc65c4ed1b11f6160ed983", + LongMD5 = "f1c1dbe1cd9df11fe2c1f0a97130c25f", + SubchannelMD5 = "9e9a6b51bc2e5ec67400cb33ad0ca33f", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3439, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3590, + End = 38463, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38614, + End = 47216, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47217, + End = 53500, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53501, + End = 61818, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61819, + End = 68562, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68563, + End = 75396, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75397, + End = 83129, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 83130, + End = 86480, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86481, + End = 91266, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 91267, + End = 99273, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99274, + End = 106692, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106693, + End = 112237, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112238, + End = 120269, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 120270, + End = 126078, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126229, + End = 160955, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.mds", + MediaType = MediaType.CD, + Sectors = 246680, + MD5 = "bc514cb4f3c7e2ee6857b2a3d470278b", + LongMD5 = "dac5dc0961fa435da3c7d433477cda1a", + SubchannelMD5 = "e3a0d78b6c32f5795b1b513bd13a6bda", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4244, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4395, + End = 4908, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4909, + End = 5940, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5941, + End = 42058, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 42059, + End = 220644, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220795, + End = 225645, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225646, + End = 235497, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235498, + End = 246679, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.mds", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "ff35cfa013871b322ef54612e719c185", + LongMD5 = "ff35cfa013871b322ef54612e719c185", + SubchannelMD5 = "9da6ad8f6f0cadd92509c10809da7296", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.mds", + MediaType = MediaType.CDR, + Sectors = 254265, + MD5 = "016e9431ca3161d427b29dbc1312a232", + LongMD5 = "6b4e35ec371770751f26163629253015", + SubchannelMD5 = "6ea1db8638c111b7fd45b35a138d24fe", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.mds", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "016e9431ca3161d427b29dbc1312a232", + LongMD5 = "6b4e35ec371770751f26163629253015", + SubchannelMD5 = "1994c303674718c74b35f9a4ea1d3515", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_12x.mds", + MediaType = MediaType.CDRW, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "a1890f71563eb9907e4a08fef6afd6bf", + SubchannelMD5 = "337aefffca57a2d0222dabd8989f0b3f", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_2x.mds", + MediaType = MediaType.CDRW, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + SubchannelMD5 = "6fe81a972e750c68e08f6935e4d91e34", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_4x.mds", + MediaType = MediaType.CDRW, + Sectors = 254265, + MD5 = "fe67ffb95da123e060a1c4d278df3c5a", + LongMD5 = "9c13c4f7dcb76feae684ba9a368094c5", + SubchannelMD5 = "e4095cb91fa40382dcadc22433b281c3", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r-dl.mds", + MediaType = MediaType.DVDROM, + Sectors = 3455936, + MD5 = "692148a01b4204160b088141fb52bd70", + LongMD5 = "692148a01b4204160b088141fb52bd70", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3455935, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r.mds", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + MD5 = "32746029d25e430cd50c464232536d1a", + LongMD5 = "32746029d25e430cd50c464232536d1a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-r.mds", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + MD5 = "c20217c0356fcd074c33b5f4b1355914", + LongMD5 = "c20217c0356fcd074c33b5f4b1355914", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdrom.mds", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + MD5 = "0a49394278360f737a22e48ef125d7cd", + LongMD5 = "0a49394278360f737a22e48ef125d7cd", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+rw.mds", + MediaType = MediaType.DVDROM, + Sectors = 2295104, + MD5 = "2022eaeb9ccda7532d981c5e22cc9bec", + LongMD5 = "2022eaeb9ccda7532d981c5e22cc9bec", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2295103, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-rw.mds", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + MD5 = "4844a94a97027b0fea664a1fba3ecbb2", + LongMD5 = "4844a94a97027b0fea664a1fba3ecbb2", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.mds", + MediaType = MediaType.CDPLUS, + Sectors = 303316, + MD5 = "dfd6c0bd02c19145b2a64d8a15912302", + LongMD5 = "0038395e272242a29e84a1fb34a3a15e", + SubchannelMD5 = "e6f7319532f46c3fa4fd3569c65546e1", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 222779, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234180, + End = 303315, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_all_tracks_are_track_1.mds", + MediaType = MediaType.CDR, + Sectors = 51078, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 25539, + End = 51077, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.mds", + MediaType = MediaType.CDR, + Sectors = 277696, + MD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + LongMD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + SubchannelMD5 = "ca781a7afc4eb77c51f7c551ed45c03c", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 0, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_castrated_leadout.mds", + MediaType = MediaType.CDR, + Sectors = 1050, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 1049, + Pregap = 0, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio_fixed_sub.mds", + MediaType = MediaType.CDR, + Sectors = 62385, + MD5 = "d9d46cae2a3a46316c8e1411e84d40ef", + LongMD5 = "b3550e61649ba5276fed8d74f8e512ee", + SubchannelMD5 = "77778d0e72a499b6c22f75df11a8d97f", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio.mds", + MediaType = MediaType.CDR, + Sectors = 62385, + MD5 = "d9d46cae2a3a46316c8e1411e84d40ef", + LongMD5 = "b3550e61649ba5276fed8d74f8e512ee", + SubchannelMD5 = "5479a1115bb6481db69fd6262e8c6076", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.mds", + MediaType = MediaType.CDR, + Sectors = 59206, + MD5 = "eb672b8110c73e4df86fc61bfb37f188", + LongMD5 = "842a9a248396018ddfbfd90785c3f0ce", + SubchannelMD5 = "fa2c839e1d7fedd1f4e853f682d3bf51", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14404, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14405, + End = 28952, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 40353, + End = 59205, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.mds", + MediaType = MediaType.CDR, + Sectors = 350134, + MD5 = "f95d6f978ddb4f98bbffda403f627fe1", + LongMD5 = "6751e0ae7821f92221672b1cd5a1ff36", + SubchannelMD5 = "65f938f7f9ac34fabd3ab94c14eb76b5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 7 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.mds", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "1731384a29149b7e6f4c0d0d07f178ca", + LongMD5 = "efe2b3fe51022ef8e0a62587294d1d9c", + SubchannelMD5 = "f8c96f120cac18c52178b99ef4c4e2a9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.mds", + MediaType = MediaType.CDR, + Sectors = 65536, + MD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + LongMD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + SubchannelMD5 = "25bae9e30657e2f64a45e5f690e3ae9e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 8 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd+r.mds", + MediaType = MediaType.DVDROM, + Sectors = 230624, + MD5 = "020993315e49ab0d36bc7248819162ea", + LongMD5 = "020993315e49ab0d36bc7248819162ea", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 230623, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd-r.mds", + MediaType = MediaType.DVDROM, + Sectors = 257264, + MD5 = "dff8f2107a4ea9633a88ce38ff609b8e", + LongMD5 = "dff8f2107a4ea9633a88ce38ff609b8e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 257263, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.mds", + MediaType = MediaType.CDR, + Sectors = 51168, + MD5 = "f793fecc486a83cbe05b51c2d98059b9", + LongMD5 = "199b85a01c27f55f463fc7d606adfafa", + SubchannelMD5 = "48656afdbc40b6df06486a04a4d62401", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19533, + End = 25959, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32860, + End = 38477, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45378, + End = 51167, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track0_in_session2.mds", + MediaType = MediaType.CDR, + Sectors = 25539, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "3b3172070738044417ae5284195acbfd", + SubchannelMD5 = "7eedb60edb3dc77eac41fd8f2214dfb8", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track111_in_session2_fixed_sub.mds", + MediaType = MediaType.CDR, + Sectors = 25539, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "396f86cdd8bfb012b68eabd5a94f604b", + SubchannelMD5 = "c81a161af0fcd01dfd340290178a32fd", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track111_in_session2.mds", + MediaType = MediaType.CDR, + Sectors = 25539, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "76175679c852073137299c5ca7b113e4", + SubchannelMD5 = "8a3b37786d5276529c8cdbbf57e2d528", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track1_2_9_fixed_sub.mds", + MediaType = MediaType.CDR, + Sectors = 25539, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "6ff84bf8ecf2624fbaba37df08462294", + SubchannelMD5 = "b6051aa115a91c08de0ffc47ca64275e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13349, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13350, + End = 25538, + Pregap = 0, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track1_2_9.mds", + MediaType = MediaType.CDR, + Sectors = 25539, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "3b3172070738044417ae5284195acbfd", + SubchannelMD5 = "ee1a81152b386347dc656697d8f50ab9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13349, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13350, + End = 25538, + Pregap = 0, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_leadout.mds", + MediaType = MediaType.CDR, + Sectors = 25539, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 62234, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 62385, + End = 25538, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_session2_leadin.mds", + MediaType = MediaType.CDR, + Sectors = 62385, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "608a73cd10bccdadde68523aead1ee72", + SubchannelMD5 = "933f1699ba88a70aff5062f9626ef529", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25499, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 25500, + End = 25538, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_track1.mds", + MediaType = MediaType.CDR, + Sectors = 62385, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "c82d20702d31bc15bdc91f7e107862ae", + SubchannelMD5 = "d8eed571f137c92f22bb858d78fc1e41", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13349, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13350, + End = 25538, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.mds", + MediaType = MediaType.CDR, + Sectors = 48794, + MD5 = "ec7c86e6cfe5f965faa2488ae940e15a", + LongMD5 = "4a045788e69965efe0c87950d013e720", + SubchannelMD5 = "935a91f5850352818d92b71f1c87c393", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1101, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 150, + Flags = 4 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Anex86.cs b/Aaru.Tests/Images/Anex86.cs index e26e68945..c80f0662f 100644 --- a/Aaru.Tests/Images/Anex86.cs +++ b/Aaru.Tests/Images/Anex86.cs @@ -36,39 +36,99 @@ namespace Aaru.Tests.Images [TestFixture] public class Anex86 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "anex86_10mb.hdi.lz", "anex86_15mb.hdi.lz", "anex86_20mb.hdi.lz", "anex86_30mb.hdi.lz", - "anex86_40mb.hdi.lz", "anex86_5mb.hdi.lz", "blank_md2hd.fdi.lz", "msdos33d_md2hd.fdi.lz", - "msdos50_epson_md2hd.fdi.lz", "msdos50_md2hd.fdi.lz", "msdos62_md2hd.fdi.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - 40920, 61380, 81840, 121770, 162360, 20196, 1232, 1232, 1232, 1232, 1232 - }; - - public override uint[] _sectorSize => new uint[] - { - 256, 256, 256, 256, 256, 256, 1024, 1024, 1024, 1024, 1024 - }; - - public override MediaType[] _mediaTypes => new[] - { - MediaType.GENERIC_HDD, MediaType.GENERIC_HDD, MediaType.GENERIC_HDD, MediaType.GENERIC_HDD, - MediaType.GENERIC_HDD, MediaType.GENERIC_HDD, MediaType.NEC_525_HD, MediaType.NEC_525_HD, - MediaType.NEC_525_HD, MediaType.NEC_525_HD, MediaType.NEC_525_HD - }; - - public override string[] _md5S => new[] - { - "1c5387e38e58165c517c059e5d48905d", "a84366658c1c3bd09af4d0d42fbf716e", "919c9eecf1b65b10870f617cb976668a", - "02d35af02581afb2e56792dcaba2c1af", "b8c3f858f1a9d300d3e74f36eea04354", "c348bbbaf99fcb8c8e66de157aef62f4", - "c3587f7020743067cf948c9d5c5edb27", "a23874a4474334b035a24c6924140744", "bc1ef3236e75cb09575037b884ee9dce", - "243036c4617b666a6c886cc23d7274e0", "09bb2ff964a0c5c223a1900f085e3955" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Anex86"); public override IMediaImage _plugin => new DiscImages.Anex86(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "anex86_10mb.hdi.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 40920, + SectorSize = 256, + MD5 = "1c5387e38e58165c517c059e5d48905d" + }, + new BlockImageTestExpected + { + TestFile = "anex86_15mb.hdi.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 61380, + SectorSize = 256, + MD5 = "a84366658c1c3bd09af4d0d42fbf716e" + }, + new BlockImageTestExpected + { + TestFile = "anex86_20mb.hdi.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 81840, + SectorSize = 256, + MD5 = "919c9eecf1b65b10870f617cb976668a" + }, + new BlockImageTestExpected + { + TestFile = "anex86_30mb.hdi.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 121770, + SectorSize = 256, + MD5 = "02d35af02581afb2e56792dcaba2c1af" + }, + new BlockImageTestExpected + { + TestFile = "anex86_40mb.hdi.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 162360, + SectorSize = 256, + MD5 = "b8c3f858f1a9d300d3e74f36eea04354" + }, + new BlockImageTestExpected + { + TestFile = "anex86_5mb.hdi.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 20196, + SectorSize = 256, + MD5 = "c348bbbaf99fcb8c8e66de157aef62f4" + }, + new BlockImageTestExpected + { + TestFile = "blank_md2hd.fdi.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "c3587f7020743067cf948c9d5c5edb27" + }, + new BlockImageTestExpected + { + TestFile = "msdos33d_md2hd.fdi.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "a23874a4474334b035a24c6924140744" + }, + new BlockImageTestExpected + { + TestFile = "msdos50_epson_md2hd.fdi.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "bc1ef3236e75cb09575037b884ee9dce" + }, + new BlockImageTestExpected + { + TestFile = "msdos50_md2hd.fdi.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "243036c4617b666a6c886cc23d7274e0" + }, + new BlockImageTestExpected + { + TestFile = "msdos62_md2hd.fdi.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "09bb2ff964a0c5c223a1900f085e3955" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/AppleDOS/DOS.cs b/Aaru.Tests/Images/AppleDOS/DOS.cs index 44a67666c..614aeeba4 100644 --- a/Aaru.Tests/Images/AppleDOS/DOS.cs +++ b/Aaru.Tests/Images/AppleDOS/DOS.cs @@ -37,110 +37,68 @@ namespace Aaru.Tests.Images.AppleDOS [TestFixture] public class DOS : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "dos33.do.lz", "hfs.do.lz", "pascal800.do.lz", "pascal.do.lz", "prodos800.do.lz", "prodos.do.lz", - "prodosmod.do.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // dos33.do.lz - 560, - - // hfs.do.lz - 560, - - // pascal800.do.lz - 560, - - // pascal.do.lz - 560, - - // prodos800.do.lz - 560, - - // prodos.do.lz - 560, - - // prodosmod.do.lz - 560 - }; - - public override uint[] _sectorSize => new uint[] - { - // dos33.do.lz - 256, - - // hfs.do.lz - 256, - - // pascal800.do.lz - 256, - - // pascal.do.lz - 256, - - // prodos800.do.lz - 256, - - // prodos.do.lz - 256, - - // prodosmod.do.lz - 256 - }; - - public override MediaType[] _mediaTypes => new[] - { - // dos33.do.lz - MediaType.Apple33SS, - - // hfs.do.lz - MediaType.Apple33SS, - - // pascal800.do.lz - MediaType.Apple33SS, - - // pascal.do.lz - MediaType.Apple33SS, - - // prodos800.do.lz - MediaType.Apple33SS, - - // prodos.do.lz - MediaType.Apple33SS, - - // prodosmod.do.lz - MediaType.Apple33SS - }; - - public override string[] _md5S => new[] - { - // dos33.do.lz - "0ffcbd4180306192726926b43755db2f", - - // hfs.do.lz - "ddd04ef378552c789f85382b4f49da06", - - // pascal800.do.lz - "5158e2fe9d8e7ae1f7db73156478e4f4", - - // pascal.do.lz - "4c4926103a32ac15f7e430ec3ced4be5", - - // prodos800.do.lz - "193c5cc22f07e5aeb96eb187cb59c2d9", - - // prodos.do.lz - "23f42e529c9fde2a8033f1bc6a7bca93", - - // prodosmod.do.lz - "a7ec980472c320da5ea6f2f0aec0f502" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Apple DOS Order"); public override IMediaImage _plugin => new AppleDos(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "dos33.do.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "0ffcbd4180306192726926b43755db2f" + }, + new BlockImageTestExpected + { + TestFile = "hfs.do.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "ddd04ef378552c789f85382b4f49da06" + }, + new BlockImageTestExpected + { + TestFile = "pascal800.do.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "5158e2fe9d8e7ae1f7db73156478e4f4" + }, + new BlockImageTestExpected + { + TestFile = "pascal.do.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "4c4926103a32ac15f7e430ec3ced4be5" + }, + new BlockImageTestExpected + { + TestFile = "prodos800.do.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "193c5cc22f07e5aeb96eb187cb59c2d9" + }, + new BlockImageTestExpected + { + TestFile = "prodos.do.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "23f42e529c9fde2a8033f1bc6a7bca93" + }, + new BlockImageTestExpected + { + TestFile = "prodosmod.do.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "a7ec980472c320da5ea6f2f0aec0f502" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/AppleDOS/DOS32.cs b/Aaru.Tests/Images/AppleDOS/DOS32.cs index 9996c56de..ab0a72f53 100644 --- a/Aaru.Tests/Images/AppleDOS/DOS32.cs +++ b/Aaru.Tests/Images/AppleDOS/DOS32.cs @@ -37,37 +37,20 @@ namespace Aaru.Tests.Images.AppleDOS [TestFixture] public class DOS32 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "alice.d13.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // alice.d13.lz - 560 - }; - - public override uint[] _sectorSize => new uint[] - { - // alice.d13.lz - 256 - }; - - public override MediaType[] _mediaTypes => new[] - { - // alice.d13.lz - MediaType.Apple32SS - }; - - public override string[] _md5S => new[] - { - // alice.d13.lz - "UNKNOWN" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Apple DOS 13 sectors"); public override IMediaImage _plugin => new AppleDos(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "alice.d13.lz", + MediaType = MediaType.Apple32SS, + Sectors = 560, + SectorSize = 256, + MD5 = "UNKNOWN" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/AppleDOS/ProDOS.cs b/Aaru.Tests/Images/AppleDOS/ProDOS.cs index 48084c500..a2d197685 100644 --- a/Aaru.Tests/Images/AppleDOS/ProDOS.cs +++ b/Aaru.Tests/Images/AppleDOS/ProDOS.cs @@ -37,146 +37,92 @@ namespace Aaru.Tests.Images.AppleDOS [TestFixture] public class ProDOS : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "dos33.po.lz", "hfs1440.po.lz", "hfs.po.lz", "pascal800.po.lz", "pascal.po.lz", "prodos1440.po.lz", - "prodos5mb.po.lz", "prodos800.po.lz", "prodosmod.po.lz", "prodos.po.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // dos33.po.lz - 560, - - // hfs1440.po.lz - 560, - - // hfs.po.lz - 560, - - // pascal800.po.lz - 560, - - // pascal.po.lz - 560, - - // prodos1440.po.lz - 560, - - // prodos5mb.po.lz - 560, - - // prodos800.po.lz - 560, - - // prodosmod.po.lz - 560, - - // prodos.po.lz - 560 - }; - - public override uint[] _sectorSize => new uint[] - { - // dos33.po.lz - 256, - - // hfs1440.po.lz - 256, - - // hfs.po.lz - 256, - - // pascal800.po.lz - 256, - - // pascal.po.lz - 256, - - // prodos1440.po.lz - 256, - - // prodos5mb.po.lz - 256, - - // prodos800.po.lz - 256, - - // prodosmod.po.lz - 256, - - // prodos.po.lz - 256 - }; - - public override MediaType[] _mediaTypes => new[] - { - // dos33.po.lz - MediaType.Apple33SS, - - // hfs1440.po.lz - MediaType.Apple33SS, - - // hfs.po.lz - MediaType.Apple33SS, - - // pascal800.po.lz - MediaType.Apple33SS, - - // pascal.po.lz - MediaType.Apple33SS, - - // prodos1440.po.lz - MediaType.Apple33SS, - - // prodos5mb.po.lz - MediaType.Apple33SS, - - // prodos800.po.lz - MediaType.Apple33SS, - - // prodosmod.po.lz - MediaType.Apple33SS, - - // prodos.po.lz - MediaType.Apple33SS - }; - - public override string[] _md5S => new[] - { - // dos33.po.lz - "0ffcbd4180306192726926b43755db2f", - - // hfs1440.po.lz - "2c0b397aa3fe23a52cf7908340739f78", - - // hfs.po.lz - "ddd04ef378552c789f85382b4f49da06", - - // pascal800.po.lz - "5158e2fe9d8e7ae1f7db73156478e4f4", - - // pascal.po.lz - "4c4926103a32ac15f7e430ec3ced4be5", - - // prodos1440.po.lz - "55ff5838139c0e8fa3f904397dc22fa5", - - // prodos5mb.po.lz - "137463bc1f758fb8f2c354b02603817b", - - // prodos800.po.lz - "193c5cc22f07e5aeb96eb187cb59c2d9", - - // prodosmod.po.lz - "26d9c57e262f61c4eb6c150eefafe4c0", - - // prodos.po.lz - "11ef56c80c94347d2e3f921d5c36c8de" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Apple ProDOS Order"); public override IMediaImage _plugin => new AppleDos(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "dos33.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "0ffcbd4180306192726926b43755db2f" + }, + new BlockImageTestExpected + { + TestFile = "hfs1440.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "2c0b397aa3fe23a52cf7908340739f78" + }, + new BlockImageTestExpected + { + TestFile = "hfs.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "ddd04ef378552c789f85382b4f49da06" + }, + new BlockImageTestExpected + { + TestFile = "pascal800.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "5158e2fe9d8e7ae1f7db73156478e4f4" + }, + new BlockImageTestExpected + { + TestFile = "pascal.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "4c4926103a32ac15f7e430ec3ced4be5" + }, + new BlockImageTestExpected + { + TestFile = "prodos1440.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "55ff5838139c0e8fa3f904397dc22fa5" + }, + new BlockImageTestExpected + { + TestFile = "prodos5mb.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "137463bc1f758fb8f2c354b02603817b" + }, + new BlockImageTestExpected + { + TestFile = "prodos800.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "193c5cc22f07e5aeb96eb187cb59c2d9" + }, + new BlockImageTestExpected + { + TestFile = "prodosmod.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "26d9c57e262f61c4eb6c150eefafe4c0" + }, + new BlockImageTestExpected + { + TestFile = "prodos.po.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "11ef56c80c94347d2e3f921d5c36c8de" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/AppleNIB.cs b/Aaru.Tests/Images/AppleNIB.cs index dc0e8cff8..a43d66bae 100644 --- a/Aaru.Tests/Images/AppleNIB.cs +++ b/Aaru.Tests/Images/AppleNIB.cs @@ -36,72 +36,43 @@ namespace Aaru.Tests.Images [TestFixture] public class AppleNib : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "dos32.nib.lz", "dos33.nib.lz", "pascal.nib.lz", "prodos.nib.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // dos32.nib.lz - 455, - - // dos33.nib.lz - 560, - - // pascal.nib.lz - 560, - - // prodos.nib.lz - 560 - }; - - public override uint[] _sectorSize => new uint[] - { - // dos32.nib.lz - 256, - - // dos33.nib.lz - 256, - - // pascal.nib.lz - 256, - - // prodos.nib.lz - 256 - }; - - public override MediaType[] _mediaTypes => new[] - { - // dos32.nib.lz - MediaType.Apple32SS, - - // dos33.nib.lz - MediaType.Apple33SS, - - // pascal.nib.lz - MediaType.Apple33SS, - - // prodos.nib.lz - MediaType.Apple33SS - }; - - public override string[] _md5S => new[] - { - // dos32.nib.lz - "76f8fe4c5bc1976f99641ad7cdf53109", - - // dos33.nib.lz - "0ffcbd4180306192726926b43755db2f", - - // pascal.nib.lz - "4c4926103a32ac15f7e430ec3ced4be5", - - // prodos.nib.lz - "11ef56c80c94347d2e3f921d5c36c8de" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Nibbles"); public override IMediaImage _plugin => new DiscImages.AppleNib(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "dos32.nib.lz", + MediaType = MediaType.Apple32SS, + Sectors = 455, + SectorSize = 256, + MD5 = "76f8fe4c5bc1976f99641ad7cdf53109" + }, + new BlockImageTestExpected + { + TestFile = "dos33.nib.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "0ffcbd4180306192726926b43755db2f" + }, + new BlockImageTestExpected + { + TestFile = "pascal.nib.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "4c4926103a32ac15f7e430ec3ced4be5" + }, + new BlockImageTestExpected + { + TestFile = "prodos.nib.lz", + MediaType = MediaType.Apple33SS, + Sectors = 560, + SectorSize = 256, + MD5 = "11ef56c80c94347d2e3f921d5c36c8de" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Apridisk.cs b/Aaru.Tests/Images/Apridisk.cs index df28b0162..2a67fccd0 100644 --- a/Aaru.Tests/Images/Apridisk.cs +++ b/Aaru.Tests/Images/Apridisk.cs @@ -36,68 +36,43 @@ namespace Aaru.Tests.Images [TestFixture] public class Apridisk : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "apr00001.dsk.lz", "apr00002.dsk.lz", "apr00006.dsk.lz", "apr00203.dsk.lz" - }; - public override ulong[] _sectors => new ulong[] - { - // apr00001.dsk.lz - 1440, - - // apr00002.dsk.lz - 1440, - - // apr00006.dsk.lz - 1440, - - // apr00203.dsk.lz - 1440 - }; - public override uint[] _sectorSize => new uint[] - { - // apr00001.dsk.lz - 512, - - // apr00002.dsk.lz - 512, - - // apr00006.dsk.lz - 512, - - // apr00203.dsk.lz - 512 - }; - public override MediaType[] _mediaTypes => new[] - { - // apr00001.dsk.lz - MediaType.DOS_35_DS_DD_9, - - // apr00002.dsk.lz - MediaType.DOS_35_DS_DD_9, - - // apr00006.dsk.lz - MediaType.DOS_35_DS_DD_9, - - // apr00203.dsk.lz - MediaType.DOS_35_DS_DD_9 - }; - public override string[] _md5S => new[] - { - // apr00001.dsk.lz - "6c264287a3260a6d89e36dfcb1c98dce", - - // apr00002.dsk.lz - "dd8e04939baeb0fcdb11ddade60c9a93", - - // apr00006.dsk.lz - "89132d303ef6b0ff69f4cfd38e2a22a6", - - // apr00203.dsk.lz - "cd34832ca3aa7f55e0dd8ba126372f97" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Apridisk"); public override IMediaImage _plugin => new DiscImages.Apridisk(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "apr00001.dsk.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "6c264287a3260a6d89e36dfcb1c98dce" + }, + new BlockImageTestExpected + { + TestFile = "apr00002.dsk.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "dd8e04939baeb0fcdb11ddade60c9a93" + }, + new BlockImageTestExpected + { + TestFile = "apr00006.dsk.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "89132d303ef6b0ff69f4cfd38e2a22a6" + }, + new BlockImageTestExpected + { + TestFile = "apr00203.dsk.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "cd34832ca3aa7f55e0dd8ba126372f97" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/BaseMediaImageTest.cs b/Aaru.Tests/Images/BaseMediaImageTest.cs new file mode 100644 index 000000000..2280b1bb6 --- /dev/null +++ b/Aaru.Tests/Images/BaseMediaImageTest.cs @@ -0,0 +1,10 @@ +using Aaru.CommonTypes.Interfaces; + +namespace Aaru.Tests.Images +{ + public abstract class BaseMediaImageTest + { + public abstract string _dataFolder { get; } + public abstract IMediaImage _plugin { get; } + } +} \ No newline at end of file diff --git a/Aaru.Tests/Images/BlindWrite4.cs b/Aaru.Tests/Images/BlindWrite4.cs index 1cfdecb84..f02472a2e 100644 --- a/Aaru.Tests/Images/BlindWrite4.cs +++ b/Aaru.Tests/Images/BlindWrite4.cs @@ -36,970 +36,1176 @@ namespace Aaru.Tests.Images [TestFixture] public class BlindWrite4 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.BWT", "report_audiocd.BWT", "report_cdr.BWT", "report_cdrom.BWT", - "report_cdrw.BWT", "report_enhancedcd.BWT", "test_all_tracks_are_track1.BWT", "test_audiocd_cdtext.BWT", - "test_castrated_leadout.BWT", "test_data_track_as_audio.BWT", "test_data_track_as_audio_fixed_sub.BWT", - "test_disc_starts_at_track2.BWT", "test_enhancedcd.BWT", "test_incd_udf200_finalized.BWT", - "test_multi_karaoke_sampler.BWT", "test_multiple_indexes.BWT", "test_multisession.BWT", - "test_track2_inside_track1.BWT", "test_videocd.BWT" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.BWT - 279300, - - // report_audiocd.BWT - 247073, - - // report_cdr.BWT - 254265, - - // report_cdrom.BWT - 254265, - - // report_cdrw.BWT - 308224, - - // report_enhancedcd.BWT - 303316, - - // test_all_tracks_are_track1.BWT - 62385, - - // test_audiocd_cdtext.BWT - 277696, - - // test_castrated_leadout.BWT - 269750, - - // test_data_track_as_audio.BWT - 62385, - - // test_data_track_as_audio_fixed_sub.BWT - 62385, - - // test_disc_starts_at_track2.BWT - 62385, - - // test_enhancedcd.BWT - 59206, - - // test_incd_udf200_finalized.BWT - 350134, - - // test_multi_karaoke_sampler.BWT - 329158, - - // test_multiple_indexes.BWT - 65536, - - // test_multisession.BWT - 51168, - - // test_track2_inside_track1.BWT - 62385, - - // test_videocd.BWT - 48794 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.BWT - MediaType.CDDA, - - // report_audiocd.BWT - MediaType.CDDA, - - // report_cdr.BWT - MediaType.CDROM, - - // report_cdrom.BWT - MediaType.CDROM, - - // report_cdrw.BWT - MediaType.CDROM, - - // report_enhancedcd.BWT - MediaType.CDPLUS, - - // test_all_tracks_are_track1.BWT - MediaType.CDROMXA, - - // test_audiocd_cdtext.BWT - MediaType.CDDA, - - // test_castrated_leadout.BWT - MediaType.CDDA, - - // test_data_track_as_audio.BWT - MediaType.CDROMXA, - - // test_data_track_as_audio_fixed_sub.BWT - MediaType.CDROMXA, - - // test_disc_starts_at_track2.BWT - MediaType.CDROMXA, - - // test_enhancedcd.BWT - MediaType.CDPLUS, - - // test_incd_udf200_finalized.BWT - MediaType.CDROMXA, - - // test_multi_karaoke_sampler.BWT - MediaType.CDROMXA, - - // test_multiple_indexes.BWT - MediaType.CDDA, - - // test_multisession.BWT - MediaType.CDROMXA, - - // test_track2_inside_track1.BWT - MediaType.CDROMXA, - - // test_videocd.BWT - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.BWT - "3be5ba5cc64cd63030d970cd8eeecc99", - - // report_audiocd.BWT - "0e4c52acfb90e8954b70b7c50ba01ffb", - - // report_cdr.BWT - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrom.BWT - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.BWT - "UNKNOWN", - - // report_enhancedcd.BWT - "UNKNOWN", - - // test_all_tracks_are_track1.BWT - "UNKNOWN", - - // test_audiocd_cdtext.BWT - "3463a12134de20f22340d4d36f75ecf1", - - // test_castrated_leadout.BWT - "0639197a3c2292f62745e05b7e701e4d", - - // test_data_track_as_audio.BWT - "e1664576ae56b98faaf60652fd050e15", - - // test_data_track_as_audio_fixed_sub.BWT - "e1664576ae56b98faaf60652fd050e15", - - // test_disc_starts_at_track2.BWT - "UNKNOWN", - - // test_enhancedcd.BWT - "UNKNOWN", - - // test_incd_udf200_finalized.BWT - "f95d6f978ddb4f98bbffda403f627fe1", - - // test_multi_karaoke_sampler.BWT - "0f8f94e00fed4a163f2590632a1c163e", - - // test_multiple_indexes.BWT - "9a5ab4e16c0410d4b2040ce836e78d45", - - // test_multisession.BWT - "UNKNOWN", - - // test_track2_inside_track1.BWT - "UNKNOWN", - - // test_videocd.BWT - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.BWT - "3be5ba5cc64cd63030d970cd8eeecc99", - - // report_audiocd.BWT - "0e4c52acfb90e8954b70b7c50ba01ffb", - - // report_cdr.BWT - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrom.BWT - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw.BWT - "UNKNOWN", - - // report_enhancedcd.BWT - "UNKNOWN", - - // test_all_tracks_are_track1.BWT - "UNKNOWN", - - // test_audiocd_cdtext.BWT - "3463a12134de20f22340d4d36f75ecf1", - - // test_castrated_leadout.BWT - "0639197a3c2292f62745e05b7e701e4d", - - // test_data_track_as_audio.BWT - "1e1a4024e652668b09868b238aadc0f7", - - // test_data_track_as_audio_fixed_sub.BWT - "1e1a4024e652668b09868b238aadc0f7", - - // test_disc_starts_at_track2.BWT - "UNKNOWN", - - // test_enhancedcd.BWT - "UNKNOWN", - - // test_incd_udf200_finalized.BWT - "6751e0ae7821f92221672b1cd5a1ff36", - - // test_multi_karaoke_sampler.BWT - "7f8cca32ee186cf1d70d21882cbe8274", - - // test_multiple_indexes.BWT - "9a5ab4e16c0410d4b2040ce836e78d45", - - // test_multisession.BWT - "UNKNOWN", - - // test_track2_inside_track1.BWT - "UNKNOWN", - - // test_videocd.BWT - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // cdiready_the_apprentice.BWT - "fb42293c276a95724616ad25dcc734b6", - - // report_audiocd.BWT - "5fe9338986050d5631a519a3242dda2d", - - // report_cdr.BWT - "UNKNOWN", - - // report_cdrom.BWT - "UNKNOWN", - - // report_cdrw.BWT - "UNKNOWN", - - // report_enhancedcd.BWT - "UNKNOWN", - - // test_all_tracks_are_track1.BWT - "UNKNOWN", - - // test_audiocd_cdtext.BWT - "73c889ef800df274824d4212c4a060a1", - - // test_castrated_leadout.BWT - "28267d1e5dbc9589cc2cccc1b7a47095", - - // test_data_track_as_audio.BWT - "UNKNOWN", - - // test_data_track_as_audio_fixed_sub.BWT - "UNKNOWN", - - // test_disc_starts_at_track2.BWT - "UNKNOWN", - - // test_enhancedcd.BWT - "UNKNOWN", - - // test_incd_udf200_finalized.BWT - "UNKNOWN", - - // test_multi_karaoke_sampler.BWT - "b840fe64cd1784f166fd0ac378487ae0", - - // test_multiple_indexes.BWT - "bd86329c11da806cda20b57872aa0a49", - - // test_multisession.BWT - "UNKNOWN", - - // test_track2_inside_track1.BWT - "UNKNOWN", - - // test_videocd.BWT - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.BWT - 22, - - // report_audiocd.BWT - 14, - - // report_cdr.BWT - 1, - - // report_cdrom.BWT - 1, - - // report_cdrw.BWT - 1, - - // report_enhancedcd.BWT - 14, - - // test_all_tracks_are_track1.BWT - 2, - - // test_audiocd_cdtext.BWT - 11, - - // test_castrated_leadout.BWT - 11, - - // test_data_track_as_audio.BWT - 2, - - // test_data_track_as_audio_fixed_sub.BWT - 2, - - // test_disc_starts_at_track2.BWT - 2, - - // test_enhancedcd.BWT - 3, - - // test_incd_udf200_finalized.BWT - 1, - - // test_multi_karaoke_sampler.BWT - 16, - - // test_multiple_indexes.BWT - 5, - - // test_multisession.BWT - 4, - - // test_track2_inside_track1.BWT - 3, - - // test_videocd.BWT - 2 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.BWT - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.BWT - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.BWT - new[] - { - 1 - }, - - // report_cdrom.BWT - new[] - { - 1 - }, - - // report_cdrw.BWT - new[] - { - 1 - }, - - // report_enhancedcd.BWT - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_all_tracks_are_track1.BWT - new[] - { - 1, 2 - }, - - // test_audiocd_cdtext.BWT - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_castrated_leadout.BWT - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_data_track_as_audio.BWT - new[] - { - 1, 2 - }, - - // test_data_track_as_audio_fixed_sub.BWT - new[] - { - 1, 2 - }, - - // test_disc_starts_at_track2.BWT - new[] - { - 1, 2 - }, - - // test_enhancedcd.BWT - new[] - { - 1, 1, 2 - }, - - // test_incd_udf200_finalized.BWT - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.BWT - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.BWT - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.BWT - new[] - { - 1, 2, 3, 4 - }, - - // test_track2_inside_track1.BWT - new[] - { - 1, 1, 2 - }, - - // test_videocd.BWT - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.BWT - new ulong[] - { - 69150, 88650, 107475, 112050, 133500, 138075, 159675, 164625, 185250, 189975, 208725, 212850, 232050, - 236550, 241725, 255975, 256725, 265500, 267225, 269850, 271500, 274125 - }, - - // report_audiocd.BWT - new ulong[] - { - 0, 16399, 29901, 47800, 63164, 78775, 94582, 116975, 136016, 153922, 170601, 186389, 201649, 224299 - }, - - // report_cdr.BWT - new ulong[] - { - 0 - }, - - // report_cdrom.BWT - new ulong[] - { - 0 - }, - - // report_cdrw.BWT - new ulong[] - { - 0 - }, - - // report_enhancedcd.BWT - new ulong[] - { - 0, 15511, 33809, 51180, 71823, 87432, 103155, 117541, 136017, 153268, 166782, 186963, 201291, 234030 - }, - - // test_all_tracks_are_track1.BWT - new ulong[] - { - 0, 36789 - }, - - // test_audiocd_cdtext.BWT - new ulong[] - { - 0, 29752, 65034, 78426, 95080, 126147, 154959, 191685, 222776, 243438, 269600 - }, - - // test_castrated_leadout.BWT - new ulong[] - { - 0, 29752, 65034, 78426, 95080, 126147, 154959, 191685, 222776, 243438, 269600 - }, - - // test_data_track_as_audio.BWT - new ulong[] - { - 0, 36789 - }, - - // test_data_track_as_audio_fixed_sub.BWT - new ulong[] - { - 0, 36789 - }, - - // test_disc_starts_at_track2.BWT - new ulong[] - { - 0, 36789 - }, - - // test_enhancedcd.BWT - new ulong[] - { - 0, 14255, 40203 - }, - - // test_incd_udf200_finalized.BWT - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.BWT - new ulong[] - { - 0, 1737, 32599, 52522, 70154, 99948, 119611, 136849, 155640, 175676, 206311, 226300, 244205, 273815, - 293602, 310561 - }, - - // test_multiple_indexes.BWT - new ulong[] - { - 0, 4654, 13725, 41035, 54839 - }, - - // test_multisession.BWT - new ulong[] - { - 0, 19383, 32710, 45228 - }, - - // test_track2_inside_track1.BWT - new ulong[] - { - 0, 13200, 36789 - }, - - // test_videocd.BWT - new ulong[] - { - 0, 1102 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.BWT - new ulong[] - { - 88649, 107474, 112049, 133499, 138074, 159674, 164624, 185249, 189974, 208724, 212849, 232049, 236549, - 241724, 255974, 256724, 265499, 267224, 269849, 271499, 274124, 279299 - }, - - // report_audiocd.BWT - new ulong[] - { - 16398, 29900, 47799, 63163, 78774, 94581, 116974, 136015, 153921, 170600, 186388, 201648, 224298, 247072 - }, - - // report_cdr.BWT - new ulong[] - { - 254264 - }, - - // report_cdrom.BWT - new ulong[] - { - 254264 - }, - - // report_cdrw.BWT - new ulong[] - { - 308223 - }, - - // report_enhancedcd.BWT - new ulong[] - { - 15510, 33808, 51179, 71822, 87431, 103154, 117540, 136016, 153267, 166781, 186962, 201290, 222779, - 303315 - }, - - // test_all_tracks_are_track1.BWT - new ulong[] - { - 25538, 62384 - }, - - // test_audiocd_cdtext.BWT - new ulong[] - { - 29751, 65033, 78425, 95079, 126146, 154958, 191684, 222775, 243437, 269599, 277695 - }, - - // test_castrated_leadout.BWT - new ulong[] - { - 29751, 65033, 78425, 95079, 126146, 154958, 191684, 222775, 243437, 269599, 269749 - }, - - // test_data_track_as_audio.BWT - new ulong[] - { - 25538, 62384 - }, - - // test_data_track_as_audio_fixed_sub.BWT - new ulong[] - { - 25538, 62384 - }, - - // test_disc_starts_at_track2.BWT - new ulong[] - { - 25538, 62384 - }, - - // test_enhancedcd.BWT - new ulong[] - { - 14254, 28952, 59205 - }, - - // test_incd_udf200_finalized.BWT - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.BWT - new ulong[] - { - 1736, 32598, 52521, 70153, 99947, 119610, 136848, 155639, 175675, 206310, 226299, 244204, 273814, - 293601, 310560, 329157 - }, - - // test_multiple_indexes.BWT - new ulong[] - { - 4653, 13724, 41034, 54838, 65535 - }, - - // test_multisession.BWT - new ulong[] - { - 8132, 25959, 38477, 51167 - }, - - // test_track2_inside_track1.BWT - new ulong[] - { - 13199, 25538, 62384 - }, - - // test_videocd.BWT - new ulong[] - { - 1101, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.BWT - new ulong[] - { - 0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, - 150 - }, - - // report_audiocd.BWT - new ulong[] - { - 0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // report_cdr.BWT - new ulong[] - { - 0 - }, - - // report_cdrom.BWT - new ulong[] - { - 0 - }, - - // report_cdrw.BWT - new ulong[] - { - 0 - }, - - // report_enhancedcd.BWT - new ulong[] - { - 0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // test_all_tracks_are_track1.BWT - new ulong[] - { - 0, 150 - }, - - // test_audiocd_cdtext.BWT - new ulong[] - { - 0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // test_castrated_leadout.BWT - new ulong[] - { - 0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // test_data_track_as_audio.BWT - new ulong[] - { - 0, 150 - }, - - // test_data_track_as_audio_fixed_sub.BWT - new ulong[] - { - 0, 150 - }, - - // test_disc_starts_at_track2.BWT - new ulong[] - { - 0, 150 - }, - - // test_enhancedcd.BWT - new ulong[] - { - 0, 150, 150 - }, - - // test_incd_udf200_finalized.BWT - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.BWT - new ulong[] - { - 0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // test_multiple_indexes.BWT - new ulong[] - { - 0, 150, 150, 150, 150 - }, - - // test_multisession.BWT - new ulong[] - { - 0, 150, 150, 150 - }, - - // test_track2_inside_track1.BWT - new ulong[] - { - 0, 150, 150 - }, - - // test_videocd.BWT - new ulong[] - { - 0, 150 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.BWT - new byte[] - { - 0 - }, - - // report_audiocd.BWT - new byte[] - { - 0 - }, - - // report_cdr.BWT - new byte[] - { - 0 - }, - - // report_cdrom.BWT - new byte[] - { - 0 - }, - - // report_cdrw.BWT - new byte[] - { - 0 - }, - - // report_enhancedcd.BWT - new byte[] - { - 0 - }, - - // test_all_tracks_are_track1.BWT - new byte[] - { - 0 - }, - - // test_audiocd_cdtext.BWT - new byte[] - { - 0 - }, - - // test_castrated_leadout.BWT - new byte[] - { - 0 - }, - - // test_data_track_as_audio.BWT - new byte[] - { - 0 - }, - - // test_data_track_as_audio_fixed_sub.BWT - new byte[] - { - 0 - }, - - // test_disc_starts_at_track2.BWT - new byte[] - { - 0 - }, - - // test_enhancedcd.BWT - new byte[] - { - 0 - }, - - // test_incd_udf200_finalized.BWT - new byte[] - { - 0 - }, - - // test_multi_karaoke_sampler.BWT - new byte[] - { - 0 - }, - - // test_multiple_indexes.BWT - new byte[] - { - 0 - }, - - // test_multisession.BWT - new byte[] - { - 0 - }, - - // test_track2_inside_track1.BWT - new byte[] - { - 0 - }, - - // test_videocd.BWT - new byte[] - { - 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "BlindWrite 4"); public override IMediaImage _plugin => new DiscImages.BlindWrite4(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.BWT", + MediaType = MediaType.CDDA, + Sectors = 279300, + MD5 = "3be5ba5cc64cd63030d970cd8eeecc99", + LongMD5 = "3be5ba5cc64cd63030d970cd8eeecc99", + SubchannelMD5 = "fb42293c276a95724616ad25dcc734b6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88650, + End = 107474, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107475, + End = 112049, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112050, + End = 133499, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133500, + End = 138074, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138075, + End = 159674, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159675, + End = 164624, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164625, + End = 185249, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185250, + End = 189974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 189975, + End = 208724, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208725, + End = 212849, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 212850, + End = 232049, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232050, + End = 236549, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236550, + End = 241724, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241725, + End = 255974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 255975, + End = 256724, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256725, + End = 265499, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265500, + End = 267224, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267225, + End = 269849, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269850, + End = 271499, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271500, + End = 274124, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274125, + End = 279299, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.BWT", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "0e4c52acfb90e8954b70b7c50ba01ffb", + LongMD5 = "0e4c52acfb90e8954b70b7c50ba01ffb", + SubchannelMD5 = "5fe9338986050d5631a519a3242dda2d", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16398, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16399, + End = 29900, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29901, + End = 47799, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47800, + End = 63163, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63164, + End = 78774, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78775, + End = 94581, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94582, + End = 116974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 116975, + End = 136015, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136016, + End = 153921, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153922, + End = 170600, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170601, + End = 186388, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186389, + End = 201648, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201649, + End = 224298, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224299, + End = 247072, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.BWT", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.BWT", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.BWT", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.BWT", + MediaType = MediaType.CDPLUS, + Sectors = 303316, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15510, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15511, + End = 33808, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33809, + End = 51179, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51180, + End = 71822, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71823, + End = 87431, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87432, + End = 103154, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103155, + End = 117540, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117541, + End = 136016, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136017, + End = 153267, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153268, + End = 166781, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166782, + End = 186962, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186963, + End = 201290, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201291, + End = 222779, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234030, + End = 303315, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_all_tracks_are_track1.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.BWT", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "3463a12134de20f22340d4d36f75ecf1", + LongMD5 = "3463a12134de20f22340d4d36f75ecf1", + SubchannelMD5 = "73c889ef800df274824d4212c4a060a1", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29752, + End = 65033, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65034, + End = 78425, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78426, + End = 95079, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95080, + End = 126146, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126147, + End = 154958, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154959, + End = 191684, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191685, + End = 222775, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222776, + End = 243437, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243438, + End = 269599, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269600, + End = 277695, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_castrated_leadout.BWT", + MediaType = MediaType.CDDA, + Sectors = 269750, + MD5 = "0639197a3c2292f62745e05b7e701e4d", + LongMD5 = "0639197a3c2292f62745e05b7e701e4d", + SubchannelMD5 = "28267d1e5dbc9589cc2cccc1b7a47095", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29752, + End = 65033, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65034, + End = 78425, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78426, + End = 95079, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95080, + End = 126146, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126147, + End = 154958, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154959, + End = 191684, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191685, + End = 222775, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222776, + End = 243437, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243438, + End = 269599, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269600, + End = 269749, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "e1664576ae56b98faaf60652fd050e15", + LongMD5 = "1e1a4024e652668b09868b238aadc0f7", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio_fixed_sub.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "e1664576ae56b98faaf60652fd050e15", + LongMD5 = "1e1a4024e652668b09868b238aadc0f7", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_disc_starts_at_track2.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.BWT", + MediaType = MediaType.CDPLUS, + Sectors = 59206, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14254, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14255, + End = 28952, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 40203, + End = 59205, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 350134, + MD5 = "f95d6f978ddb4f98bbffda403f627fe1", + LongMD5 = "6751e0ae7821f92221672b1cd5a1ff36", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "0f8f94e00fed4a163f2590632a1c163e", + LongMD5 = "7f8cca32ee186cf1d70d21882cbe8274", + SubchannelMD5 = "b840fe64cd1784f166fd0ac378487ae0", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32598, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32599, + End = 52521, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52522, + End = 70153, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70154, + End = 99947, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99948, + End = 119610, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119611, + End = 136848, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136849, + End = 155639, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155640, + End = 175675, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175676, + End = 206310, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206311, + End = 226299, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226300, + End = 244204, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244205, + End = 273814, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273815, + End = 293601, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293602, + End = 310560, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310561, + End = 329157, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.BWT", + MediaType = MediaType.CDDA, + Sectors = 65536, + MD5 = "9a5ab4e16c0410d4b2040ce836e78d45", + LongMD5 = "9a5ab4e16c0410d4b2040ce836e78d45", + SubchannelMD5 = "bd86329c11da806cda20b57872aa0a49", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4653, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4654, + End = 13724, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13725, + End = 41034, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41035, + End = 54838, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54839, + End = 65535, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 51168, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19383, + End = 25959, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32710, + End = 38477, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45228, + End = 51167, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_track1.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13200, + End = 25538, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.BWT", + MediaType = MediaType.CDROMXA, + Sectors = 48794, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1101, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1102, + End = 48793, + Pregap = 150, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/BlindWrite5.cs b/Aaru.Tests/Images/BlindWrite5.cs index b3e0d5e43..c07c68d64 100644 --- a/Aaru.Tests/Images/BlindWrite5.cs +++ b/Aaru.Tests/Images/BlindWrite5.cs @@ -36,1156 +36,1112 @@ namespace Aaru.Tests.Images [TestFixture] public class BlindWrite5 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "dvdrom.B5T", "gigarec.B5T", "jaguarcd.B5T", "pcengine.B5T", "pcfx.B5T", "report_audiocd.B5T", - "report_cdr.B5T", "report_cdrom.B5T", "report_cdrw_2x.B5T", "test_all_tracks_are_track1.B5T", - "test_audiocd_cdtext.B5T", "test_castrated_leadout.B5T", "test_data_track_as_audio.B5T", - "test_data_track_as_audio_fixed_sub.B5T", "test_disc_starts_at_track2.B5T", "test_enhancedcd.B5T", - "test_incd_udf200_finalized.B5T", "test_multiple_indexes.B5T", "test_multisession.B5T", - "test_track1_overlaps_session2.B5T", "test_track2_inside_session2_leadin.B5T", - "test_track2_inside_track1.B5T", "test_videocd.B5T" - }; - - public override ulong[] _sectors => new ulong[] - { - // dvdrom.B5T - 0, - - // gigarec.B5T - 469652, - - // jaguarcd.B5T - 243587, - - // pcengine.B5T - 160956, - - // pcfx.B5T - 246680, - - // report_audiocd.B5T - 247073, - - // report_cdr.B5T - 254265, - - // report_cdrom.B5T - 254265, - - // report_cdrw_2x.B5T - 308224, - - // test_all_tracks_are_track1.B5T - 0, - - // test_audiocd_cdtext.B5T - 277696, - - // test_castrated_leadout.B5T - 0, - - // test_data_track_as_audio.B5T - 62385, - - // test_data_track_as_audio_fixed_sub.B5T - 62385, - - // test_disc_starts_at_track2.B5T - 62385, - - // test_enhancedcd.B5T - 59206, - - // test_incd_udf200_finalized.B5T - 350134, - - // test_multiple_indexes.B5T - 65536, - - // test_multisession.B5T - 51168, - - // test_track1_overlaps_session2.B5T - 0, - - // test_track2_inside_session2_leadin.B5T - 62385, - - // test_track2_inside_track1.B5T - 0, - - // test_videocd.B5T - 48794 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // dvdrom.B5T - MediaType.DVDROM, - - // gigarec.B5T - MediaType.CDR, - - // jaguarcd.B5T - MediaType.CDDA, - - // pcengine.B5T - MediaType.CD, - - // pcfx.B5T - MediaType.CD, - - // report_audiocd.B5T - MediaType.CDDA, - - // report_cdr.B5T - MediaType.CDR, - - // report_cdrom.B5T - MediaType.CDROM, - - // report_cdrw_2x.B5T - MediaType.CDRW, - - // test_all_tracks_are_track1.B5T - MediaType.CDR, - - // test_audiocd_cdtext.B5T - MediaType.CDR, - - // test_castrated_leadout.B5T - MediaType.CDR, - - // test_data_track_as_audio.B5T - MediaType.CDR, - - // test_data_track_as_audio_fixed_sub.B5T - MediaType.CDR, - - // test_disc_starts_at_track2.B5T - MediaType.CDR, - - // test_enhancedcd.B5T - MediaType.CDR, - - // test_incd_udf200_finalized.B5T - MediaType.CDR, - - // test_multiple_indexes.B5T - MediaType.CDR, - - // test_multisession.B5T - MediaType.CDR, - - // test_track1_overlaps_session2.B5T - MediaType.CDR, - - // test_track2_inside_session2_leadin.B5T - MediaType.CDR, - - // test_track2_inside_track1.B5T - MediaType.CDR, - - // test_videocd.B5T - MediaType.CDR - }; - - public override string[] _md5S => new[] - { - // dvdrom.B5T - "UNKNOWN", - - // gigarec.B5T - "e2e967adc0e5c530964ac4eebe8cac47", - - // jaguarcd.B5T - "3dd5bd0f7d95a40d411761d69255567a", - - // pcengine.B5T - "4f5165069b3c5f11afe5f59711bd945d", - - // pcfx.B5T - "c1bc8de499756453d1387542bb32bb4d", - - // report_audiocd.B5T - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdr.B5T - "65e79ef740833188a0f5be19da14c09d", - - // report_cdrom.B5T - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw_2x.B5T - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // test_all_tracks_are_track1.B5T - "UNKNOWN", - - // test_audiocd_cdtext.B5T - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_castrated_leadout.B5T - "UNKNOWN", - - // test_data_track_as_audio.B5T - "ce3d63e831b4e6191b05ec9ce452ad91", - - // test_data_track_as_audio_fixed_sub.B5T - "ce3d63e831b4e6191b05ec9ce452ad91", - - // test_disc_starts_at_track2.B5T - "25fb1b49726aaac09196ea56490beeb1", - - // test_enhancedcd.B5T - "3736dbfcb7bf5648e3ac067379087001", - - // test_incd_udf200_finalized.B5T - "901e4fe17ea6591b1fd53ba822428ef4", - - // test_multiple_indexes.B5T - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession.B5T - "e2e19cf38891e67a0829d01842b4052e", - - // test_track1_overlaps_session2.B5T - "UNKNOWN", - - // test_track2_inside_session2_leadin.B5T - "4e797aa5dedaac71a0e67ebd9ac9d555", - - // test_track2_inside_track1.B5T - "UNKNOWN", - - // test_videocd.B5T - "203a40d27b9bee018705c2df8d15e96d" - }; - - public override string[] _longMd5S => new[] - { - // dvdrom.B5T - "UNKNOWN", - - // gigarec.B5T - "1dc7801008110af6b8015aad64d91739", - - // jaguarcd.B5T - "3dd5bd0f7d95a40d411761d69255567a", - - // pcengine.B5T - "fd30db9486f67654179c90c8a5052edb", - - // pcfx.B5T - "455ec326506d2c5b974c4617c1010796", - - // report_audiocd.B5T - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdr.B5T - "47b32c32a6427ad1e6b4b1bd047df716", - - // report_cdrom.B5T - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw_2x.B5T - "3af5f943ddb9427d9c63a4ce3b704db9", - - // test_all_tracks_are_track1.B5T - "UNKNOWN", - - // test_audiocd_cdtext.B5T - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_castrated_leadout.B5T - "UNKNOWN", - - // test_data_track_as_audio.B5T - "4bd5511229857ca167b45e607dea12dc", - - // test_data_track_as_audio_fixed_sub.B5T - "4bd5511229857ca167b45e607dea12dc", - - // test_disc_starts_at_track2.B5T - "8fd0dbe9085363cc20709f0ca76a373d", - - // test_enhancedcd.B5T - "c2dfd5a32678c3ff049c143c98ad36a5", - - // test_incd_udf200_finalized.B5T - "7b489457540c40037aabcf3f21e0201e", - - // test_multiple_indexes.B5T - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession.B5T - "3e646a04eb29a8e0ad892b6ac00ba962", - - // test_track1_overlaps_session2.B5T - "UNKNOWN", - - // test_track2_inside_session2_leadin.B5T - "311d641c93a3fe1dfae7deb3a2be28c7", - - // test_track2_inside_track1.B5T - "UNKNOWN", - - // test_videocd.B5T - "a686cade367db0a12fef1d9862f39e1d" - }; - - public override string[] _subchannelMd5S => new string[] - { - // dvdrom.B5T - null, - - // gigarec.B5T - null, - - // jaguarcd.B5T - null, - - // pcengine.B5T - null, - - // pcfx.B5T - null, - - // report_audiocd.B5T - null, - - // report_cdr.B5T - null, - - // report_cdrom.B5T - null, - - // report_cdrw_2x.B5T - null, - - // test_all_tracks_are_track1.B5T - null, - - // test_audiocd_cdtext.B5T - null, - - // test_castrated_leadout.B5T - null, - - // test_data_track_as_audio.B5T - null, - - // test_data_track_as_audio_fixed_sub.B5T - null, - - // test_disc_starts_at_track2.B5T - null, - - // test_enhancedcd.B5T - null, - - // test_incd_udf200_finalized.B5T - null, - - // test_multiple_indexes.B5T - null, - - // test_multisession.B5T - null, - - // test_track1_overlaps_session2.B5T - null, - - // test_track2_inside_session2_leadin.B5T - null, - - // test_track2_inside_track1.B5T - null, - - // test_videocd.B5T - null - }; - - public override int[] _tracks => new[] - { - // dvdrom.B5T - 1, - - // gigarec.B5T - 1, - - // jaguarcd.B5T - 11, - - // pcengine.B5T - 16, - - // pcfx.B5T - 8, - - // report_audiocd.B5T - 14, - - // report_cdr.B5T - 1, - - // report_cdrom.B5T - 1, - - // report_cdrw_2x.B5T - 1, - - // test_all_tracks_are_track1.B5T - 2, - - // test_audiocd_cdtext.B5T - 11, - - // test_castrated_leadout.B5T - 11, - - // test_data_track_as_audio.B5T - 2, - - // test_data_track_as_audio_fixed_sub.B5T - 2, - - // test_disc_starts_at_track2.B5T - 2, - - // test_enhancedcd.B5T - 3, - - // test_incd_udf200_finalized.B5T - 1, - - // test_multiple_indexes.B5T - 5, - - // test_multisession.B5T - 4, - - // test_track1_overlaps_session2.B5T - 2, - - // test_track2_inside_session2_leadin.B5T - 3, - - // test_track2_inside_track1.B5T - 3, - - // test_videocd.B5T - 2 - }; - - public override int[][] _trackSessions => new[] - { - // dvdrom.B5T - new[] - { - 1 - }, - - // gigarec.B5T - new[] - { - 1 - }, - - // jaguarcd.B5T - new[] - { - 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // pcengine.B5T - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.B5T - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.B5T - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.B5T - new[] - { - 1 - }, - - // report_cdrom.B5T - new[] - { - 1 - }, - - // report_cdrw_2x.B5T - new[] - { - 1 - }, - - // test_all_tracks_are_track1.B5T - new[] - { - 1, 2 - }, - - // test_audiocd_cdtext.B5T - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_castrated_leadout.B5T - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_data_track_as_audio.B5T - new[] - { - 1, 2 - }, - - // test_data_track_as_audio_fixed_sub.B5T - new[] - { - 1, 2 - }, - - // test_disc_starts_at_track2.B5T - new[] - { - 1, 2 - }, - - // test_enhancedcd.B5T - new[] - { - 1, 1, 2 - }, - - // test_incd_udf200_finalized.B5T - new[] - { - 1 - }, - - // test_multiple_indexes.B5T - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.B5T - new[] - { - 1, 2, 3, 4 - }, - - // test_track1_overlaps_session2.B5T - new[] - { - 1 - }, - - // test_track2_inside_session2_leadin.B5T - new[] - { - 1, 1, 2 - }, - - // test_track2_inside_track1.B5T - new[] - { - 1, 1, 1 - }, - - // test_videocd.B5T - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // dvdrom.B5T - new ulong[] - { - 0 - }, - - // gigarec.B5T - new ulong[] - { - 0 - }, - - // jaguarcd.B5T - new ulong[] - { - 0, 27490, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.B5T - new ulong[] - { - 0, 3590, 38464, 47217, 53501, 61819, 68563, 75397, 83130, 86481, 91267, 99274, 106693, 112238, 120270, - 126229 - }, - - // pcfx.B5T - new ulong[] - { - 0, 4395, 4909, 5941, 42059, 220645, 225646, 235498 - }, - - // report_audiocd.B5T - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdr.B5T - new ulong[] - { - 0 - }, - - // report_cdrom.B5T - new ulong[] - { - 0 - }, - - // report_cdrw_2x.B5T - new ulong[] - { - 0 - }, - - // test_all_tracks_are_track1.B5T - new ulong[] - { - 0, 25539 - }, - - // test_audiocd_cdtext.B5T - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_castrated_leadout.B5T - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_data_track_as_audio.B5T - new ulong[] - { - 0, 36789 - }, - - // test_data_track_as_audio_fixed_sub.B5T - new ulong[] - { - 0, 36789 - }, - - // test_disc_starts_at_track2.B5T - new ulong[] - { - 0, 36789 - }, - - // test_enhancedcd.B5T - new ulong[] - { - 0, 14405, 40203 - }, - - // test_incd_udf200_finalized.B5T - new ulong[] - { - 0 - }, - - // test_multiple_indexes.B5T - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession.B5T - new ulong[] - { - 0, 19383, 32710, 45228 - }, - - // test_track1_overlaps_session2.B5T - new ulong[] - { - 0 - }, - - // test_track2_inside_session2_leadin.B5T - new ulong[] - { - 0, 25500, 36789 - }, - - // test_track2_inside_track1.B5T - new ulong[] - { - 0, 13350, 36939 - }, - - // test_videocd.B5T - new ulong[] - { - 0, 1252 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // dvdrom.B5T - new ulong[] - { - 0 - }, - - // gigarec.B5T - new ulong[] - { - 469651 - }, - - // jaguarcd.B5T - new ulong[] - { - 16239, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.B5T - new ulong[] - { - 3589, 38463, 47216, 53500, 61818, 68562, 75396, 83129, 86480, 91266, 99273, 106692, 112237, 120269, - 126228, 160955 - }, - - // pcfx.B5T - new ulong[] - { - 4394, 4908, 5940, 42058, 220644, 225645, 235497, 246679 - }, - - // report_audiocd.B5T - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdr.B5T - new ulong[] - { - 254264 - }, - - // report_cdrom.B5T - new ulong[] - { - 254264 - }, - - // report_cdrw_2x.B5T - new ulong[] - { - 308223 - }, - - // test_all_tracks_are_track1.B5T - new ulong[] - { - 25538, 51077 - }, - - // test_audiocd_cdtext.B5T - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_castrated_leadout.B5T - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 1049 - }, - - // test_data_track_as_audio.B5T - new ulong[] - { - 25538, 62384 - }, - - // test_data_track_as_audio_fixed_sub.B5T - new ulong[] - { - 25538, 62384 - }, - - // test_disc_starts_at_track2.B5T - new ulong[] - { - 25538, 62384 - }, - - // test_enhancedcd.B5T - new ulong[] - { - 14404, 28952, 59205 - }, - - // test_incd_udf200_finalized.B5T - new ulong[] - { - 350133 - }, - - // test_multiple_indexes.B5T - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.B5T - new ulong[] - { - 8132, 25959, 38477, 51167 - }, - - // test_track1_overlaps_session2.B5T - new ulong[] - { - 0 - }, - - // test_track2_inside_session2_leadin.B5T - new ulong[] - { - 25499, 25538, 62384 - }, - - // test_track2_inside_track1.B5T - new ulong[] - { - 13349, 25538, 62384 - }, - - // test_videocd.B5T - new ulong[] - { - 1251, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // dvdrom.B5T - new ulong[] - { - 0 - }, - - // gigarec.B5T - new ulong[] - { - 150 - }, - - // jaguarcd.B5T - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.B5T - new ulong[] - { - 150, 0, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.B5T - new ulong[] - { - 150, 0, 0, 0, 0, 150, 0, 0 - }, - - // report_audiocd.B5T - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.B5T - new ulong[] - { - 150 - }, - - // report_cdrom.B5T - new ulong[] - { - 150 - }, - - // report_cdrw_2x.B5T - new ulong[] - { - 150 - }, - - // test_all_tracks_are_track1.B5T - new ulong[] - { - 150, 150 - }, - - // test_audiocd_cdtext.B5T - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_castrated_leadout.B5T - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_data_track_as_audio.B5T - new ulong[] - { - 150, 150 - }, - - // test_data_track_as_audio_fixed_sub.B5T - new ulong[] - { - 150, 150 - }, - - // test_disc_starts_at_track2.B5T - new ulong[] - { - 150, 150 - }, - - // test_enhancedcd.B5T - new ulong[] - { - 150, 0, 150 - }, - - // test_incd_udf200_finalized.B5T - new ulong[] - { - 150 - }, - - // test_multiple_indexes.B5T - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession.B5T - new ulong[] - { - 150, 150, 150, 150 - }, - - // test_track1_overlaps_session2.B5T - new ulong[] - { - 150 - }, - - // test_track2_inside_session2_leadin.B5T - new ulong[] - { - 150, 0, 150 - }, - - // test_track2_inside_track1.B5T - new ulong[] - { - 150, 0, 150 - }, - - // test_videocd.B5T - new ulong[] - { - 150, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // dvdrom.B5T - null, - - // gigarec.B5T - new byte[] - { - 4 - }, - - // jaguarcd.B5T - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.B5T - new byte[] - { - 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // pcfx.B5T - new byte[] - { - 0, 4, 4, 4, 4, 0, 0, 0 - }, - - // report_audiocd.B5T - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.B5T - new byte[] - { - 4 - }, - - // report_cdrom.B5T - new byte[] - { - 4 - }, - - // report_cdrw_2x.B5T - new byte[] - { - 4 - }, - - // test_all_tracks_are_track1.B5T - new byte[] - { - 4, 4 - }, - - // test_audiocd_cdtext.B5T - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_castrated_leadout.B5T - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_data_track_as_audio.B5T - new byte[] - { - 4, 2 - }, - - // test_data_track_as_audio_fixed_sub.B5T - new byte[] - { - 4, 2 - }, - - // test_disc_starts_at_track2.B5T - new byte[] - { - 4, 4 - }, - - // test_enhancedcd.B5T - new byte[] - { - 0, 0, 4 - }, - - // test_incd_udf200_finalized.B5T - new byte[] - { - 7 - }, - - // test_multiple_indexes.B5T - new byte[] - { - 2, 0, 0, 8, 1 - }, - - // test_multisession.B5T - new byte[] - { - 4, 4, 4, 4 - }, - - // test_track1_overlaps_session2.B5T - new byte[] - { - 4, 4 - }, - - // test_track2_inside_session2_leadin.B5T - new byte[] - { - 4, 4, 4 - }, - - // test_track2_inside_track1.B5T - new byte[] - { - 4, 4, 4 - }, - - // test_videocd.B5T - new byte[] - { - 4, 4 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "BlindWrite 5"); public override IMediaImage _plugin => new DiscImages.BlindWrite5(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "dvdrom.B5T", + MediaType = MediaType.DVDROM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "gigarec.B5T", + MediaType = MediaType.CDR, + Sectors = 469652, + MD5 = "e2e967adc0e5c530964ac4eebe8cac47", + LongMD5 = "1dc7801008110af6b8015aad64d91739", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 469651, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.B5T", + MediaType = MediaType.CDDA, + Sectors = 243587, + MD5 = "3dd5bd0f7d95a40d411761d69255567a", + LongMD5 = "3dd5bd0f7d95a40d411761d69255567a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16239, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 27490, + End = 28236, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.B5T", + MediaType = MediaType.CD, + Sectors = 160956, + MD5 = "4f5165069b3c5f11afe5f59711bd945d", + LongMD5 = "fd30db9486f67654179c90c8a5052edb", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3589, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3590, + End = 38463, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38464, + End = 47216, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47217, + End = 53500, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53501, + End = 61818, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61819, + End = 68562, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68563, + End = 75396, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75397, + End = 83129, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 83130, + End = 86480, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86481, + End = 91266, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 91267, + End = 99273, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99274, + End = 106692, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106693, + End = 112237, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112238, + End = 120269, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 120270, + End = 126228, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126229, + End = 160955, + Pregap = 0, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.B5T", + MediaType = MediaType.CD, + Sectors = 246680, + MD5 = "c1bc8de499756453d1387542bb32bb4d", + LongMD5 = "455ec326506d2c5b974c4617c1010796", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4394, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4395, + End = 4908, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4909, + End = 5940, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5941, + End = 42058, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 42059, + End = 220644, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220645, + End = 225645, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225646, + End = 235497, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235498, + End = 246679, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.B5T", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + LongMD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.B5T", + MediaType = MediaType.CDR, + Sectors = 254265, + MD5 = "65e79ef740833188a0f5be19da14c09d", + LongMD5 = "47b32c32a6427ad1e6b4b1bd047df716", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.B5T", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_2x.B5T", + MediaType = MediaType.CDRW, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_all_tracks_are_track1.B5T", + MediaType = MediaType.CDR, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 25539, + End = 51077, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.B5T", + MediaType = MediaType.CDR, + Sectors = 277696, + MD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + LongMD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 0, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_castrated_leadout.B5T", + MediaType = MediaType.CDR, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 1049, + Pregap = 0, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio.B5T", + MediaType = MediaType.CDR, + Sectors = 62385, + MD5 = "ce3d63e831b4e6191b05ec9ce452ad91", + LongMD5 = "4bd5511229857ca167b45e607dea12dc", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio_fixed_sub.B5T", + MediaType = MediaType.CDR, + Sectors = 62385, + MD5 = "ce3d63e831b4e6191b05ec9ce452ad91", + LongMD5 = "4bd5511229857ca167b45e607dea12dc", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_disc_starts_at_track2.B5T", + MediaType = MediaType.CDR, + Sectors = 62385, + MD5 = "25fb1b49726aaac09196ea56490beeb1", + LongMD5 = "8fd0dbe9085363cc20709f0ca76a373d", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.B5T", + MediaType = MediaType.CDR, + Sectors = 59206, + MD5 = "3736dbfcb7bf5648e3ac067379087001", + LongMD5 = "c2dfd5a32678c3ff049c143c98ad36a5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14404, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14405, + End = 28952, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 40203, + End = 59205, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.B5T", + MediaType = MediaType.CDR, + Sectors = 350134, + MD5 = "901e4fe17ea6591b1fd53ba822428ef4", + LongMD5 = "7b489457540c40037aabcf3f21e0201e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 7 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.B5T", + MediaType = MediaType.CDR, + Sectors = 65536, + MD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + LongMD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 8 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.B5T", + MediaType = MediaType.CDR, + Sectors = 51168, + MD5 = "e2e19cf38891e67a0829d01842b4052e", + LongMD5 = "3e646a04eb29a8e0ad892b6ac00ba962", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19383, + End = 25959, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32710, + End = 38477, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45228, + End = 51167, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track1_overlaps_session2.B5T", + MediaType = MediaType.CDR, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_session2_leadin.B5T", + MediaType = MediaType.CDR, + Sectors = 62385, + MD5 = "4e797aa5dedaac71a0e67ebd9ac9d555", + LongMD5 = "311d641c93a3fe1dfae7deb3a2be28c7", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25499, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 25500, + End = 25538, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_track1.B5T", + MediaType = MediaType.CDR, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13349, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13350, + End = 25538, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.B5T", + MediaType = MediaType.CDR, + Sectors = 48794, + MD5 = "203a40d27b9bee018705c2df8d15e96d", + LongMD5 = "a686cade367db0a12fef1d9862f39e1d", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1251, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 0, + Flags = 4 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/BlindWrite6.cs b/Aaru.Tests/Images/BlindWrite6.cs index ba2149189..a8420e478 100644 --- a/Aaru.Tests/Images/BlindWrite6.cs +++ b/Aaru.Tests/Images/BlindWrite6.cs @@ -36,433 +36,539 @@ namespace Aaru.Tests.Images [TestFixture] public class BlindWrite6 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "dvdrom.B6T", "jaguarcd.B6T", "pcengine.B6T", "pcfx.B6T", "report_cdr.B6T", "report_cdrom.B6T", - "report_cdrw_2x.B6T", "test_karaoke_multi_sampler.B6T" - }; - - public override ulong[] _sectors => new ulong[] - { - // dvdrom.B6T - 0, - - // jaguarcd.B6T - 243587, - - // pcengine.B6T - 160956, - - // pcfx.B6T - 246680, - - // report_cdr.B6T - 254265, - - // report_cdrom.B6T - 254265, - - // report_cdrw_2x.B6T - 308224, - - // test_karaoke_multi_sampler.B6T - 329158 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // dvdrom.B6T - MediaType.DVDROM, - - // jaguarcd.B6T - MediaType.CDDA, - - // pcengine.B6T - MediaType.CD, - - // pcfx.B6T - MediaType.CD, - - // report_cdr.B6T - MediaType.CDR, - - // report_cdrom.B6T - MediaType.CDROM, - - // report_cdrw_2x.B6T - MediaType.CDRW, - - // test_karaoke_multi_sampler.B6T - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // dvdrom.B6T - "UNKNOWN", - - // jaguarcd.B6T - "3dd5bd0f7d95a40d411761d69255567a", - - // pcengine.B6T - "4f5165069b3c5f11afe5f59711bd945d", - - // pcfx.B6T - "c1bc8de499756453d1387542bb32bb4d", - - // report_cdr.B6T - "63c99a087570b8936bb55156f5502f38", - - // report_cdrom.B6T - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw_2x.B6T - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // test_karaoke_multi_sampler.B6T - "a34e29e42b60023a6ae59f37d2bd4bea" - }; - - public override string[] _longMd5S => new[] - { - // dvdrom.B6T - "UNKNOWN", - - // jaguarcd.B6T - "3dd5bd0f7d95a40d411761d69255567a", - - // pcengine.B6T - "fd30db9486f67654179c90c8a5052edb", - - // pcfx.B6T - "455ec326506d2c5b974c4617c1010796", - - // report_cdr.B6T - "368c06d4b42ed581f3ad7f6ad57f70f6", - - // report_cdrom.B6T - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw_2x.B6T - "3af5f943ddb9427d9c63a4ce3b704db9", - - // test_karaoke_multi_sampler.B6T - "e981f7dfdb522ba937fe75474e23a446" - }; - - public override string[] _subchannelMd5S => new string[] - { - // dvdrom.B6T - null, - - // jaguarcd.B6T - null, - - // pcengine.B6T - null, - - // pcfx.B6T - null, - - // report_cdr.B6T - null, - - // report_cdrom.B6T - null, - - // report_cdrw_2x.B6T - null, - - // test_karaoke_multi_sampler.B6T - null - }; - - public override int[] _tracks => new[] - { - // dvdrom.B6T - 1, - - // jaguarcd.B6T - 11, - - // pcengine.B6T - 16, - - // pcfx.B6T - 8, - - // report_cdr.B6T - 1, - - // report_cdrom.B6T - 1, - - // report_cdrw_2x.B6T - 1, - - // test_karaoke_multi_sampler.B6T - 16 - }; - - public override int[][] _trackSessions => new[] - { - // dvdrom.B6T - new[] - { - 1 - }, - - // jaguarcd.B6T - new[] - { - 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // pcengine.B6T - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.B6T - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.B6T - new[] - { - 1 - }, - - // report_cdrom.B6T - new[] - { - 1 - }, - - // report_cdrw_2x.B6T - new[] - { - 1 - }, - - // test_karaoke_multi_sampler.B6T - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // dvdrom.B6T - new ulong[] - { - 0 - }, - - // jaguarcd.B6T - new ulong[] - { - 0, 27490, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.B6T - new ulong[] - { - 0, 3590, 38464, 47217, 53501, 61819, 68563, 75397, 83130, 86481, 91267, 99274, 106693, 112238, 120270, - 126229 - }, - - // pcfx.B6T - new ulong[] - { - 0, 4395, 4909, 5941, 42059, 220645, 225646, 235498 - }, - - // report_cdr.B6T - new ulong[] - { - 0 - }, - - // report_cdrom.B6T - new ulong[] - { - 0 - }, - - // report_cdrw_2x.B6T - new ulong[] - { - 0 - }, - - // test_karaoke_multi_sampler.B6T - new ulong[] - { - 0, 1737, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // dvdrom.B6T - new ulong[] - { - 0 - }, - - // jaguarcd.B6T - new ulong[] - { - 16239, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.B6T - new ulong[] - { - 3589, 38463, 47216, 53500, 61818, 68562, 75396, 83129, 86480, 91266, 99273, 106692, 112237, 120269, - 126228, 160955 - }, - - // pcfx.B6T - new ulong[] - { - 4394, 4908, 5940, 42058, 220644, 225645, 235497, 246679 - }, - - // report_cdr.B6T - new ulong[] - { - 254264 - }, - - // report_cdrom.B6T - new ulong[] - { - 254264 - }, - - // report_cdrw_2x.B6T - new ulong[] - { - 308223 - }, - - // test_karaoke_multi_sampler.B6T - new ulong[] - { - 1736, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // dvdrom.B6T - new ulong[] - { - 0 - }, - - // jaguarcd.B6T - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.B6T - new ulong[] - { - 150, 0, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.B6T - new ulong[] - { - 150, 0, 0, 0, 0, 150, 0, 0 - }, - - // report_cdr.B6T - new ulong[] - { - 150 - }, - - // report_cdrom.B6T - new ulong[] - { - 150 - }, - - // report_cdrw_2x.B6T - new ulong[] - { - 150 - }, - - // test_karaoke_multi_sampler.B6T - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // dvdrom.B6T - null, - - // jaguarcd.B6T - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.B6T - new byte[] - { - 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // pcfx.B6T - new byte[] - { - 0, 4, 4, 4, 4, 0, 0, 0 - }, - - // report_cdr.B6T - new byte[] - { - 4 - }, - - // report_cdrom.B6T - new byte[] - { - 4 - }, - - // report_cdrw_2x.B6T - new byte[] - { - 4 - }, - - // test_karaoke_multi_sampler.B6T - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "BlindWrite 6"); public override IMediaImage _plugin => new DiscImages.BlindWrite5(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "dvdrom.B6T", + MediaType = MediaType.DVDROM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.B6T", + MediaType = MediaType.CDDA, + Sectors = 243587, + MD5 = "3dd5bd0f7d95a40d411761d69255567a", + LongMD5 = "3dd5bd0f7d95a40d411761d69255567a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16239, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 27490, + End = 28236, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.B6T", + MediaType = MediaType.CD, + Sectors = 160956, + MD5 = "4f5165069b3c5f11afe5f59711bd945d", + LongMD5 = "fd30db9486f67654179c90c8a5052edb", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3589, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3590, + End = 38463, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38464, + End = 47216, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47217, + End = 53500, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53501, + End = 61818, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61819, + End = 68562, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68563, + End = 75396, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75397, + End = 83129, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 83130, + End = 86480, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86481, + End = 91266, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 91267, + End = 99273, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99274, + End = 106692, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106693, + End = 112237, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112238, + End = 120269, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 120270, + End = 126228, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126229, + End = 160955, + Pregap = 0, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.B6T", + MediaType = MediaType.CD, + Sectors = 246680, + MD5 = "c1bc8de499756453d1387542bb32bb4d", + LongMD5 = "455ec326506d2c5b974c4617c1010796", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4394, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4395, + End = 4908, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4909, + End = 5940, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5941, + End = 42058, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 42059, + End = 220644, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220645, + End = 225645, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225646, + End = 235497, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235498, + End = 246679, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.B6T", + MediaType = MediaType.CDR, + Sectors = 254265, + MD5 = "63c99a087570b8936bb55156f5502f38", + LongMD5 = "368c06d4b42ed581f3ad7f6ad57f70f6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.B6T", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_2x.B6T", + MediaType = MediaType.CDRW, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_karaoke_multi_sampler.B6T", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "a34e29e42b60023a6ae59f37d2bd4bea", + LongMD5 = "e981f7dfdb522ba937fe75474e23a446", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/BlindWrite7.cs b/Aaru.Tests/Images/BlindWrite7.cs index 4a7c48198..7ea8378f2 100644 --- a/Aaru.Tests/Images/BlindWrite7.cs +++ b/Aaru.Tests/Images/BlindWrite7.cs @@ -36,194 +36,72 @@ namespace Aaru.Tests.Images [TestFixture] public class BlindWrite7 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "report_cdr.B6T", "report_cdrom.B6T", "report_cdrw.B6T" - }; - - public override ulong[] _sectors => new ulong[] - { - // report_cdr.B6T - 254265, - - // report_cdrom.B6T - 254265, - - // report_cdrw.B6T - 308224 - }; - public override uint[] _sectorSize => new uint[] - { - 2048, 2048, 2048 - }; - - public override MediaType[] _mediaTypes => new[] - { - // report_cdr.B6T - MediaType.CDR, - - // report_cdrom.B6T - MediaType.CDROM, - - // report_cdrw.B6T - MediaType.CDRW - }; - - public override string[] _md5S => new[] - { - // report_cdr.B6T - "86b8a763ef6522fccf97f743d7bf4fa3", - - // report_cdrom.B6T - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.B6T - "1e55aa420ca8f8ea77d5b597c9cfc19b" - }; - - public override string[] _longMd5S => new[] - { - // report_cdr.B6T - "a292359cce05849dec1d06ae471ecf9e", - - // report_cdrom.B6T - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw.B6T - "3af5f943ddb9427d9c63a4ce3b704db9" - }; - - public override string[] _subchannelMd5S => new string[] - { - // report_cdr.B6T - null, - - // report_cdrom.B6T - null, - - // report_cdrw.B6T - null - }; - - public override int[] _tracks => new[] - { - // report_cdr.B6T - 1, - - // report_cdrom.B6T - 1, - - // report_cdrw.B6T - 1 - }; - - public override int[][] _trackSessions => new[] - { - // report_cdr.B6T - new[] - { - 1 - }, - - // report_cdrom.B6T - new[] - { - 1 - }, - - // report_cdrw.B6T - new[] - { - 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // report_cdr.B6T - new ulong[] - { - 0 - }, - - // report_cdrom.B6T - new ulong[] - { - 0 - }, - - // report_cdrw.B6T - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // report_cdr.B6T - new ulong[] - { - 254264 - }, - - // report_cdrom.B6T - new ulong[] - { - 254264 - }, - - // report_cdrw.B6T - new ulong[] - { - 308223 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // report_cdr.B6T - new ulong[] - { - 150 - }, - - // report_cdrom.B6T - new ulong[] - { - 150 - }, - - // report_cdrw.B6T - new ulong[] - { - 150 - } - }; - - public override byte[][] _trackFlags => new[] - { - // report_cdr.B6T - new byte[] - { - 4 - }, - - // report_cdrom.B6T - new byte[] - { - 4 - }, - - // report_cdrw.B6T - new byte[] - { - 4 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "BlindWrite 7"); public override IMediaImage _plugin => new DiscImages.BlindWrite5(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "report_cdr.B6T", + MediaType = MediaType.CDR, + Sectors = 254265, + SectorSize = 2048, + MD5 = "86b8a763ef6522fccf97f743d7bf4fa3", + LongMD5 = "a292359cce05849dec1d06ae471ecf9e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.B6T", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.B6T", + MediaType = MediaType.CDRW, + Sectors = 308224, + SectorSize = 2048, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/BlockMediaImageTest.cs b/Aaru.Tests/Images/BlockMediaImageTest.cs index 3cdab9de3..466002a62 100644 --- a/Aaru.Tests/Images/BlockMediaImageTest.cs +++ b/Aaru.Tests/Images/BlockMediaImageTest.cs @@ -7,22 +7,11 @@ using NUnit.Framework; namespace Aaru.Tests.Images { - public abstract class BlockMediaImageTest + public abstract class BlockMediaImageTest : BaseMediaImageTest { // How many sectors to read at once - const uint SECTORS_TO_READ = 256; - public abstract string[] _testFiles { get; } - public abstract ulong[] _sectors { get; } - - public abstract uint[] _sectorSize { get; } - - public abstract MediaType[] _mediaTypes { get; } - - public abstract string[] _md5S { get; } - - public abstract string _dataFolder { get; } - - public abstract IMediaImage _plugin { get; } + const uint SECTORS_TO_READ = 256; + public abstract BlockImageTestExpected[] Tests { get; } [Test] public void Info() @@ -31,17 +20,18 @@ namespace Aaru.Tests.Images Assert.Multiple(() => { - for(int i = 0; i < _testFiles.Length; i++) + foreach(BlockImageTestExpected test in Tests) { + string testFile = test.TestFile; var filtersList = new FiltersList(); - IFilter filter = filtersList.GetFilter(_testFiles[i]); - filter.Open(_testFiles[i]); + IFilter filter = filtersList.GetFilter(testFile); + filter.Open(testFile); var image = Activator.CreateInstance(_plugin.GetType()) as IMediaImage; - Assert.NotNull(image, $"Could not instantiate filesystem for {_testFiles[i]}"); + Assert.NotNull(image, $"Could not instantiate filesystem for {testFile}"); bool opened = image.Open(filter); - Assert.AreEqual(true, opened, $"Open: {_testFiles[i]}"); + Assert.AreEqual(true, opened, $"Open: {testFile}"); if(!opened) continue; @@ -50,9 +40,9 @@ namespace Aaru.Tests.Images { Assert.Multiple(() => { - Assert.AreEqual(_sectors[i], image.Info.Sectors, $"Sectors: {_testFiles[i]}"); - Assert.AreEqual(_sectorSize[i], image.Info.SectorSize, $"Sector size: {_testFiles[i]}"); - Assert.AreEqual(_mediaTypes[i], image.Info.MediaType, $"Media type: {_testFiles[i]}"); + Assert.AreEqual(test.Sectors, image.Info.Sectors, $"Sectors: {testFile}"); + Assert.AreEqual(test.SectorSize, image.Info.SectorSize, $"Sector size: {testFile}"); + Assert.AreEqual(test.MediaType, image.Info.MediaType, $"Media type: {testFile}"); }); } } @@ -66,17 +56,18 @@ namespace Aaru.Tests.Images Assert.Multiple(() => { - for(int i = 0; i < _testFiles.Length; i++) + foreach(BlockImageTestExpected test in Tests) { + string testFile = test.TestFile; var filtersList = new FiltersList(); - IFilter filter = filtersList.GetFilter(_testFiles[i]); - filter.Open(_testFiles[i]); + IFilter filter = filtersList.GetFilter(testFile); + filter.Open(testFile); var image = Activator.CreateInstance(_plugin.GetType()) as IMediaImage; - Assert.NotNull(image, $"Could not instantiate filesystem for {_testFiles[i]}"); + Assert.NotNull(image, $"Could not instantiate filesystem for {testFile}"); bool opened = image.Open(filter); - Assert.AreEqual(true, opened, $"Open: {_testFiles[i]}"); + Assert.AreEqual(true, opened, $"Open: {testFile}"); if(!opened) continue; @@ -102,7 +93,7 @@ namespace Aaru.Tests.Images ctx.Update(sector); } - Assert.AreEqual(_md5S[i], ctx.End(), $"Hash: {_testFiles[i]}"); + Assert.AreEqual(test.MD5, ctx.End(), $"Hash: {testFile}"); } }); } diff --git a/Aaru.Tests/Images/CDRWin.cs b/Aaru.Tests/Images/CDRWin.cs index 6180965da..cf5dd8712 100644 --- a/Aaru.Tests/Images/CDRWin.cs +++ b/Aaru.Tests/Images/CDRWin.cs @@ -37,828 +37,1302 @@ namespace Aaru.Tests.Images [TestFixture] public class CDRWin : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "pcengine.cue", "pcfx.cue", "report_audiocd.cue", "report_cdr.cue", "report_cdrw.cue", - "test_audiocd_cdtext.cue", "test_incd_udf200_finalized.cue", "test_multi_karaoke_sampler.cue", - "test_multiple_indexes.cue", "test_videocd.cue", "cdg/report_audiocd.cue", - "cdg/test_multi_karaoke_sampler.cue", "cooked_cdg/test_multi_karaoke_sampler.cue", - "cooked/report_cdrom.cue", "cooked/report_cdrw.cue", "cooked/test_multi_karaoke_sampler.cue" - }; - - public override ulong[] _sectors => new ulong[] - { - // pcengine.cue - 160356, - - // pcfx.cue - 246305, - - // report_audiocd.cue - 247073, - - // report_cdr.cue - 254265, - - // report_cdrw.cue - 308224, - - // test_audiocd_cdtext.cue - 277696, - - // test_incd_udf200_finalized.cue - 350134, - - // test_multi_karaoke_sampler.cue - 329008, - - // test_multiple_indexes.cue - 65536, - - // test_videocd.cue - 48794, - - // cdg/report_audiocd.cue - 247073, - - // cdg/test_multi_karaoke_sampler.cue - 329008, - - // cooked_cdg/test_multi_karaoke_sampler.cue - 329008, - - // cooked/report_cdrom.cue - 254265, - - // cooked/report_cdrw.cue - 308224, - - // cooked/test_multi_karaoke_sampler.cue - 329008 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // pcengine.cue - MediaType.CD, - - // pcfx.cue - MediaType.CD, - - // report_audiocd.cue - MediaType.CDDA, - - // report_cdr.cue - MediaType.CDROM, - - // report_cdrw.cue - MediaType.CDROM, - - // test_audiocd_cdtext.cue - MediaType.CDDA, - - // test_incd_udf200_finalized.cue - MediaType.CDROMXA, - - // test_multi_karaoke_sampler.cue - MediaType.CDROMXA, - - // test_multiple_indexes.cue - MediaType.CDDA, - - // test_videocd.cue - MediaType.CDROMXA, - - // cdg/report_audiocd.cue - MediaType.CDDA, - - // cdg/test_multi_karaoke_sampler.cue - MediaType.CDROMXA, - - // cooked_cdg/test_multi_karaoke_sampler.cue - MediaType.CDROMXA, - - // cooked/report_cdrom.cue - MediaType.CDROM, - - // cooked/report_cdrw.cue - MediaType.CDROM, - - // cooked/test_multi_karaoke_sampler.cue - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // pcengine.cue - "8eb436b476c9df343acb89ac1ba7e1b4", - - // pcfx.cue - "73e2855fff156f95fb8f0ae7c58d1b9d", - - // report_audiocd.cue - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdr.cue - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.cue - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // test_audiocd_cdtext.cue - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_incd_udf200_finalized.cue - "13d4c3def37e968b2ddc5cf5a9f18fdc", - - // test_multi_karaoke_sampler.cue - "f09312ba25a479fb81912a2965babd22", - - // test_multiple_indexes.cue - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_videocd.cue - "0d80890beeadf3f6e2cf2f88d0067afe", - - // cdg/report_audiocd.cue - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // cdg/test_multi_karaoke_sampler.cue - "f09312ba25a479fb81912a2965babd22", - - // cooked_cdg/test_multi_karaoke_sampler.cue - "f09312ba25a479fb81912a2965babd22", - - // cooked/report_cdrom.cue - "bf4bbec517101d0d6f45d2e4d50cb875", - - // cooked/report_cdrw.cue - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // cooked/test_multi_karaoke_sampler.cue - "f09312ba25a479fb81912a2965babd22" - }; - - public override string[] _longMd5S => new[] - { - // pcengine.cue - "bdcd5cabf4f48333f9dbb08967dce7a8", - - // pcfx.cue - "f421fc4af3ac528911b6d824825ff9b5", - - // report_audiocd.cue - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdr.cue - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw.cue - "3af5f943ddb9427d9c63a4ce3b704db9", - - // test_audiocd_cdtext.cue - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_incd_udf200_finalized.cue - "31e772f6997eb8dbf3ecf9aca9ea6bc6", - - // test_multi_karaoke_sampler.cue - "f48603d11883593f45ec4a3824681e4e", - - // test_multiple_indexes.cue - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_videocd.cue - "96ac6c364e4c3cb2f043197a45a97183", - - // cdg/report_audiocd.cue - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // cdg/test_multi_karaoke_sampler.cue - "f48603d11883593f45ec4a3824681e4e", - - // cooked_cdg/test_multi_karaoke_sampler.cue - "UNKNOWN", - - // cooked/report_cdrom.cue - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // cooked/report_cdrw.cue - "3af5f943ddb9427d9c63a4ce3b704db9", - - // cooked/test_multi_karaoke_sampler.cue - "f48603d11883593f45ec4a3824681e4e" - }; - - public override string[] _subchannelMd5S => new[] - { - // pcengine.cue - null, - - // pcfx.cue - null, - - // report_audiocd.cue - null, - - // report_cdr.cue - null, - - // report_cdrw.cue - null, - - // test_audiocd_cdtext.cue - null, - - // test_incd_udf200_finalized.cue - null, - - // test_multi_karaoke_sampler.cue - null, - - // test_multiple_indexes.cue - null, - - // test_videocd.cue - null, - - // cdg/report_audiocd.cue - "UNKNOWN", - - // cdg/test_multi_karaoke_sampler.cue - "UNKNOWN", - - // cooked_cdg/test_multi_karaoke_sampler.cue - "UNKNOWN", - - // cooked/report_cdrom.cue - null, - - // cooked/report_cdrw.cue - null, - - // cooked/test_multi_karaoke_sampler.cue - null - }; - - public override int[] _tracks => new[] - { - // pcengine.cue - 16, - - // pcfx.cue - 8, - - // report_audiocd.cue - 14, - - // report_cdr.cue - 1, - - // report_cdrw.cue - 1, - - // test_audiocd_cdtext.cue - 11, - - // test_incd_udf200_finalized.cue - 1, - - // test_multi_karaoke_sampler.cue - 16, - - // test_multiple_indexes.cue - 5, - - // test_videocd.cue - 2, - - // cdg/report_audiocd.cue - 14, - - // cdg/test_multi_karaoke_sampler.cue - 16, - - // cooked_cdg/test_multi_karaoke_sampler.cue - 16, - - // cooked/report_cdrom.cue - 1, - - // cooked/report_cdrw.cue - 1, - - // cooked/test_multi_karaoke_sampler.cue - 16 - }; - - public override int[][] _trackSessions => new[] - { - // pcengine.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.cue - new[] - { - 1 - }, - - // report_cdrw.cue - new[] - { - 1 - }, - - // test_audiocd_cdtext.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_incd_udf200_finalized.cue - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.cue - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_videocd.cue - new[] - { - 1, 1 - }, - - // cdg/report_audiocd.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // cdg/test_multi_karaoke_sampler.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // cooked_cdg/test_multi_karaoke_sampler.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // cooked/report_cdrom.cue - new[] - { - 1 - }, - - // cooked/report_cdrw.cue - new[] - { - 1 - }, - - // cooked/test_multi_karaoke_sampler.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // pcengine.cue - new ulong[] - { - 0, 3365, 38239, 46692, 52976, 61294, 68038, 74872, 82605, 85956, 90742, 98749, 106168, 111713, 119745, - 125629 - }, - - // pcfx.cue - new ulong[] - { - 0, 4170, 4684, 5716, 41834, 220420, 225121, 234973 - }, - - // report_audiocd.cue - new ulong[] - { - 0, 16399, 29901, 47800, 63164, 78775, 94582, 116975, 136016, 153922, 170601, 186389, 201649, 224299 - }, - - // report_cdr.cue - new ulong[] - { - 0 - }, - - // report_cdrw.cue - new ulong[] - { - 0 - }, - - // test_audiocd_cdtext.cue - new ulong[] - { - 0, 29752, 65034, 78426, 95080, 126147, 154959, 191685, 222776, 243438, 269600 - }, - - // test_incd_udf200_finalized.cue - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 0, 1737, 32449, 52372, 70004, 99798, 119461, 136699, 155490, 175526, 206161, 226150, 244055, 273665, - 293452, 310411 - }, - - // test_multiple_indexes.cue - new ulong[] - { - 0, 4654, 13725, 41035, 54839 - }, - - // test_videocd.cue - new ulong[] - { - 0, 1252 - }, - - // cdg/report_audiocd.cue - new ulong[] - { - 0, 16399, 29901, 47800, 63164, 78775, 94582, 116975, 136016, 153922, 170601, 186389, 201649, 224299 - }, - - // cdg/test_multi_karaoke_sampler.cue - new ulong[] - { - 0, 1737, 32449, 52372, 70004, 99798, 119461, 136699, 155490, 175526, 206161, 226150, 244055, 273665, - 293452, 310411 - }, - - // cooked_cdg/test_multi_karaoke_sampler.cue - new ulong[] - { - 0, 1737, 32449, 52372, 70004, 99798, 119461, 136699, 155490, 175526, 206161, 226150, 244055, 273665, - 293452, 310411 - }, - - // cooked/report_cdrom.cue - new ulong[] - { - 0 - }, - - // cooked/report_cdrw.cue - new ulong[] - { - 0 - }, - - // cooked/test_multi_karaoke_sampler.cue - new ulong[] - { - 0, 1737, 32449, 52372, 70004, 99798, 119461, 136699, 155490, 175526, 206161, 226150, 244055, 273665, - 293452, 310411 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // pcengine.cue - new ulong[] - { - 3364, 38238, 46691, 52975, 61293, 68037, 74871, 82604, 85955, 90741, 98748, 106167, 111712, 119744, - 125628, 160355 - }, - - // pcfx.cue - new ulong[] - { - 4169, 4683, 5715, 41833, 220419, 225120, 234972, 246304 - }, - - // report_audiocd.cue - new ulong[] - { - 16398, 29900, 47799, 63163, 78774, 94581, 116974, 136015, 153921, 170600, 186388, 201648, 224298, 247072 - }, - - // report_cdr.cue - new ulong[] - { - 254264 - }, - - // report_cdrw.cue - new ulong[] - { - 308223 - }, - - // test_audiocd_cdtext.cue - new ulong[] - { - 29751, 65033, 78425, 95079, 126146, 154958, 191684, 222775, 243437, 269599, 277695 - }, - - // test_incd_udf200_finalized.cue - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 1736, 32448, 52371, 70003, 99797, 119460, 136698, 155489, 175525, 206160, 226149, 244054, 273664, - 293451, 310410, 329007 - }, - - // test_multiple_indexes.cue - new ulong[] - { - 4653, 13724, 41034, 54838, 65535 - }, - - // test_videocd.cue - new ulong[] - { - 1251, 48793 - }, - - // cdg/report_audiocd.cue - new ulong[] - { - 16398, 29900, 47799, 63163, 78774, 94581, 116974, 136015, 153921, 170600, 186388, 201648, 224298, 247072 - }, - - // cdg/test_multi_karaoke_sampler.cue - new ulong[] - { - 1736, 32448, 52371, 70003, 99797, 119460, 136698, 155489, 175525, 206160, 226149, 244054, 273664, - 293451, 310410, 329007 - }, - - // cooked_cdg/test_multi_karaoke_sampler.cue - new ulong[] - { - 1736, 32448, 52371, 70003, 99797, 119460, 136698, 155489, 175525, 206160, 226149, 244054, 273664, - 293451, 310410, 329007 - }, - - // cooked/report_cdrom.cue - new ulong[] - { - 254264 - }, - - // cooked/report_cdrw.cue - new ulong[] - { - 308223 - }, - - // cooked/test_multi_karaoke_sampler.cue - new ulong[] - { - 1736, 32448, 52371, 70003, 99797, 119460, 136698, 155489, 175525, 206160, 226149, 244054, 273664, - 293451, 310410, 329007 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // pcengine.cue - new ulong[] - { - 150, 225, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 225 - }, - - // pcfx.cue - new ulong[] - { - 150, 225, 0, 0, 0, 150, 150, 150 - }, - - // report_audiocd.cue - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // report_cdr.cue - new ulong[] - { - 150 - }, - - // report_cdrw.cue - new ulong[] - { - 150 - }, - - // test_audiocd_cdtext.cue - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // test_incd_udf200_finalized.cue - new ulong[] - { - 150 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // test_multiple_indexes.cue - new ulong[] - { - 150, 150, 150, 150, 150 - }, - - // test_videocd.cue - new ulong[] - { - 150, 0 - }, - - // cdg/report_audiocd.cue - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // cdg/test_multi_karaoke_sampler.cue - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // cooked_cdg/test_multi_karaoke_sampler.cue - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // cooked/report_cdrom.cue - new ulong[] - { - 150 - }, - - // cooked/report_cdrw.cue - new ulong[] - { - 150 - }, - - // cooked/test_multi_karaoke_sampler.cue - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - } - }; - - public override byte[][] _trackFlags => new[] - { - // pcengine.cue - new byte[] - { - 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // pcfx.cue - new byte[] - { - 0, 4, 4, 4, 4, 0, 0, 0 - }, - - // report_audiocd.cue - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.cue - new byte[] - { - 4 - }, - - // report_cdrw.cue - new byte[] - { - 4 - }, - - // test_audiocd_cdtext.cue - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_incd_udf200_finalized.cue - new byte[] - { - 7 - }, - - // test_multi_karaoke_sampler.cue - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.cue - new byte[] - { - 2, 0, 0, 8, 1 - }, - - // test_videocd.cue - new byte[] - { - 4, 4 - }, - - // cdg/report_audiocd.cue - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // cdg/test_multi_karaoke_sampler.cue - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // cooked_cdg/test_multi_karaoke_sampler.cue - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // cooked/report_cdrom.cue - new byte[] - { - 4 - }, - - // cooked/report_cdrw.cue - new byte[] - { - 4 - }, - - // cooked/test_multi_karaoke_sampler.cue - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "CDRWin"); public override IMediaImage _plugin => new CdrWin(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "pcengine.cue", + MediaType = MediaType.CD, + Sectors = 160356, + MD5 = "8eb436b476c9df343acb89ac1ba7e1b4", + LongMD5 = "bdcd5cabf4f48333f9dbb08967dce7a8", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3364, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3365, + End = 38238, + Pregap = 225, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38239, + End = 46691, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 46692, + End = 52975, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52976, + End = 61293, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61294, + End = 68037, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68038, + End = 74871, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 74872, + End = 82604, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 82605, + End = 85955, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 85956, + End = 90741, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 90742, + End = 98748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 98749, + End = 106167, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106168, + End = 111712, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 111713, + End = 119744, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119745, + End = 125628, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 125629, + End = 160355, + Pregap = 225, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.cue", + MediaType = MediaType.CD, + Sectors = 246305, + MD5 = "73e2855fff156f95fb8f0ae7c58d1b9d", + LongMD5 = "f421fc4af3ac528911b6d824825ff9b5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4169, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4170, + End = 4683, + Pregap = 225, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4684, + End = 5715, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5716, + End = 41833, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41834, + End = 220419, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220420, + End = 225120, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225121, + End = 234972, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 234973, + End = 246304, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.cue", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + LongMD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16398, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16399, + End = 29900, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29901, + End = 47799, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47800, + End = 63163, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63164, + End = 78774, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78775, + End = 94581, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94582, + End = 116974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 116975, + End = 136015, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136016, + End = 153921, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153922, + End = 170600, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170601, + End = 186388, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186389, + End = 201648, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201649, + End = 224298, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224299, + End = 247072, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.cue", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.cue", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.cue", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + LongMD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29751, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29752, + End = 65033, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65034, + End = 78425, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78426, + End = 95079, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95080, + End = 126146, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126147, + End = 154958, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154959, + End = 191684, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191685, + End = 222775, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222776, + End = 243437, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243438, + End = 269599, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269600, + End = 277695, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.cue", + MediaType = MediaType.CDROMXA, + Sectors = 350134, + MD5 = "13d4c3def37e968b2ddc5cf5a9f18fdc", + LongMD5 = "31e772f6997eb8dbf3ecf9aca9ea6bc6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 7 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.cue", + MediaType = MediaType.CDROMXA, + Sectors = 329008, + MD5 = "f09312ba25a479fb81912a2965babd22", + LongMD5 = "f48603d11883593f45ec4a3824681e4e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32448, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32449, + End = 52371, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52372, + End = 70003, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70004, + End = 99797, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99798, + End = 119460, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119461, + End = 136698, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136699, + End = 155489, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155490, + End = 175525, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175526, + End = 206160, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206161, + End = 226149, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226150, + End = 244054, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244055, + End = 273664, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273665, + End = 293451, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293452, + End = 310410, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310411, + End = 329007, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.cue", + MediaType = MediaType.CDDA, + Sectors = 65536, + MD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + LongMD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4653, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4654, + End = 13724, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13725, + End = 41034, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41035, + End = 54838, + Pregap = 150, + Flags = 8 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54839, + End = 65535, + Pregap = 150, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.cue", + MediaType = MediaType.CDROMXA, + Sectors = 48794, + MD5 = "0d80890beeadf3f6e2cf2f88d0067afe", + LongMD5 = "96ac6c364e4c3cb2f043197a45a97183", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1251, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 0, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "cdg/report_audiocd.cue", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + LongMD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16398, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16399, + End = 29900, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29901, + End = 47799, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47800, + End = 63163, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63164, + End = 78774, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78775, + End = 94581, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94582, + End = 116974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 116975, + End = 136015, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136016, + End = 153921, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153922, + End = 170600, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170601, + End = 186388, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186389, + End = 201648, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201649, + End = 224298, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224299, + End = 247072, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "cdg/test_multi_karaoke_sampler.cue", + MediaType = MediaType.CDROMXA, + Sectors = 329008, + MD5 = "f09312ba25a479fb81912a2965babd22", + LongMD5 = "f48603d11883593f45ec4a3824681e4e", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32448, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32449, + End = 52371, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52372, + End = 70003, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70004, + End = 99797, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99798, + End = 119460, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119461, + End = 136698, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136699, + End = 155489, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155490, + End = 175525, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175526, + End = 206160, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206161, + End = 226149, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226150, + End = 244054, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244055, + End = 273664, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273665, + End = 293451, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293452, + End = 310410, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310411, + End = 329007, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "cooked_cdg/test_multi_karaoke_sampler.cue", + MediaType = MediaType.CDROMXA, + Sectors = 329008, + MD5 = "f09312ba25a479fb81912a2965babd22", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32448, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32449, + End = 52371, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52372, + End = 70003, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70004, + End = 99797, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99798, + End = 119460, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119461, + End = 136698, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136699, + End = 155489, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155490, + End = 175525, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175526, + End = 206160, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206161, + End = 226149, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226150, + End = 244054, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244055, + End = 273664, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273665, + End = 293451, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293452, + End = 310410, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310411, + End = 329007, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "cooked/report_cdrom.cue", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "cooked/report_cdrw.cue", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "cooked/test_multi_karaoke_sampler.cue", + MediaType = MediaType.CDROMXA, + Sectors = 329008, + MD5 = "f09312ba25a479fb81912a2965babd22", + LongMD5 = "f48603d11883593f45ec4a3824681e4e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32448, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32449, + End = 52371, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52372, + End = 70003, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70004, + End = 99797, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99798, + End = 119460, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119461, + End = 136698, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136699, + End = 155489, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155490, + End = 175525, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175526, + End = 206160, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206161, + End = 226149, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226150, + End = 244054, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244055, + End = 273664, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273665, + End = 293451, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293452, + End = 310410, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310411, + End = 329007, + Pregap = 150, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/CDRWin10.cs b/Aaru.Tests/Images/CDRWin10.cs index 9368e09f6..6bdf1bb21 100644 --- a/Aaru.Tests/Images/CDRWin10.cs +++ b/Aaru.Tests/Images/CDRWin10.cs @@ -36,335 +36,131 @@ namespace Aaru.Tests.Images [TestFixture] public class CDRWin10 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "report_audiocd.xmd", "report_cdrom.xmd", "report_cdrw_2x.xmd", "report_cdr.xmd", "report_enhancedcd.xmd", - "test_karaoke_multi_sampler.xmd" - }; - - public override ulong[] _sectors => new ulong[] - { - // report_audiocd.xmd - 0, - - // report_cdrom.xmd - 0, - - // report_cdrw_2x.xmd - 0, - - // report_cdr.xmd - 0, - - // report_enhancedcd.xmd - 0, - - // test_karaoke_multi_sampler.xmd - 0 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // report_audiocd.xmd - MediaType.CDDA, - - // report_cdrom.xmd - MediaType.CDROM, - - // report_cdrw_2x.xmd - MediaType.CDRW, - - // report_cdr.xmd - MediaType.CDR, - - // report_enhancedcd.xmd - MediaType.CDPLUS, - - // test_karaoke_multi_sampler.xmd - MediaType.CD - }; - - public override string[] _md5S => new[] - { - // report_audiocd.xmd - "UNKNOWN", - - // report_cdrom.xmd - "UNKNOWN", - - // report_cdrw_2x.xmd - "UNKNOWN", - - // report_cdr.xmd - "UNKNOWN", - - // report_enhancedcd.xmd - "UNKNOWN", - - // test_karaoke_multi_sampler.xmd - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // report_audiocd.xmd - "UNKNOWN", - - // report_cdrom.xmd - "UNKNOWN", - - // report_cdrw_2x.xmd - "UNKNOWN", - - // report_cdr.xmd - "UNKNOWN", - - // report_enhancedcd.xmd - "UNKNOWN", - - // test_karaoke_multi_sampler.xmd - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // report_audiocd.xmd - "UNKNOWN", - - // report_cdrom.xmd - "UNKNOWN", - - // report_cdrw_2x.xmd - "UNKNOWN", - - // report_cdr.xmd - "UNKNOWN", - - // report_enhancedcd.xmd - "UNKNOWN", - - // test_karaoke_multi_sampler.xmd - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // report_audiocd.xmd - 1, - - // report_cdrom.xmd - 1, - - // report_cdrw_2x.xmd - 1, - - // report_cdr.xmd - 1, - - // report_enhancedcd.xmd - 1, - - // test_karaoke_multi_sampler.xmd - 1 - }; - - public override int[][] _trackSessions => new[] - { - // report_audiocd.xmd - new[] - { - 1 - }, - - // report_cdrom.xmd - new[] - { - 1 - }, - - // report_cdrw_2x.xmd - new[] - { - 1 - }, - - // report_cdr.xmd - new[] - { - 1 - }, - - // report_enhancedcd.xmd - new[] - { - 1 - }, - - // test_karaoke_multi_sampler.xmd - new[] - { - 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // report_audiocd.xmd - new ulong[] - { - 0 - }, - - // report_cdrom.xmd - new ulong[] - { - 0 - }, - - // report_cdrw_2x.xmd - new ulong[] - { - 0 - }, - - // report_cdr.xmd - new ulong[] - { - 0 - }, - - // report_enhancedcd.xmd - new ulong[] - { - 0 - }, - - // test_karaoke_multi_sampler.xmd - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // report_audiocd.xmd - new ulong[] - { - 0 - }, - - // report_cdrom.xmd - new ulong[] - { - 0 - }, - - // report_cdrw_2x.xmd - new ulong[] - { - 0 - }, - - // report_cdr.xmd - new ulong[] - { - 0 - }, - - // report_enhancedcd.xmd - new ulong[] - { - 0 - }, - - // test_karaoke_multi_sampler.xmd - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // report_audiocd.xmd - new ulong[] - { - 0 - }, - - // report_cdrom.xmd - new ulong[] - { - 0 - }, - - // report_cdrw_2x.xmd - new ulong[] - { - 0 - }, - - // report_cdr.xmd - new ulong[] - { - 0 - }, - - // report_enhancedcd.xmd - new ulong[] - { - 0 - }, - - // test_karaoke_multi_sampler.xmd - new ulong[] - { - 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // report_audiocd.xmd - new byte[] - { - 0 - }, - - // report_cdrom.xmd - new byte[] - { - 0 - }, - - // report_cdrw_2x.xmd - new byte[] - { - 0 - }, - - // report_cdr.xmd - new byte[] - { - 0 - }, - - // report_enhancedcd.xmd - new byte[] - { - 0 - }, - - // test_karaoke_multi_sampler.xmd - new byte[] - { - 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "CDRWin 10"); public override IMediaImage _plugin => new DiscImages.Alcohol120(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "report_audiocd.xmd", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.xmd", + MediaType = MediaType.CDROM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_2x.xmd", + MediaType = MediaType.CDRW, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.xmd", + MediaType = MediaType.CDR, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.xmd", + MediaType = MediaType.CDPLUS, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_karaoke_multi_sampler.xmd", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/CPCDSK.cs b/Aaru.Tests/Images/CPCDSK.cs index 653a28ed2..e070ea9b7 100644 --- a/Aaru.Tests/Images/CPCDSK.cs +++ b/Aaru.Tests/Images/CPCDSK.cs @@ -37,186 +37,115 @@ namespace Aaru.Tests.Images [TestFixture] public class CPCDSK : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "3D Construction Kit (1991)(Domark)(Disk 1 of 2)[a].dsk.lz", - "3D Construction Kit (1991)(Domark)(Disk 1 of 2).dsk.lz", - "3D Construction Kit (1991)(Domark)(Disk 2 of 2)[a].dsk.lz", - "3D Construction Kit (1991)(Domark)(Disk 2 of 2).dsk.lz", "3D Construction Kit (1991)(Domark).dsk.lz", - "3D Construction Kit (1991)(Domark)[Objects Disk].dsk.lz", - "BCPL Compiler v1.0 (1986)(Arnor)[CPM Version].dsk.lz", "BCPL Compiler v1.0 (1986)(Arnor).dsk.lz", - "CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[a][CPM Version].dsk.lz", - "CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[CPM Version].dsk.lz", - "CPM Plus v1.0 (1985)(Amstrad)(Disk 2 of 4)[CPM Version].dsk.lz", - "CPM Plus v1.0 (1985)(Amstrad)(Disk 3 of 4)[CPM Version].dsk.lz", - "CPM Plus v1.0 (1985)(Amstrad)(Disk 4 of 4)[CPM Version].dsk.lz" - }; - public override ulong[] _sectors => new ulong[] - { - // 3D Construction Kit (1991)(Domark)(Disk 1 of 2)[a].dsk.lz - 360, - - // 3D Construction Kit (1991)(Domark)(Disk 1 of 2).dsk.lz - 360, - - // 3D Construction Kit (1991)(Domark)(Disk 2 of 2)[a].dsk.lz - 360, - - // 3D Construction Kit (1991)(Domark)(Disk 2 of 2).dsk.lz - 360, - - // 3D Construction Kit (1991)(Domark).dsk.lz - 360, - - // 3D Construction Kit (1991)(Domark)[Objects Disk].dsk.lz - 387, - - // BCPL Compiler v1.0 (1986)(Arnor)[CPM Version].dsk.lz - 360, - - // BCPL Compiler v1.0 (1986)(Arnor).dsk.lz - 360, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[a][CPM Version].dsk.lz - 359, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[CPM Version].dsk.lz - 360, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 2 of 4)[CPM Version].dsk.lz - 360, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 3 of 4)[CPM Version].dsk.lz - 360, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 4 of 4)[CPM Version].dsk.lz - 360 - }; - public override uint[] _sectorSize => new uint[] - { - // 3D Construction Kit (1991)(Domark)(Disk 1 of 2)[a].dsk.lz - 512, - - // 3D Construction Kit (1991)(Domark)(Disk 1 of 2).dsk.lz - 512, - - // 3D Construction Kit (1991)(Domark)(Disk 2 of 2)[a].dsk.lz - 512, - - // 3D Construction Kit (1991)(Domark)(Disk 2 of 2).dsk.lz - 512, - - // 3D Construction Kit (1991)(Domark).dsk.lz - 512, - - // 3D Construction Kit (1991)(Domark)[Objects Disk].dsk.lz - 512, - - // BCPL Compiler v1.0 (1986)(Arnor)[CPM Version].dsk.lz - 512, - - // BCPL Compiler v1.0 (1986)(Arnor).dsk.lz - 512, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[a][CPM Version].dsk.lz - 512, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[CPM Version].dsk.lz - 512, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 2 of 4)[CPM Version].dsk.lz - 512, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 3 of 4)[CPM Version].dsk.lz - 512, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 4 of 4)[CPM Version].dsk.lz - 512 - }; - public override MediaType[] _mediaTypes => new[] - { - // 3D Construction Kit (1991)(Domark)(Disk 1 of 2)[a].dsk.lz - MediaType.CompactFloppy, - - // 3D Construction Kit (1991)(Domark)(Disk 1 of 2).dsk.lz - MediaType.CompactFloppy, - - // 3D Construction Kit (1991)(Domark)(Disk 2 of 2)[a].dsk.lz - MediaType.CompactFloppy, - - // 3D Construction Kit (1991)(Domark)(Disk 2 of 2).dsk.lz - MediaType.CompactFloppy, - - // 3D Construction Kit (1991)(Domark).dsk.lz - MediaType.CompactFloppy, - - // 3D Construction Kit (1991)(Domark)[Objects Disk].dsk.lz - MediaType.CompactFloppy, - - // BCPL Compiler v1.0 (1986)(Arnor)[CPM Version].dsk.lz - MediaType.CompactFloppy, - - // BCPL Compiler v1.0 (1986)(Arnor).dsk.lz - MediaType.CompactFloppy, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[a][CPM Version].dsk.lz - MediaType.CompactFloppy, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[CPM Version].dsk.lz - MediaType.CompactFloppy, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 2 of 4)[CPM Version].dsk.lz - MediaType.CompactFloppy, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 3 of 4)[CPM Version].dsk.lz - MediaType.CompactFloppy, - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 4 of 4)[CPM Version].dsk.lz - MediaType.CompactFloppy - }; - public override string[] _md5S => new[] - { - // 3D Construction Kit (1991)(Domark)(Disk 1 of 2)[a].dsk.lz - "ee601c0d2beade20bb5c04b3f5800ff6", - - // 3D Construction Kit (1991)(Domark)(Disk 1 of 2).dsk.lz - "ee601c0d2beade20bb5c04b3f5800ff6", - - // 3D Construction Kit (1991)(Domark)(Disk 2 of 2)[a].dsk.lz - "dcb039b3b2ff2d6bdef8bf6c13ef3f83", - - // 3D Construction Kit (1991)(Domark)(Disk 2 of 2).dsk.lz - "dcb039b3b2ff2d6bdef8bf6c13ef3f83", - - // 3D Construction Kit (1991)(Domark).dsk.lz - "e1b14e9b744b08a1b2b56fa25f034682", - - // 3D Construction Kit (1991)(Domark)[Objects Disk].dsk.lz - "82007217a3aa6bb91468b71a6dc4bfe5", - - // BCPL Compiler v1.0 (1986)(Arnor)[CPM Version].dsk.lz - "acd60bb0119e0b5aa1790bef344211ac", - - // BCPL Compiler v1.0 (1986)(Arnor).dsk.lz - "0330956c2fe38f278d7cba6f7bd8aa2d", - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[a][CPM Version].dsk.lz - "a568e44f556661f9e4b7db01c126c676", - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[CPM Version].dsk.lz - "5dc0d482a773043d8683a84c8220df95", - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 2 of 4)[CPM Version].dsk.lz - "64edd62fabb381ef49bf3a8f43435824", - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 3 of 4)[CPM Version].dsk.lz - "b381bbc72ab664d658ddd5898c7ff266", - - // CPM Plus v1.0 (1985)(Amstrad)(Disk 4 of 4)[CPM Version].dsk.lz - "ad43345ac469844465da6d73369cc6b1" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "CPCDSK"); public override IMediaImage _plugin => new Cpcdsk(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "3D Construction Kit (1991)(Domark)(Disk 1 of 2)[a].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "ee601c0d2beade20bb5c04b3f5800ff6" + }, + new BlockImageTestExpected + { + TestFile = "3D Construction Kit (1991)(Domark)(Disk 1 of 2).dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "ee601c0d2beade20bb5c04b3f5800ff6" + }, + new BlockImageTestExpected + { + TestFile = "3D Construction Kit (1991)(Domark)(Disk 2 of 2)[a].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "dcb039b3b2ff2d6bdef8bf6c13ef3f83" + }, + new BlockImageTestExpected + { + TestFile = "3D Construction Kit (1991)(Domark)(Disk 2 of 2).dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "dcb039b3b2ff2d6bdef8bf6c13ef3f83" + }, + new BlockImageTestExpected + { + TestFile = "3D Construction Kit (1991)(Domark).dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "e1b14e9b744b08a1b2b56fa25f034682" + }, + new BlockImageTestExpected + { + TestFile = "3D Construction Kit (1991)(Domark)[Objects Disk].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 387, + SectorSize = 512, + MD5 = "82007217a3aa6bb91468b71a6dc4bfe5" + }, + new BlockImageTestExpected + { + TestFile = "BCPL Compiler v1.0 (1986)(Arnor)[CPM Version].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "acd60bb0119e0b5aa1790bef344211ac" + }, + new BlockImageTestExpected + { + TestFile = "BCPL Compiler v1.0 (1986)(Arnor).dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "0330956c2fe38f278d7cba6f7bd8aa2d" + }, + new BlockImageTestExpected + { + TestFile = "CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[a][CPM Version].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 359, + SectorSize = 512, + MD5 = "a568e44f556661f9e4b7db01c126c676" + }, + new BlockImageTestExpected + { + TestFile = "CPM Plus v1.0 (1985)(Amstrad)(Disk 1 of 4)[CPM Version].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "5dc0d482a773043d8683a84c8220df95" + }, + new BlockImageTestExpected + { + TestFile = "CPM Plus v1.0 (1985)(Amstrad)(Disk 2 of 4)[CPM Version].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "64edd62fabb381ef49bf3a8f43435824" + }, + new BlockImageTestExpected + { + TestFile = "CPM Plus v1.0 (1985)(Amstrad)(Disk 3 of 4)[CPM Version].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "b381bbc72ab664d658ddd5898c7ff266" + }, + new BlockImageTestExpected + { + TestFile = "CPM Plus v1.0 (1985)(Amstrad)(Disk 4 of 4)[CPM Version].dsk.lz", + MediaType = MediaType.CompactFloppy, + Sectors = 360, + SectorSize = 512, + MD5 = "ad43345ac469844465da6d73369cc6b1" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/CisCopy/Uncompressed.cs b/Aaru.Tests/Images/CisCopy/Uncompressed.cs index 40694ad62..eb78ff125 100644 --- a/Aaru.Tests/Images/CisCopy/Uncompressed.cs +++ b/Aaru.Tests/Images/CisCopy/Uncompressed.cs @@ -37,48 +37,179 @@ namespace Aaru.Tests.Images.CisCopy public class Uncompressed : BlockMediaImageTest { // TODO: Support compression - public override string[] _testFiles => new[] - { - "md1dd8_all.dcf.lz", "md1dd8_belelung.dcf.lz", "md1dd8_fat.dcf.lz", "md1dd_all.dcf.lz", - "md1dd_belelung.dcf.lz", "md1dd_fat.dcf.lz", "md2dd8_all.dcf.lz", "md2dd8_belelung.dcf.lz", - "md2dd8_fat.dcf.lz", "md2dd_all.dcf.lz", "md2dd_belelung.dcf.lz", "md2dd_fat.dcf.lz", "md2hd_all.dcf.lz", - "md2hd_belelung.dcf.lz", "md2hd_fat.dcf.lz", "mf2dd_all.dcf.lz", "mf2dd_belelung.dcf.lz", - "mf2dd_fat.dcf.lz", "mf2hd_all.dcf.lz", "mf2hd_belelung.dcf.lz", "mf2hd_fat.dcf.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - 320, 320, 320, 360, 360, 360, 640, 640, 640, 720, 720, 720, 2400, 2400, 2400, 1440, 1440, 1440, 2880, 2880, - 2880 - }; - - public override uint[] _sectorSize => new uint[] - { - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - MediaType.DOS_525_SS_DD_8, MediaType.DOS_525_SS_DD_8, MediaType.DOS_525_SS_DD_8, MediaType.DOS_525_SS_DD_9, - MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_DS_DD_8, - MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_9, - MediaType.DOS_525_HD, MediaType.DOS_525_HD, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, - MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD, MediaType.DOS_35_HD, - MediaType.DOS_35_HD - }; - - public override string[] _md5S => new[] - { - "95c0b76419c1c74db6dbe1d790f97dde", "95c0b76419c1c74db6dbe1d790f97dde", "6f6507e416b7320d583dc347b8e57844", - "48b93e8619c4c13f4a3724b550e4b371", "48b93e8619c4c13f4a3724b550e4b371", "1d060d2e2543e1c2e8569f5451660060", - "0c93155bbc5e412f5014e037d08c2745", "0c93155bbc5e412f5014e037d08c2745", "0c93155bbc5e412f5014e037d08c2745", - "d2a33090ec03bfb536e7356deacf4bbc", "d2a33090ec03bfb536e7356deacf4bbc", "d2a33090ec03bfb536e7356deacf4bbc", - "181f3bc62f0b90f74af9d8027ebf7512", "181f3bc62f0b90f74af9d8027ebf7512", "181f3bc62f0b90f74af9d8027ebf7512", - "783559ee5e774515d5e7d2feab9c333e", "783559ee5e774515d5e7d2feab9c333e", "783559ee5e774515d5e7d2feab9c333e", - "91f3fde8d56a536cdda4c6758e5dbc93", "91f3fde8d56a536cdda4c6758e5dbc93", "91f3fde8d56a536cdda4c6758e5dbc93" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "CisCopy"); public override IMediaImage _plugin => new DiscImages.CisCopy(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "md1dd8_all.dcf.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "95c0b76419c1c74db6dbe1d790f97dde" + }, + new BlockImageTestExpected + { + TestFile = "md1dd8_belelung.dcf.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "95c0b76419c1c74db6dbe1d790f97dde" + }, + new BlockImageTestExpected + { + TestFile = "md1dd8_fat.dcf.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6f6507e416b7320d583dc347b8e57844" + }, + new BlockImageTestExpected + { + TestFile = "md1dd_all.dcf.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "48b93e8619c4c13f4a3724b550e4b371" + }, + new BlockImageTestExpected + { + TestFile = "md1dd_belelung.dcf.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "48b93e8619c4c13f4a3724b550e4b371" + }, + new BlockImageTestExpected + { + TestFile = "md1dd_fat.dcf.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "1d060d2e2543e1c2e8569f5451660060" + }, + new BlockImageTestExpected + { + TestFile = "md2dd8_all.dcf.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "0c93155bbc5e412f5014e037d08c2745" + }, + new BlockImageTestExpected + { + TestFile = "md2dd8_belelung.dcf.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "0c93155bbc5e412f5014e037d08c2745" + }, + new BlockImageTestExpected + { + TestFile = "md2dd8_fat.dcf.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "0c93155bbc5e412f5014e037d08c2745" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_all.dcf.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "d2a33090ec03bfb536e7356deacf4bbc" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_belelung.dcf.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "d2a33090ec03bfb536e7356deacf4bbc" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fat.dcf.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "d2a33090ec03bfb536e7356deacf4bbc" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_all.dcf.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "181f3bc62f0b90f74af9d8027ebf7512" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_belelung.dcf.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "181f3bc62f0b90f74af9d8027ebf7512" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_fat.dcf.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "181f3bc62f0b90f74af9d8027ebf7512" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_all.dcf.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "783559ee5e774515d5e7d2feab9c333e" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_belelung.dcf.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "783559ee5e774515d5e7d2feab9c333e" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fat.dcf.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "783559ee5e774515d5e7d2feab9c333e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_all.dcf.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "91f3fde8d56a536cdda4c6758e5dbc93" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_belelung.dcf.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "91f3fde8d56a536cdda4c6758e5dbc93" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fat.dcf.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "91f3fde8d56a536cdda4c6758e5dbc93" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/CloneCD.cs b/Aaru.Tests/Images/CloneCD.cs index d57d0d4ff..71552a0f5 100644 --- a/Aaru.Tests/Images/CloneCD.cs +++ b/Aaru.Tests/Images/CloneCD.cs @@ -37,1356 +37,1639 @@ namespace Aaru.Tests.Images [TestFixture] public class CloneCD : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_theapprentice.ccd", "jaguarcd.ccd", "pcengine.ccd", "pcfx.ccd", "report_audiocd.ccd", - "report_cdrom.ccd", "report_cdrw_2x.ccd", "report_enhancedcd.ccd", "test_audiocd_cdtext.ccd", - "test_castrated_leadout.ccd", "test_disc_starts_at_track2.ccd", "test_data_track_as_audio_fixed_sub.ccd", - "test_data_track_as_audio.ccd", "test_enhancedcd.ccd", "test_incd_udf200_finalized.ccd", - "test_karaoke_multi_sampler.ccd", "test_multiple_indexes.ccd", "test_multisession.ccd", - "test_track0_in_session2.ccd", "test_track111_in_session2_fixed_sub.ccd", "test_track1-2-9_fixed_sub.ccd", - "test_track1-2-9.ccd", "test_track1_overlaps_session2.ccd", "test_track2_inside_leadout.ccd", - "test_track2_inside_session2_leadin.ccd", "test_track2_inside_track1.ccd", "test_videocd.ccd" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.ccd - 279300, - - // jaguarcd.ccd - 243587, - - // pcengine.ccd - 160956, - - // pcfx.ccd - 246680, - - // report_audiocd.ccd - 247073, - - // report_cdrom.ccd - 254265, - - // report_cdrw_2x.ccd - 308224, - - // report_enhancedcd.ccd - 303316, - - // test_audiocd_cdtext.ccd - 277696, - - // test_castrated_leadout.ccd - 1050, - - // test_disc_starts_at_track2.ccd - 62385, - - // test_data_track_as_audio_fixed_sub.ccd - 62385, - - // test_data_track_as_audio.ccd - 62385, - - // test_enhancedcd.ccd - 59206, - - // test_incd_udf200_finalized.ccd - 350134, - - // test_karaoke_multi_sampler.ccd - 329158, - - // test_multiple_indexes.ccd - 65536, - - // test_multisession.ccd - 51168, - - // test_track0_in_session2.ccd - 36939, - - // test_track111_in_session2_fixed_sub.ccd - 36939, - - // test_track1-2-9_fixed_sub.ccd - 25539, - - // test_track1_2_9.ccd - 25539, - - // test_track1_overlaps_session2.ccd - 25539, - - // test_track2_inside_leadout.ccd - 25539, - - // test_track2_inside_session2_leadin.ccd - 62385, - - // test_track2_inside_track1.ccd - 62385, - - // test_videocd.ccd - 48794 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.ccd - MediaType.CDDA, - - // jaguarcd.ccd - MediaType.CDDA, - - // pcengine.ccd - MediaType.CD, - - // pcfx.ccd - MediaType.CD, - - // report_audiocd.ccd - MediaType.CDDA, - - // report_cdrom.ccd - MediaType.CDROM, - - // report_cdrw_2x.ccd - MediaType.CDROM, - - // report_enhancedcd.ccd - MediaType.CDROMXA, - - // test_audiocd_cdtext.ccd - MediaType.CDDA, - - // test_castrated_leadout.ccd - MediaType.CDDA, - - // test_disc_starts_at_track2.ccd - MediaType.CDROMXA, - - // test_data_track_as_audio_fixed_sub.ccd - MediaType.CDROMXA, - - // test_data_track_as_audio.ccd - MediaType.CDROMXA, - - // test_enhancedcd.ccd - MediaType.CDROMXA, - - // test_incd_udf200_finalized.ccd - MediaType.CDROMXA, - - // test_karaoke_multi_sampler.ccd - MediaType.CDROMXA, - - // test_multiple_indexes.ccd - MediaType.CDDA, - - // test_multisession.ccd - MediaType.CDROMXA, - - // test_track0_in_session2.ccd - MediaType.CDROMXA, - - // test_track111_in_session2_fixed_sub.ccd - MediaType.CDROMXA, - - // test_track1-2-9_fixed_sub.ccd - MediaType.CDROMXA, - - // test_track1_2_9.ccd - MediaType.CDROMXA, - - // test_track1_overlaps_session2.ccd - MediaType.CDROM, - - // test_track2_inside_leadout.ccd - MediaType.CDROMXA, - - // test_track2_inside_session2_leadin.ccd - MediaType.CDROMXA, - - // test_track2_inside_track1.ccd - MediaType.CDROMXA, - - // test_videocd.ccd - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.ccd - "UNKNOWN", - - // jaguarcd.ccd - "3147ff203341692813de8e5775f45d84", - - // pcengine.ccd - "127b0a92b00ea9a67df1ed8c80daadc7", - - // pcfx.ccd - "9d538bd1ee1db068685ed59d29185941", - - // report_audiocd.ccd - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdrom.ccd - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw_2x.ccd - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // report_enhancedcd.ccd - "588d8ff1fef693bbe5719ac6c2f96bc1", - - // test_audiocd_cdtext.ccd - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_castrated_leadout.ccd - "UNKNOWN", - - // test_disc_starts_at_track2.ccd - "6fa06c10561343438736a8d3d9a965ea", - - // test_data_track_as_audio_fixed_sub.ccd - "d9d46cae2a3a46316c8e1411e84d40ef", - - // test_data_track_as_audio.ccd - "d9d46cae2a3a46316c8e1411e84d40ef", - - // test_enhancedcd.ccd - "5984f395dccd4d1e10df0f92d54d872d", - - // test_incd_udf200_finalized.ccd - "f95d6f978ddb4f98bbffda403f627fe1", - - // test_karaoke_multi_sampler.ccd - "9a19aa0df066732a8ec34025e8160248", - - // test_multiple_indexes.ccd - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession.ccd - "f793fecc486a83cbe05b51c2d98059b9", - - // test_track0_in_session2.ccd - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track111_in_session2_fixed_sub.ccd - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track1-2-9_fixed_sub.ccd - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track1_2_9.ccd - "f9efc75192a7c0f3252e696c617f8ddd", - - // test_track1_overlaps_session2.ccd - "UNKNOWN", - - // test_track2_inside_leadout.ccd - "UNKNOWN", - - // test_track2_inside_session2_leadin.ccd - "6fa06c10561343438736a8d3d9a965ea", - - // test_track2_inside_track1.ccd - "6fa06c10561343438736a8d3d9a965ea", - - // test_videocd.ccd - "b640eed2eba209ebba4e6cd3171883a4" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.ccd - "UNKNOWN", - - // jaguarcd.ccd - "3147ff203341692813de8e5775f45d84", - - // pcengine.ccd - "6ead3bdedb374f7b9bdf24773d30e491", - - // pcfx.ccd - "76f4bd63c13db3e44fbf7acda20f49e2", - - // report_audiocd.ccd - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdrom.ccd - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw_2x.ccd - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_enhancedcd.ccd - "d72e737f49482d1330e8fe03b9f40b79", - - // test_audiocd_cdtext.ccd - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_castrated_leadout.ccd - "UNKNOWN", - - // test_disc_starts_at_track2.ccd - "c82d20702d31bc15bdc91f7e107862ae", - - // test_data_track_as_audio_fixed_sub.ccd - "b3550e61649ba5276fed8d74f8e512ee", - - // test_data_track_as_audio.ccd - "b3550e61649ba5276fed8d74f8e512ee", - - // test_enhancedcd.ccd - "df8f4b8b58b9cada80ee442ddbd690f4", - - // test_incd_udf200_finalized.ccd - "6751e0ae7821f92221672b1cd5a1ff36", - - // test_karaoke_multi_sampler.ccd - "e981f7dfdb522ba937fe75474e23a446", - - // test_multiple_indexes.ccd - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession.ccd - "199b85a01c27f55f463fc7d606adfafa", - - // test_track0_in_session2.ccd - "3b3172070738044417ae5284195acbfd", - - // test_track111_in_session2_fixed_sub.ccd - "396f86cdd8bfb012b68eabd5a94f604b", - - // test_track1-2-9_fixed_sub.ccd - "649047a018bc6c1ba667397049eae888", - - // test_track1_2_9.ccd - "3b3172070738044417ae5284195acbfd", - - // test_track1_overlaps_session2.ccd - "UNKNOWN", - - // test_track2_inside_leadout.ccd - "UNKNOWN", - - // test_track2_inside_session2_leadin.ccd - "608a73cd10bccdadde68523aead1ee72", - - // test_track2_inside_track1.ccd - "450fe640a58c0bc1fc9cd6e779884d2c", - - // test_videocd.ccd - "a1194d29dfb4e207eabf6208f908a213" - }; - - public override string[] _subchannelMd5S => new[] - { - // cdiready_the_apprentice.ccd - "UNKNOWN", - - // jaguarcd.ccd - "0534d96336d9fb46f2c48c9c27f07999", - - // pcengine.ccd - "315ee5ebb36969b4ce0fb0162f7a9932", - - // pcfx.ccd - "d9804e5f919ffb1531832049df8f0165", - - // report_audiocd.ccd - "b744ddaf1d4ebd3bd0b96a160f55637d", - - // report_cdrom.ccd - "c5ae648d586e55afd1108294c9b86ca6", - - // report_cdrw_2x.ccd - "c73559a91abd57f732c7ea609fef547a", - - // report_enhancedcd.ccd - "3d4bab2b1bf8f9a373e35f4e743aa883", - - // test_audiocd_cdtext.ccd - "2a2918ad19f5bf1b6e52b57e40fe47eb", - - // test_castrated_leadout.ccd - "UNKNOWN", - - // test_disc_starts_at_track2.ccd - "976f4684da623c64acee464e9dca046e", - - // test_data_track_as_audio_fixed_sub.ccd - "a53aba8a0fdb038ef67e68ba009aa5b1", - - // test_data_track_as_audio.ccd - "a53aba8a0fdb038ef67e68ba009aa5b1", - - // test_enhancedcd.ccd - "a80b7b6b704cf7fe94942df281d4588a", - - // test_incd_udf200_finalized.ccd - "569c87cdc115f2d02b2268fc2b4d8b11", - - // test_karaoke_multi_sampler.ccd - "c48c09b8c7c4af99de1cf97faaef32fc", - - // test_multiple_indexes.ccd - "d374e82dfcbc4515c09a9a6e5955bf1d", - - // test_multisession.ccd - "7e9326e1de734f00ba71d5a8100d0cda", - - // test_track0_in_session2.ccd - "7eedb60edb3dc77eac41fd8f2214dfb8", - - // test_track111_in_session2_fixed_sub.ccd - "c81a161af0fcd01dfd340290178a32fd", - - // test_track1-2-9_fixed_sub.ccd - "5fcfa6ec0511a0b5c73a817a456d5412", - - // test_track1_2_9.ccd - "5fcfa6ec0511a0b5c73a817a456d5412", - - // test_track1_overlaps_session2.ccd - "UNKNOWN", - - // test_track2_inside_leadout.ccd - "UNKNOWN", - - // test_track2_inside_session2_leadin.ccd - "933f1699ba88a70aff5062f9626ef529", - - // test_track2_inside_track1.ccd - "1bf8af738f8dddb7142b308c245d05f5", - - // test_videocd.ccd - "712725733e44be46e55f16569659fd07" - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.ccd - 22, - - // jaguarcd.ccd - 11, - - // pcengine.ccd - 16, - - // pcfx.ccd - 8, - - // report_audiocd.ccd - 14, - - // report_cdrom.ccd - 1, - - // report_cdrw_2x.ccd - 1, - - // report_enhancedcd.ccd - 14, - - // test_audiocd_cdtext.ccd - 11, - - // test_castrated_leadout.ccd - 11, - - // test_disc_starts_at_track2.ccd - 2, - - // test_data_track_as_audio_fixed_sub.ccd - 2, - - // test_data_track_as_audio.ccd - 2, - - // test_enhancedcd.ccd - 3, - - // test_incd_udf200_finalized.ccd - 1, - - // test_karaoke_multi_sampler.ccd - 16, - - // test_multiple_indexes.ccd - 5, - - // test_multisession.ccd - 4, - - // test_track0_in_session2.ccd - 2, - - // test_track111_in_session2_fixed_sub.ccd - 2, - - // test_track1-2-9_fixed_sub.ccd - 2, - - // test_track1_2_9.ccd - 2, - - // test_track1_overlaps_session2.ccd - 1, - - // test_track2_inside_leadout.ccd - 2, - - // test_track2_inside_session2_leadin.ccd - 3, - - // test_track2_inside_track1.ccd - 3, - - // test_videocd.ccd - 2 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // jaguarcd.ccd - new[] - { - 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // pcengine.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.ccd - new[] - { - 1 - }, - - // report_cdrw_2x.ccd - new[] - { - 1 - }, - - // report_enhancedcd.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_audiocd_cdtext.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_castrated_leadout.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_disc_starts_at_track2.ccd - new[] - { - 1, 2 - }, - - // test_data_track_as_audio_fixed_sub.ccd - new[] - { - 1, 2 - }, - - // test_data_track_as_audio.ccd - new[] - { - 1, 2 - }, - - // test_enhancedcd.ccd - new[] - { - 1, 1, 2 - }, - - // test_incd_udf200_finalized.ccd - new[] - { - 1 - }, - - // test_karaoke_multi_sampler.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.ccd - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.ccd - new[] - { - 1, 2, 3, 4 - }, - - // test_track0_in_session2.ccd - new[] - { - 1, 1 - }, - - // test_track111_in_session2_fixed_sub.ccd - new[] - { - 1, 1 - }, - - // test_track1-2-9_fixed_sub.ccd - new[] - { - 1, 1 - }, - - // test_track1_2_9.ccd - new[] - { - 1, 1 - }, - - // test_track1_overlaps_session2.ccd - new[] - { - 1 - }, - - // test_track2_inside_leadout.ccd - new[] - { - 1, 1 - }, - - // test_track2_inside_session2_leadin.ccd - new[] - { - 1, 1, 2 - }, - - // test_track2_inside_track1.ccd - new[] - { - 1, 1, 2 - }, - - // test_videocd.ccd - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.ccd - new ulong[] - { - 69150, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // jaguarcd.ccd - new ulong[] - { - 0, 27640, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.ccd - new ulong[] - { - 0, 3590, 38614, 47217, 53501, 61819, 68563, 75397, 83130, 86481, 91267, 99274, 106693, 112238, 120270, - 126229 - }, - - // pcfx.ccd - new ulong[] - { - 0, 4395, 4909, 5941, 42059, 220795, 225646, 235498 - }, - - // report_audiocd.ccd - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdrom.ccd - new ulong[] - { - 0 - }, - - // report_cdrw_2x.ccd - new ulong[] - { - 0 - }, - - // report_enhancedcd.ccd - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234180 - }, - - // test_audiocd_cdtext.ccd - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_castrated_leadout.ccd - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_disc_starts_at_track2.ccd - new ulong[] - { - 0, 36939 - }, - - // test_data_track_as_audio_fixed_sub.ccd - new ulong[] - { - 0, 36939 - }, - - // test_data_track_as_audio.ccd - new ulong[] - { - 0, 36939 - }, - - // test_enhancedcd.ccd - new ulong[] - { - 0, 14405, 40353 - }, - - // test_incd_udf200_finalized.ccd - new ulong[] - { - 0 - }, - - // test_karaoke_multi_sampler.ccd - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.ccd - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession.ccd - new ulong[] - { - 0, 19533, 32860, 45378 - }, - - // test_track0_in_session2.ccd - new ulong[] - { - 0, 36939 - }, - - // test_track111_in_session2_fixed_sub.ccd - new ulong[] - { - 0, 36939 - }, - - // test_track1-2-9_fixed_sub.ccd - new ulong[] - { - 0, 13350 - }, - - // test_track1_2_9.ccd - new ulong[] - { - 0, 13350 - }, - - // test_track1_overlaps_session2.ccd - new ulong[] - { - 113870 - }, - - // test_track2_inside_leadout.ccd - new ulong[] - { - 0, 62385 - }, - - // test_track2_inside_session2_leadin.ccd - new ulong[] - { - 0, 25500, 36939 - }, - - // test_track2_inside_track1.ccd - new ulong[] - { - 0, 13350, 36939 - }, - - // test_videocd.ccd - new ulong[] - { - 0, 1252 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.ccd - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 279299 - }, - - // jaguarcd.ccd - new ulong[] - { - 16239, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.ccd - new ulong[] - { - 3589, 38613, 47216, 53500, 61818, 68562, 75396, 83129, 86480, 91266, 99273, 106692, 112237, 120269, - 126228, 160955 - }, - - // pcfx.ccd - new ulong[] - { - 4394, 4908, 5940, 42058, 220794, 225645, 235497, 246679 - }, - - // report_audiocd.ccd - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdrom.ccd - new ulong[] - { - 254264 - }, - - // report_cdrw_2x.ccd - new ulong[] - { - 308223 - }, - - // report_enhancedcd.ccd - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 222779, - 303315 - }, - - // test_audiocd_cdtext.ccd - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_castrated_leadout.ccd - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 1049 - }, - - // test_disc_starts_at_track2.ccd - new ulong[] - { - 25538, 62384 - }, - - // test_data_track_as_audio_fixed_sub.ccd - new ulong[] - { - 25538, 62384 - }, - - // test_data_track_as_audio.ccd - new ulong[] - { - 25538, 62384 - }, - - // test_enhancedcd.ccd - new ulong[] - { - 14404, 28952, 59205 - }, - - // test_incd_udf200_finalized.ccd - new ulong[] - { - 350133 - }, - - // test_karaoke_multi_sampler.ccd - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.ccd - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.ccd - new ulong[] - { - 8132, 25959, 38477, 51167 - }, - - // test_track0_in_session2.ccd - new ulong[] - { - 36938, 36938 - }, - - // test_track111_in_session2_fixed_sub.ccd - new ulong[] - { - 36938, 36938 - }, - - // test_track1-2-9_fixed_sub.ccd - new ulong[] - { - 13349, 25538 - }, - - // test_track1_2_9.ccd - new ulong[] - { - 13349, 25538 - }, - - // test_track1_overlaps_session2.ccd - new ulong[] - { - 25538 - }, - - // test_track2_inside_leadout.ccd - new ulong[] - { - 62384, 25538 - }, - - // test_track2_inside_session2_leadin.ccd - new ulong[] - { - 25499, 25538, 62384 - }, - - // test_track2_inside_track1.ccd - new ulong[] - { - 13349, 25538, 62384 - }, - - // test_videocd.ccd - new ulong[] - { - 1251, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.ccd - new ulong[] - { - 69300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // jaguarcd.ccd - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.ccd - new ulong[] - { - 150 - }, - - // report_cdrw_2x.ccd - new ulong[] - { - 150 - }, - - // report_enhancedcd.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_audiocd_cdtext.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_castrated_leadout.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_disc_starts_at_track2.ccd - new ulong[] - { - 150, 150 - }, - - // test_data_track_as_audio_fixed_sub.ccd - new ulong[] - { - 150, 150 - }, - - // test_data_track_as_audio.ccd - new ulong[] - { - 150, 150 - }, - - // test_enhancedcd.ccd - new ulong[] - { - 150, 0, 150 - }, - - // test_incd_udf200_finalized.ccd - new ulong[] - { - 150 - }, - - // test_karaoke_multi_sampler.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.ccd - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession.ccd - new ulong[] - { - 150, 150, 150, 150 - }, - - // test_track0_in_session2.ccd - new ulong[] - { - 150, 0 - }, - - // test_track111_in_session2_fixed_sub.ccd - new ulong[] - { - 150, 0 - }, - - // test_track1-2-9_fixed_sub.ccd - new ulong[] - { - 150, 0 - }, - - // test_track1_2_9.ccd - new ulong[] - { - 150, 0 - }, - - // test_track1_overlaps_session2.ccd - new ulong[] - { - 150 - }, - - // test_track2_inside_leadout.ccd - new ulong[] - { - 150, 0 - }, - - // test_track2_inside_session2_leadin.ccd - new ulong[] - { - 150, 0, 150 - }, - - // test_track2_inside_track1.ccd - new ulong[] - { - 150, 0, 150 - }, - - // test_videocd.ccd - new ulong[] - { - 150, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.ccd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // jaguarcd.ccd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.ccd - new byte[] - { - 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // pcfx.ccd - new byte[] - { - 0, 4, 4, 4, 4, 0, 0, 0 - }, - - // report_audiocd.ccd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.ccd - new byte[] - { - 4 - }, - - // report_cdrw_2x.ccd - new byte[] - { - 4 - }, - - // report_enhancedcd.ccd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // test_audiocd_cdtext.ccd - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_castrated_leadout.ccd - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_disc_starts_at_track2.ccd - new byte[] - { - 4, 4 - }, - - // test_data_track_as_audio_fixed_sub.ccd - new byte[] - { - 4, 2 - }, - - // test_data_track_as_audio.ccd - new byte[] - { - 4, 2 - }, - - // test_enhancedcd.ccd - new byte[] - { - 0, 0, 4 - }, - - // test_incd_udf200_finalized.ccd - new byte[] - { - 7 - }, - - // test_karaoke_multi_sampler.ccd - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.ccd - new byte[] - { - 2, 0, 0, 8, 1 - }, - - // test_multisession.ccd - new byte[] - { - 4, 4, 4, 4 - }, - - // test_track0_in_session2.ccd - new byte[] - { - 0, 0 - }, - - // test_track111_in_session2_fixed_sub.ccd - new byte[] - { - 0, 0 - }, - - // test_track1-2-9_fixed_sub.ccd - new byte[] - { - 0, 0 - }, - - // test_track1_2_9.ccd - new byte[] - { - 0, 0 - }, - - // test_track1_overlaps_session2.ccd - new byte[] - { - 0, 0 - }, - - // test_track2_inside_leadout.ccd - new byte[] - { - 0, 0 - }, - - // test_track2_inside_session2_leadin.ccd - new byte[] - { - 4, 4, 4 - }, - - // test_track2_inside_track1.ccd - new byte[] - { - 0, 0, 0 - }, - - // test_videocd.ccd - new byte[] - { - 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "CloneCD"); public override IMediaImage _plugin => new CloneCd(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_theapprentice.ccd", + MediaType = MediaType.CDDA, + Sectors = 279300, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88799, + Pregap = 69300, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279299, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.ccd", + MediaType = MediaType.CDDA, + Sectors = 243587, + MD5 = "3147ff203341692813de8e5775f45d84", + LongMD5 = "3147ff203341692813de8e5775f45d84", + SubchannelMD5 = "0534d96336d9fb46f2c48c9c27f07999", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16239, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 27640, + End = 28236, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.ccd", + MediaType = MediaType.CD, + Sectors = 160956, + MD5 = "127b0a92b00ea9a67df1ed8c80daadc7", + LongMD5 = "6ead3bdedb374f7b9bdf24773d30e491", + SubchannelMD5 = "315ee5ebb36969b4ce0fb0162f7a9932", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3589, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3590, + End = 38613, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38614, + End = 47216, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47217, + End = 53500, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53501, + End = 61818, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61819, + End = 68562, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68563, + End = 75396, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75397, + End = 83129, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 83130, + End = 86480, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86481, + End = 91266, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 91267, + End = 99273, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99274, + End = 106692, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106693, + End = 112237, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112238, + End = 120269, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 120270, + End = 126228, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126229, + End = 160955, + Pregap = 0, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.ccd", + MediaType = MediaType.CD, + Sectors = 246680, + MD5 = "9d538bd1ee1db068685ed59d29185941", + LongMD5 = "76f4bd63c13db3e44fbf7acda20f49e2", + SubchannelMD5 = "d9804e5f919ffb1531832049df8f0165", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4394, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4395, + End = 4908, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4909, + End = 5940, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5941, + End = 42058, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 42059, + End = 220794, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220795, + End = 225645, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225646, + End = 235497, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235498, + End = 246679, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.ccd", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + LongMD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + SubchannelMD5 = "b744ddaf1d4ebd3bd0b96a160f55637d", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.ccd", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + SubchannelMD5 = "c5ae648d586e55afd1108294c9b86ca6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_2x.ccd", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + SubchannelMD5 = "c73559a91abd57f732c7ea609fef547a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 303316, + MD5 = "588d8ff1fef693bbe5719ac6c2f96bc1", + LongMD5 = "d72e737f49482d1330e8fe03b9f40b79", + SubchannelMD5 = "3d4bab2b1bf8f9a373e35f4e743aa883", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 222779, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234180, + End = 303315, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.ccd", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + LongMD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + SubchannelMD5 = "2a2918ad19f5bf1b6e52b57e40fe47eb", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 0, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_castrated_leadout.ccd", + MediaType = MediaType.CDDA, + Sectors = 1050, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 1049, + Pregap = 0, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_disc_starts_at_track2.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "c82d20702d31bc15bdc91f7e107862ae", + SubchannelMD5 = "976f4684da623c64acee464e9dca046e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio_fixed_sub.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "d9d46cae2a3a46316c8e1411e84d40ef", + LongMD5 = "b3550e61649ba5276fed8d74f8e512ee", + SubchannelMD5 = "a53aba8a0fdb038ef67e68ba009aa5b1", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "d9d46cae2a3a46316c8e1411e84d40ef", + LongMD5 = "b3550e61649ba5276fed8d74f8e512ee", + SubchannelMD5 = "a53aba8a0fdb038ef67e68ba009aa5b1", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 59206, + MD5 = "5984f395dccd4d1e10df0f92d54d872d", + LongMD5 = "df8f4b8b58b9cada80ee442ddbd690f4", + SubchannelMD5 = "a80b7b6b704cf7fe94942df281d4588a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14404, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14405, + End = 28952, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 40353, + End = 59205, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 350134, + MD5 = "f95d6f978ddb4f98bbffda403f627fe1", + LongMD5 = "6751e0ae7821f92221672b1cd5a1ff36", + SubchannelMD5 = "569c87cdc115f2d02b2268fc2b4d8b11", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 7 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_karaoke_multi_sampler.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "9a19aa0df066732a8ec34025e8160248", + LongMD5 = "e981f7dfdb522ba937fe75474e23a446", + SubchannelMD5 = "c48c09b8c7c4af99de1cf97faaef32fc", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.ccd", + MediaType = MediaType.CDDA, + Sectors = 65536, + MD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + LongMD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + SubchannelMD5 = "d374e82dfcbc4515c09a9a6e5955bf1d", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 8 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 51168, + MD5 = "f793fecc486a83cbe05b51c2d98059b9", + LongMD5 = "199b85a01c27f55f463fc7d606adfafa", + SubchannelMD5 = "7e9326e1de734f00ba71d5a8100d0cda", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19533, + End = 25959, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32860, + End = 38477, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45378, + End = 51167, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track0_in_session2.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 36939, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "3b3172070738044417ae5284195acbfd", + SubchannelMD5 = "7eedb60edb3dc77eac41fd8f2214dfb8", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 36938, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36939, + End = 36938, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track111_in_session2_fixed_sub.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 36939, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "396f86cdd8bfb012b68eabd5a94f604b", + SubchannelMD5 = "c81a161af0fcd01dfd340290178a32fd", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 36938, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36939, + End = 36938, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track1-2-9_fixed_sub.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 25539, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "649047a018bc6c1ba667397049eae888", + SubchannelMD5 = "5fcfa6ec0511a0b5c73a817a456d5412", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13349, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13350, + End = 25538, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track1-2-9.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 25539, + MD5 = "f9efc75192a7c0f3252e696c617f8ddd", + LongMD5 = "3b3172070738044417ae5284195acbfd", + SubchannelMD5 = "5fcfa6ec0511a0b5c73a817a456d5412", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13349, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13350, + End = 25538, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track1_overlaps_session2.ccd", + MediaType = MediaType.CDROM, + Sectors = 25539, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 113870, + End = 25538, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_leadout.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 25539, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 62384, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 62385, + End = 25538, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_session2_leadin.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "608a73cd10bccdadde68523aead1ee72", + SubchannelMD5 = "933f1699ba88a70aff5062f9626ef529", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25499, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 25500, + End = 25538, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_track1.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "450fe640a58c0bc1fc9cd6e779884d2c", + SubchannelMD5 = "1bf8af738f8dddb7142b308c245d05f5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13349, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13350, + End = 25538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 48794, + MD5 = "b640eed2eba209ebba4e6cd3171883a4", + LongMD5 = "a1194d29dfb4e207eabf6208f908a213", + SubchannelMD5 = "712725733e44be46e55f16569659fd07", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1251, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Commodore64/D64.cs b/Aaru.Tests/Images/Commodore64/D64.cs index 7ab311590..a840c40c2 100644 --- a/Aaru.Tests/Images/Commodore64/D64.cs +++ b/Aaru.Tests/Images/Commodore64/D64.cs @@ -37,33 +37,20 @@ namespace Aaru.Tests.Images.Commodore64 [TestFixture] public class D64 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "0 Grad Nord (1985)(Ariolasoft)(de)(Side A).d64.lz" - }; - public override ulong[] _sectors => new ulong[] - { - // 0 Grad Nord (1985)(Ariolasoft)(de)(Side A).d64.lz - 683 - }; - public override uint[] _sectorSize => new uint[] - { - // 0 Grad Nord (1985)(Ariolasoft)(de)(Side A).d64.lz - 256 - }; - public override MediaType[] _mediaTypes => new[] - { - // 0 Grad Nord (1985)(Ariolasoft)(de)(Side A).d64.lz - MediaType.CBM_1540 - }; - public override string[] _md5S => new[] - { - // 0 Grad Nord (1985)(Ariolasoft)(de)(Side A).d64.lz - "9205f7ccdb19cfbdb0b46d10e40b2a90" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Commodore D64"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "0 Grad Nord (1985)(Ariolasoft)(de)(Side A).d64.lz", + MediaType = MediaType.CBM_1540, + Sectors = 683, + SectorSize = 256, + MD5 = "9205f7ccdb19cfbdb0b46d10e40b2a90" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Commodore64/D81.cs b/Aaru.Tests/Images/Commodore64/D81.cs index dc422ea85..53d8391e7 100644 --- a/Aaru.Tests/Images/Commodore64/D81.cs +++ b/Aaru.Tests/Images/Commodore64/D81.cs @@ -37,33 +37,20 @@ namespace Aaru.Tests.Images.Commodore64 [TestFixture] public class D81 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "Strategiegames #01 (19xx)(-).d81.lz" - }; - public override ulong[] _sectors => new ulong[] - { - // Strategiegames #01 (19xx)(-).d81.lz - 3200 - }; - public override uint[] _sectorSize => new uint[] - { - // Strategiegames #01 (19xx)(-).d81.lz - 256 - }; - public override MediaType[] _mediaTypes => new[] - { - // Strategiegames #01 (19xx)(-).d81.lz - MediaType.CBM_35_DD - }; - public override string[] _md5S => new[] - { - // Strategiegames #01 (19xx)(-).d81.lz - "e84d86b63e798747c42b27b58ab88665" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Commodore D81"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "Strategiegames #01 (19xx)(-).d81.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 3200, + SectorSize = 256, + MD5 = "e84d86b63e798747c42b27b58ab88665" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/CopyQM.cs b/Aaru.Tests/Images/CopyQM.cs index 1dff5ed6c..9a687055a 100644 --- a/Aaru.Tests/Images/CopyQM.cs +++ b/Aaru.Tests/Images/CopyQM.cs @@ -36,2460 +36,1611 @@ namespace Aaru.Tests.Images [TestFixture] public class CopyQm : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DSKA0000.CQM.lz", "DSKA0001.CQM.lz", "DSKA0002.CQM.lz", "DSKA0003.CQM.lz", "DSKA0004.CQM.lz", - "DSKA0006.CQM.lz", "DSKA0009.CQM.lz", "DSKA0010.CQM.lz", "DSKA0011.CQM.lz", "DSKA0012.CQM.lz", - "DSKA0013.CQM.lz", "DSKA0017.CQM.lz", "DSKA0018.CQM.lz", "DSKA0019.CQM.lz", "DSKA0020.CQM.lz", - "DSKA0021.CQM.lz", "DSKA0023.CQM.lz", "DSKA0024.CQM.lz", "DSKA0025.CQM.lz", "DSKA0026.CQM.lz", - "DSKA0027.CQM.lz", "DSKA0028.CQM.lz", "DSKA0029.CQM.lz", "DSKA0030.CQM.lz", "DSKA0031.CQM.lz", - "DSKA0032.CQM.lz", "DSKA0033.CQM.lz", "DSKA0034.CQM.lz", "DSKA0035.CQM.lz", "DSKA0036.CQM.lz", - "DSKA0037.CQM.lz", "DSKA0038.CQM.lz", "DSKA0039.CQM.lz", "DSKA0040.CQM.lz", "DSKA0041.CQM.lz", - "DSKA0042.CQM.lz", "DSKA0043.CQM.lz", "DSKA0044.CQM.lz", "DSKA0045.CQM.lz", "DSKA0046.CQM.lz", - "DSKA0047.CQM.lz", "DSKA0048.CQM.lz", "DSKA0049.CQM.lz", "DSKA0050.CQM.lz", "DSKA0051.CQM.lz", - "DSKA0052.CQM.lz", "DSKA0053.CQM.lz", "DSKA0054.CQM.lz", "DSKA0055.CQM.lz", "DSKA0056.CQM.lz", - "DSKA0057.CQM.lz", "DSKA0058.CQM.lz", "DSKA0059.CQM.lz", "DSKA0060.CQM.lz", "DSKA0069.CQM.lz", - "DSKA0070.CQM.lz", "DSKA0073.CQM.lz", "DSKA0074.CQM.lz", "DSKA0075.CQM.lz", "DSKA0076.CQM.lz", - "DSKA0077.CQM.lz", "DSKA0078.CQM.lz", "DSKA0080.CQM.lz", "DSKA0081.CQM.lz", "DSKA0082.CQM.lz", - "DSKA0083.CQM.lz", "DSKA0084.CQM.lz", "DSKA0085.CQM.lz", "DSKA0105.CQM.lz", "DSKA0106.CQM.lz", - "DSKA0107.CQM.lz", "DSKA0108.CQM.lz", "DSKA0109.CQM.lz", "DSKA0110.CQM.lz", "DSKA0111.CQM.lz", - "DSKA0112.CQM.lz", "DSKA0113.CQM.lz", "DSKA0114.CQM.lz", "DSKA0115.CQM.lz", "DSKA0116.CQM.lz", - "DSKA0117.CQM.lz", "DSKA0120.CQM.lz", "DSKA0121.CQM.lz", "DSKA0122.CQM.lz", "DSKA0123.CQM.lz", - "DSKA0124.CQM.lz", "DSKA0125.CQM.lz", "DSKA0126.CQM.lz", "DSKA0147.CQM.lz", "DSKA0148.CQM.lz", - "DSKA0149.CQM.lz", "DSKA0150.CQM.lz", "DSKA0151.CQM.lz", "DSKA0153.CQM.lz", "DSKA0158.CQM.lz", - "DSKA0159.CQM.lz", "DSKA0162.CQM.lz", "DSKA0163.CQM.lz", "DSKA0164.CQM.lz", "DSKA0166.CQM.lz", - "DSKA0167.CQM.lz", "DSKA0168.CQM.lz", "DSKA0169.CQM.lz", "DSKA0173.CQM.lz", "DSKA0174.CQM.lz", - "DSKA0175.CQM.lz", "DSKA0180.CQM.lz", "DSKA0181.CQM.lz", "DSKA0182.CQM.lz", "DSKA0183.CQM.lz", - "DSKA0184.CQM.lz", "DSKA0185.CQM.lz", "DSKA0186.CQM.lz", "DSKA0197.CQM.lz", "DSKA0198.CQM.lz", - "DSKA0199.CQM.lz", "DSKA0200.CQM.lz", "DSKA0201.CQM.lz", "DSKA0202.CQM.lz", "DSKA0203.CQM.lz", - "DSKA0204.CQM.lz", "DSKA0205.CQM.lz", "DSKA0206.CQM.lz", "DSKA0207.CQM.lz", "DSKA0209.CQM.lz", - "DSKA0210.CQM.lz", "DSKA0211.CQM.lz", "DSKA0212.CQM.lz", "DSKA0213.CQM.lz", "DSKA0214.CQM.lz", - "DSKA0215.CQM.lz", "DSKA0216.CQM.lz", "DSKA0221.CQM.lz", "DSKA0222.CQM.lz", "DSKA0225.CQM.lz", - "DSKA0228.CQM.lz", "DSKA0232.CQM.lz", "DSKA0234.CQM.lz", "DSKA0240.CQM.lz", "DSKA0241.CQM.lz", - "DSKA0242.CQM.lz", "DSKA0243.CQM.lz", "DSKA0244.CQM.lz", "DSKA0245.CQM.lz", "DSKA0246.CQM.lz", - "DSKA0247.CQM.lz", "DSKA0248.CQM.lz", "DSKA0250.CQM.lz", "DSKA0251.CQM.lz", "DSKA0252.CQM.lz", - "DSKA0253.CQM.lz", "DSKA0254.CQM.lz", "DSKA0258.CQM.lz", "DSKA0262.CQM.lz", "DSKA0263.CQM.lz", - "DSKA0264.CQM.lz", "DSKA0265.CQM.lz", "DSKA0266.CQM.lz", "DSKA0267.CQM.lz", "DSKA0268.CQM.lz", - "DSKA0269.CQM.lz", "DSKA0270.CQM.lz", "DSKA0271.CQM.lz", "DSKA0272.CQM.lz", "DSKA0273.CQM.lz", - "DSKA0280.CQM.lz", "DSKA0281.CQM.lz", "DSKA0282.CQM.lz", "DSKA0283.CQM.lz", "DSKA0284.CQM.lz", - "DSKA0285.CQM.lz", "DSKA0287.CQM.lz", "DSKA0288.CQM.lz", "DSKA0289.CQM.lz", "DSKA0290.CQM.lz", - "DSKA0291.CQM.lz", "DSKA0299.CQM.lz", "DSKA0300.CQM.lz", "DSKA0301.CQM.lz", "DSKA0302.CQM.lz", - "DSKA0303.CQM.lz", "DSKA0304.CQM.lz", "DSKA0305.CQM.lz", "DSKA0307.CQM.lz", "DSKA0308.CQM.lz", - "DSKA0311.CQM.lz", "DSKA0314.CQM.lz", "DSKA0316.CQM.lz", "DSKA0317.CQM.lz", "DSKA0318.CQM.lz", - "DSKA0319.CQM.lz", "DSKA0320.CQM.lz", "DSKA0322.CQM.lz", "mf2dd.cqm.lz", "mf2dd_fdformat_800.cqm.lz", - "mf2dd_freedos.cqm.lz", "mf2hd_blind.cqm.lz", "mf2hd.cqm.lz", "mf2hd_fdformat_168.cqm.lz", - "mf2hd_freedos.cqm.lz" - }; - public override ulong[] _sectors => new ulong[] - { - // DSKA0000.CQM.lz - 2880, - - // DSKA0001.CQM.lz - 1600, - - // DSKA0002.CQM.lz - 1280, - - // DSKA0003.CQM.lz - 800, - - // DSKA0004.CQM.lz - 1280, - - // DSKA0006.CQM.lz - 360, - - // DSKA0009.CQM.lz - 2880, - - // DSKA0010.CQM.lz - 1440, - - // DSKA0011.CQM.lz - 1280, - - // DSKA0012.CQM.lz - 1600, - - // DSKA0013.CQM.lz - 1600, - - // DSKA0017.CQM.lz - 3040, - - // DSKA0018.CQM.lz - 1440, - - // DSKA0019.CQM.lz - 640, - - // DSKA0020.CQM.lz - 1440, - - // DSKA0021.CQM.lz - 3040, - - // DSKA0023.CQM.lz - 1280, - - // DSKA0024.CQM.lz - 2880, - - // DSKA0025.CQM.lz - 1440, - - // DSKA0026.CQM.lz - 800, - - // DSKA0027.CQM.lz - 640, - - // DSKA0028.CQM.lz - 1440, - - // DSKA0029.CQM.lz - 576, - - // DSKA0030.CQM.lz - 1440, - - // DSKA0031.CQM.lz - 640, - - // DSKA0032.CQM.lz - 640, - - // DSKA0033.CQM.lz - 1280, - - // DSKA0034.CQM.lz - 1280, - - // DSKA0035.CQM.lz - 320, - - // DSKA0036.CQM.lz - 320, - - // DSKA0037.CQM.lz - 360, - - // DSKA0038.CQM.lz - 360, - - // DSKA0039.CQM.lz - 640, - - // DSKA0040.CQM.lz - 640, - - // DSKA0041.CQM.lz - 640, - - // DSKA0042.CQM.lz - 640, - - // DSKA0043.CQM.lz - 720, - - // DSKA0044.CQM.lz - 720, - - // DSKA0045.CQM.lz - 2400, - - // DSKA0046.CQM.lz - 2460, - - // DSKA0047.CQM.lz - 1280, - - // DSKA0048.CQM.lz - 1440, - - // DSKA0049.CQM.lz - 1476, - - // DSKA0050.CQM.lz - 1600, - - // DSKA0051.CQM.lz - 1640, - - // DSKA0052.CQM.lz - 2880, - - // DSKA0053.CQM.lz - 2952, - - // DSKA0054.CQM.lz - 3200, - - // DSKA0055.CQM.lz - 3280, - - // DSKA0056.CQM.lz - 3360, - - // DSKA0057.CQM.lz - 3444, - - // DSKA0058.CQM.lz - 3486, - - // DSKA0059.CQM.lz - 3528, - - // DSKA0060.CQM.lz - 3570, - - // DSKA0069.CQM.lz - 1440, - - // DSKA0070.CQM.lz - 1640, - - // DSKA0073.CQM.lz - 320, - - // DSKA0074.CQM.lz - 360, - - // DSKA0075.CQM.lz - 640, - - // DSKA0076.CQM.lz - 720, - - // DSKA0077.CQM.lz - 800, - - // DSKA0078.CQM.lz - 2400, - - // DSKA0080.CQM.lz - 1440, - - // DSKA0081.CQM.lz - 1600, - - // DSKA0082.CQM.lz - 2880, - - // DSKA0083.CQM.lz - 2988, - - // DSKA0084.CQM.lz - 3360, - - // DSKA0085.CQM.lz - 3486, - - // DSKA0105.CQM.lz - 400, - - // DSKA0106.CQM.lz - 410, - - // DSKA0107.CQM.lz - 800, - - // DSKA0108.CQM.lz - 820, - - // DSKA0109.CQM.lz - 1600, - - // DSKA0110.CQM.lz - 1640, - - // DSKA0111.CQM.lz - 2880, - - // DSKA0112.CQM.lz - 2952, - - // DSKA0113.CQM.lz - 1600, - - // DSKA0114.CQM.lz - 1640, - - // DSKA0115.CQM.lz - 2952, - - // DSKA0116.CQM.lz - 3200, - - // DSKA0117.CQM.lz - 3280, - - // DSKA0120.CQM.lz - 320, - - // DSKA0121.CQM.lz - 360, - - // DSKA0122.CQM.lz - 640, - - // DSKA0123.CQM.lz - 720, - - // DSKA0124.CQM.lz - 2400, - - // DSKA0125.CQM.lz - 1440, - - // DSKA0126.CQM.lz - 2880, - - // DSKA0147.CQM.lz - 320, - - // DSKA0148.CQM.lz - 640, - - // DSKA0149.CQM.lz - 200, - - // DSKA0150.CQM.lz - 400, - - // DSKA0151.CQM.lz - 360, - - // DSKA0153.CQM.lz - 360, - - // DSKA0158.CQM.lz - 1280, - - // DSKA0159.CQM.lz - 640, - - // DSKA0162.CQM.lz - 320, - - // DSKA0163.CQM.lz - 720, - - // DSKA0164.CQM.lz - 820, - - // DSKA0166.CQM.lz - 1440, - - // DSKA0167.CQM.lz - 800, - - // DSKA0168.CQM.lz - 2400, - - // DSKA0169.CQM.lz - 2880, - - // DSKA0173.CQM.lz - 720, - - // DSKA0174.CQM.lz - 1440, - - // DSKA0175.CQM.lz - 1600, - - // DSKA0180.CQM.lz - 3200, - - // DSKA0181.CQM.lz - 3360, - - // DSKA0182.CQM.lz - 3402, - - // DSKA0183.CQM.lz - 3444, - - // DSKA0184.CQM.lz - 1280, - - // DSKA0185.CQM.lz - 800, - - // DSKA0186.CQM.lz - 160, - - // DSKA0197.CQM.lz - 600, - - // DSKA0198.CQM.lz - 1200, - - // DSKA0199.CQM.lz - 2400, - - // DSKA0200.CQM.lz - 1280, - - // DSKA0201.CQM.lz - 800, - - // DSKA0202.CQM.lz - 1280, - - // DSKA0203.CQM.lz - 1280, - - // DSKA0204.CQM.lz - 360, - - // DSKA0205.CQM.lz - 1476, - - // DSKA0206.CQM.lz - 1440, - - // DSKA0207.CQM.lz - 3040, - - // DSKA0209.CQM.lz - 1600, - - // DSKA0210.CQM.lz - 1600, - - // DSKA0211.CQM.lz - 1440, - - // DSKA0212.CQM.lz - 1440, - - // DSKA0213.CQM.lz - 800, - - // DSKA0214.CQM.lz - 1280, - - // DSKA0215.CQM.lz - 1280, - - // DSKA0216.CQM.lz - 2880, - - // DSKA0221.CQM.lz - 5120, - - // DSKA0222.CQM.lz - 1600, - - // DSKA0225.CQM.lz - 990, - - // DSKA0228.CQM.lz - 1050, - - // DSKA0232.CQM.lz - 621, - - // DSKA0234.CQM.lz - 2400, - - // DSKA0240.CQM.lz - 720, - - // DSKA0241.CQM.lz - 714, - - // DSKA0242.CQM.lz - 1232, - - // DSKA0243.CQM.lz - 1280, - - // DSKA0244.CQM.lz - 1280, - - // DSKA0245.CQM.lz - 1600, - - // DSKA0246.CQM.lz - 1600, - - // DSKA0247.CQM.lz - 1280, - - // DSKA0248.CQM.lz - 1280, - - // DSKA0250.CQM.lz - 640, - - // DSKA0251.CQM.lz - 2560, - - // DSKA0252.CQM.lz - 1280, - - // DSKA0253.CQM.lz - 640, - - // DSKA0254.CQM.lz - 360, - - // DSKA0258.CQM.lz - 1232, - - // DSKA0262.CQM.lz - 1440, - - // DSKA0263.CQM.lz - 1600, - - // DSKA0264.CQM.lz - 1640, - - // DSKA0265.CQM.lz - 1660, - - // DSKA0266.CQM.lz - 2880, - - // DSKA0267.CQM.lz - 3040, - - // DSKA0268.CQM.lz - 3200, - - // DSKA0269.CQM.lz - 3280, - - // DSKA0270.CQM.lz - 3320, - - // DSKA0271.CQM.lz - 3360, - - // DSKA0272.CQM.lz - 3444, - - // DSKA0273.CQM.lz - 3486, - - // DSKA0280.CQM.lz - 360, - - // DSKA0281.CQM.lz - 400, - - // DSKA0282.CQM.lz - 640, - - // DSKA0283.CQM.lz - 720, - - // DSKA0284.CQM.lz - 800, - - // DSKA0285.CQM.lz - 840, - - // DSKA0287.CQM.lz - 1440, - - // DSKA0288.CQM.lz - 1494, - - // DSKA0289.CQM.lz - 1600, - - // DSKA0290.CQM.lz - 1640, - - // DSKA0291.CQM.lz - 1660, - - // DSKA0299.CQM.lz - 320, - - // DSKA0300.CQM.lz - 360, - - // DSKA0301.CQM.lz - 640, - - // DSKA0302.CQM.lz - 720, - - // DSKA0303.CQM.lz - 2400, - - // DSKA0304.CQM.lz - 1440, - - // DSKA0305.CQM.lz - 2880, - - // DSKA0307.CQM.lz - 840, - - // DSKA0308.CQM.lz - 1600, - - // DSKA0311.CQM.lz - 3444, - - // DSKA0314.CQM.lz - 1440, - - // DSKA0316.CQM.lz - 2880, - - // DSKA0317.CQM.lz - 3360, - - // DSKA0318.CQM.lz - 3444, - - // DSKA0319.CQM.lz - 3360, - - // DSKA0320.CQM.lz - 3360, - - // DSKA0322.CQM.lz - 1386, - - // mf2dd.cqm.lz - 1440, - - // mf2dd_fdformat_800.cqm.lz - 1600, - - // mf2dd_freedos.cqm.lz - 1600, - - // mf2hd_blind.cqm.lz - 2880, - - // mf2hd.cqm.lz - 2880, - - // mf2hd_fdformat_168.cqm.lz - 3360, - - // mf2hd_freedos.cqm.lz - 3360 - }; - public override uint[] _sectorSize => new uint[] - { - // DSKA0000.CQM.lz - 512, - - // DSKA0001.CQM.lz - 512, - - // DSKA0002.CQM.lz - 1024, - - // DSKA0003.CQM.lz - 1024, - - // DSKA0004.CQM.lz - 1024, - - // DSKA0006.CQM.lz - 512, - - // DSKA0009.CQM.lz - 512, - - // DSKA0010.CQM.lz - 512, - - // DSKA0011.CQM.lz - 1024, - - // DSKA0012.CQM.lz - 512, - - // DSKA0013.CQM.lz - 512, - - // DSKA0017.CQM.lz - 512, - - // DSKA0018.CQM.lz - 512, - - // DSKA0019.CQM.lz - 1024, - - // DSKA0020.CQM.lz - 512, - - // DSKA0021.CQM.lz - 512, - - // DSKA0023.CQM.lz - 1024, - - // DSKA0024.CQM.lz - 512, - - // DSKA0025.CQM.lz - 512, - - // DSKA0026.CQM.lz - 1024, - - // DSKA0027.CQM.lz - 1024, - - // DSKA0028.CQM.lz - 512, - - // DSKA0029.CQM.lz - 1024, - - // DSKA0030.CQM.lz - 512, - - // DSKA0031.CQM.lz - 256, - - // DSKA0032.CQM.lz - 256, - - // DSKA0033.CQM.lz - 256, - - // DSKA0034.CQM.lz - 256, - - // DSKA0035.CQM.lz - 512, - - // DSKA0036.CQM.lz - 512, - - // DSKA0037.CQM.lz - 512, - - // DSKA0038.CQM.lz - 512, - - // DSKA0039.CQM.lz - 512, - - // DSKA0040.CQM.lz - 512, - - // DSKA0041.CQM.lz - 512, - - // DSKA0042.CQM.lz - 512, - - // DSKA0043.CQM.lz - 512, - - // DSKA0044.CQM.lz - 512, - - // DSKA0045.CQM.lz - 512, - - // DSKA0046.CQM.lz - 512, - - // DSKA0047.CQM.lz - 512, - - // DSKA0048.CQM.lz - 512, - - // DSKA0049.CQM.lz - 512, - - // DSKA0050.CQM.lz - 512, - - // DSKA0051.CQM.lz - 512, - - // DSKA0052.CQM.lz - 512, - - // DSKA0053.CQM.lz - 512, - - // DSKA0054.CQM.lz - 512, - - // DSKA0055.CQM.lz - 512, - - // DSKA0056.CQM.lz - 512, - - // DSKA0057.CQM.lz - 512, - - // DSKA0058.CQM.lz - 512, - - // DSKA0059.CQM.lz - 512, - - // DSKA0060.CQM.lz - 512, - - // DSKA0069.CQM.lz - 512, - - // DSKA0070.CQM.lz - 512, - - // DSKA0073.CQM.lz - 512, - - // DSKA0074.CQM.lz - 512, - - // DSKA0075.CQM.lz - 512, - - // DSKA0076.CQM.lz - 512, - - // DSKA0077.CQM.lz - 512, - - // DSKA0078.CQM.lz - 512, - - // DSKA0080.CQM.lz - 512, - - // DSKA0081.CQM.lz - 512, - - // DSKA0082.CQM.lz - 512, - - // DSKA0083.CQM.lz - 512, - - // DSKA0084.CQM.lz - 512, - - // DSKA0085.CQM.lz - 512, - - // DSKA0105.CQM.lz - 512, - - // DSKA0106.CQM.lz - 512, - - // DSKA0107.CQM.lz - 512, - - // DSKA0108.CQM.lz - 512, - - // DSKA0109.CQM.lz - 512, - - // DSKA0110.CQM.lz - 512, - - // DSKA0111.CQM.lz - 512, - - // DSKA0112.CQM.lz - 512, - - // DSKA0113.CQM.lz - 512, - - // DSKA0114.CQM.lz - 512, - - // DSKA0115.CQM.lz - 512, - - // DSKA0116.CQM.lz - 512, - - // DSKA0117.CQM.lz - 512, - - // DSKA0120.CQM.lz - 512, - - // DSKA0121.CQM.lz - 512, - - // DSKA0122.CQM.lz - 512, - - // DSKA0123.CQM.lz - 512, - - // DSKA0124.CQM.lz - 512, - - // DSKA0125.CQM.lz - 512, - - // DSKA0126.CQM.lz - 512, - - // DSKA0147.CQM.lz - 512, - - // DSKA0148.CQM.lz - 512, - - // DSKA0149.CQM.lz - 1024, - - // DSKA0150.CQM.lz - 1024, - - // DSKA0151.CQM.lz - 512, - - // DSKA0153.CQM.lz - 512, - - // DSKA0158.CQM.lz - 256, - - // DSKA0159.CQM.lz - 256, - - // DSKA0162.CQM.lz - 512, - - // DSKA0163.CQM.lz - 512, - - // DSKA0164.CQM.lz - 512, - - // DSKA0166.CQM.lz - 512, - - // DSKA0167.CQM.lz - 1024, - - // DSKA0168.CQM.lz - 512, - - // DSKA0169.CQM.lz - 512, - - // DSKA0173.CQM.lz - 512, - - // DSKA0174.CQM.lz - 512, - - // DSKA0175.CQM.lz - 512, - - // DSKA0180.CQM.lz - 512, - - // DSKA0181.CQM.lz - 512, - - // DSKA0182.CQM.lz - 512, - - // DSKA0183.CQM.lz - 512, - - // DSKA0184.CQM.lz - 1024, - - // DSKA0185.CQM.lz - 2048, - - // DSKA0186.CQM.lz - 8192, - - // DSKA0197.CQM.lz - 256, - - // DSKA0198.CQM.lz - 256, - - // DSKA0199.CQM.lz - 256, - - // DSKA0200.CQM.lz - 1024, - - // DSKA0201.CQM.lz - 1024, - - // DSKA0202.CQM.lz - 1024, - - // DSKA0203.CQM.lz - 1024, - - // DSKA0204.CQM.lz - 512, - - // DSKA0205.CQM.lz - 512, - - // DSKA0206.CQM.lz - 512, - - // DSKA0207.CQM.lz - 512, - - // DSKA0209.CQM.lz - 512, - - // DSKA0210.CQM.lz - 512, - - // DSKA0211.CQM.lz - 512, - - // DSKA0212.CQM.lz - 512, - - // DSKA0213.CQM.lz - 1024, - - // DSKA0214.CQM.lz - 1024, - - // DSKA0215.CQM.lz - 1024, - - // DSKA0216.CQM.lz - 512, - - // DSKA0221.CQM.lz - 256, - - // DSKA0222.CQM.lz - 512, - - // DSKA0225.CQM.lz - 256, - - // DSKA0228.CQM.lz - 256, - - // DSKA0232.CQM.lz - 512, - - // DSKA0234.CQM.lz - 256, - - // DSKA0240.CQM.lz - 256, - - // DSKA0241.CQM.lz - 256, - - // DSKA0242.CQM.lz - 1024, - - // DSKA0243.CQM.lz - 256, - - // DSKA0244.CQM.lz - 256, - - // DSKA0245.CQM.lz - 512, - - // DSKA0246.CQM.lz - 512, - - // DSKA0247.CQM.lz - 256, - - // DSKA0248.CQM.lz - 256, - - // DSKA0250.CQM.lz - 1024, - - // DSKA0251.CQM.lz - 256, - - // DSKA0252.CQM.lz - 256, - - // DSKA0253.CQM.lz - 1024, - - // DSKA0254.CQM.lz - 512, - - // DSKA0258.CQM.lz - 1024, - - // DSKA0262.CQM.lz - 512, - - // DSKA0263.CQM.lz - 512, - - // DSKA0264.CQM.lz - 512, - - // DSKA0265.CQM.lz - 512, - - // DSKA0266.CQM.lz - 512, - - // DSKA0267.CQM.lz - 512, - - // DSKA0268.CQM.lz - 512, - - // DSKA0269.CQM.lz - 512, - - // DSKA0270.CQM.lz - 512, - - // DSKA0271.CQM.lz - 512, - - // DSKA0272.CQM.lz - 512, - - // DSKA0273.CQM.lz - 512, - - // DSKA0280.CQM.lz - 512, - - // DSKA0281.CQM.lz - 512, - - // DSKA0282.CQM.lz - 512, - - // DSKA0283.CQM.lz - 512, - - // DSKA0284.CQM.lz - 512, - - // DSKA0285.CQM.lz - 512, - - // DSKA0287.CQM.lz - 512, - - // DSKA0288.CQM.lz - 512, - - // DSKA0289.CQM.lz - 512, - - // DSKA0290.CQM.lz - 512, - - // DSKA0291.CQM.lz - 512, - - // DSKA0299.CQM.lz - 512, - - // DSKA0300.CQM.lz - 512, - - // DSKA0301.CQM.lz - 512, - - // DSKA0302.CQM.lz - 512, - - // DSKA0303.CQM.lz - 512, - - // DSKA0304.CQM.lz - 512, - - // DSKA0305.CQM.lz - 512, - - // DSKA0307.CQM.lz - 512, - - // DSKA0308.CQM.lz - 512, - - // DSKA0311.CQM.lz - 512, - - // DSKA0314.CQM.lz - 512, - - // DSKA0316.CQM.lz - 512, - - // DSKA0317.CQM.lz - 512, - - // DSKA0318.CQM.lz - 512, - - // DSKA0319.CQM.lz - 512, - - // DSKA0320.CQM.lz - 512, - - // DSKA0322.CQM.lz - 512, - - // mf2dd.cqm.lz - 512, - - // mf2dd_fdformat_800.cqm.lz - 512, - - // mf2dd_freedos.cqm.lz - 512, - - // mf2hd_blind.cqm.lz - 512, - - // mf2hd.cqm.lz - 512, - - // mf2hd_fdformat_168.cqm.lz - 512, - - // mf2hd_freedos.cqm.lz - 512 - }; - public override MediaType[] _mediaTypes => new[] - { - // DSKA0000.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0001.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0002.CQM.lz - MediaType.Unknown, - - // DSKA0003.CQM.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0004.CQM.lz - MediaType.Unknown, - - // DSKA0006.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0009.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0010.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0011.CQM.lz - MediaType.Unknown, - - // DSKA0012.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0013.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0017.CQM.lz - MediaType.XDF_525, - - // DSKA0018.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0019.CQM.lz - MediaType.Unknown, - - // DSKA0020.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0021.CQM.lz - MediaType.XDF_525, - - // DSKA0023.CQM.lz - MediaType.Unknown, - - // DSKA0024.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0025.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0026.CQM.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0027.CQM.lz - MediaType.Unknown, - - // DSKA0028.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0029.CQM.lz - MediaType.Unknown, - - // DSKA0030.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0031.CQM.lz - MediaType.ACORN_525_SS_DD_40, - - // DSKA0032.CQM.lz - MediaType.ACORN_525_SS_DD_40, - - // DSKA0033.CQM.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0034.CQM.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0035.CQM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0036.CQM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0037.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0038.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0039.CQM.lz - MediaType.DOS_35_SS_DD_8, - - // DSKA0040.CQM.lz - MediaType.DOS_35_SS_DD_8, - - // DSKA0041.CQM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0042.CQM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0043.CQM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0044.CQM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0045.CQM.lz - MediaType.NEC_35_HD_15, - - // DSKA0046.CQM.lz - MediaType.Unknown, - - // DSKA0047.CQM.lz - MediaType.DOS_35_DS_DD_8, - - // DSKA0048.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0049.CQM.lz - MediaType.Unknown, - - // DSKA0050.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0051.CQM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0052.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0053.CQM.lz - MediaType.Unknown, - - // DSKA0054.CQM.lz - MediaType.Unknown, - - // DSKA0055.CQM.lz - MediaType.Unknown, - - // DSKA0056.CQM.lz - MediaType.DMF, - - // DSKA0057.CQM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0058.CQM.lz - MediaType.Unknown, - - // DSKA0059.CQM.lz - MediaType.Unknown, - - // DSKA0060.CQM.lz - MediaType.Unknown, - - // DSKA0069.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0070.CQM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0073.CQM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0074.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0075.CQM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0076.CQM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0077.CQM.lz - MediaType.Unknown, - - // DSKA0078.CQM.lz - MediaType.DOS_525_HD, - - // DSKA0080.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0081.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0082.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0083.CQM.lz - MediaType.Unknown, - - // DSKA0084.CQM.lz - MediaType.DMF, - - // DSKA0085.CQM.lz - MediaType.Unknown, - - // DSKA0105.CQM.lz - MediaType.Unknown, - - // DSKA0106.CQM.lz - MediaType.Unknown, - - // DSKA0107.CQM.lz - MediaType.Unknown, - - // DSKA0108.CQM.lz - MediaType.Unknown, - - // DSKA0109.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0110.CQM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0111.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0112.CQM.lz - MediaType.Unknown, - - // DSKA0113.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0114.CQM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0115.CQM.lz - MediaType.Unknown, - - // DSKA0116.CQM.lz - MediaType.Unknown, - - // DSKA0117.CQM.lz - MediaType.Unknown, - - // DSKA0120.CQM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0121.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0122.CQM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0123.CQM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0124.CQM.lz - MediaType.DOS_525_HD, - - // DSKA0125.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0126.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0147.CQM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0148.CQM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0149.CQM.lz - MediaType.Unknown, - - // DSKA0150.CQM.lz - MediaType.Unknown, - - // DSKA0151.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0153.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0158.CQM.lz - MediaType.Unknown, - - // DSKA0159.CQM.lz - MediaType.ACORN_525_SS_DD_40, - - // DSKA0162.CQM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0163.CQM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0164.CQM.lz - MediaType.Unknown, - - // DSKA0166.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0167.CQM.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0168.CQM.lz - MediaType.DOS_525_HD, - - // DSKA0169.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0173.CQM.lz - MediaType.DOS_35_SS_DD_9, - - // DSKA0174.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0175.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0180.CQM.lz - MediaType.Unknown, - - // DSKA0181.CQM.lz - MediaType.DMF, - - // DSKA0182.CQM.lz - MediaType.Unknown, - - // DSKA0183.CQM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0184.CQM.lz - MediaType.Unknown, - - // DSKA0185.CQM.lz - MediaType.Unknown, - - // DSKA0186.CQM.lz - MediaType.Unknown, - - // DSKA0197.CQM.lz - MediaType.Unknown, - - // DSKA0198.CQM.lz - MediaType.Unknown, - - // DSKA0199.CQM.lz - MediaType.Unknown, - - // DSKA0200.CQM.lz - MediaType.Unknown, - - // DSKA0201.CQM.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0202.CQM.lz - MediaType.Unknown, - - // DSKA0203.CQM.lz - MediaType.Unknown, - - // DSKA0204.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0205.CQM.lz - MediaType.Unknown, - - // DSKA0206.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0207.CQM.lz - MediaType.XDF_525, - - // DSKA0209.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0210.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0211.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0212.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0213.CQM.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0214.CQM.lz - MediaType.Unknown, - - // DSKA0215.CQM.lz - MediaType.Unknown, - - // DSKA0216.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0221.CQM.lz - MediaType.Unknown, - - // DSKA0222.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0225.CQM.lz - MediaType.Unknown, - - // DSKA0228.CQM.lz - MediaType.Unknown, - - // DSKA0232.CQM.lz - MediaType.Unknown, - - // DSKA0234.CQM.lz - MediaType.Unknown, - - // DSKA0240.CQM.lz - MediaType.ATARI_525_DD, - - // DSKA0241.CQM.lz - MediaType.Unknown, - - // DSKA0242.CQM.lz - MediaType.NEC_35_HD_8, - - // DSKA0243.CQM.lz - MediaType.Unknown, - - // DSKA0244.CQM.lz - MediaType.Unknown, - - // DSKA0245.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0246.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0247.CQM.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0248.CQM.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0250.CQM.lz - MediaType.Unknown, - - // DSKA0251.CQM.lz - MediaType.ACORN_525_DS_DD, - - // DSKA0252.CQM.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0253.CQM.lz - MediaType.Unknown, - - // DSKA0254.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0258.CQM.lz - MediaType.SHARP_525, - - // DSKA0262.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0263.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0264.CQM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0265.CQM.lz - MediaType.Unknown, - - // DSKA0266.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0267.CQM.lz - MediaType.XDF_525, - - // DSKA0268.CQM.lz - MediaType.Unknown, - - // DSKA0269.CQM.lz - MediaType.Unknown, - - // DSKA0270.CQM.lz - MediaType.Unknown, - - // DSKA0271.CQM.lz - MediaType.DMF, - - // DSKA0272.CQM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0273.CQM.lz - MediaType.Unknown, - - // DSKA0280.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0281.CQM.lz - MediaType.Unknown, - - // DSKA0282.CQM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0283.CQM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0284.CQM.lz - MediaType.Unknown, - - // DSKA0285.CQM.lz - MediaType.Unknown, - - // DSKA0287.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0288.CQM.lz - MediaType.Unknown, - - // DSKA0289.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0290.CQM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0291.CQM.lz - MediaType.Unknown, - - // DSKA0299.CQM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0300.CQM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0301.CQM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0302.CQM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0303.CQM.lz - MediaType.DOS_525_HD, - - // DSKA0304.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0305.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0307.CQM.lz - MediaType.Unknown, - - // DSKA0308.CQM.lz - MediaType.CBM_35_DD, - - // DSKA0311.CQM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0314.CQM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0316.CQM.lz - MediaType.DOS_35_HD, - - // DSKA0317.CQM.lz - MediaType.DMF, - - // DSKA0318.CQM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0319.CQM.lz - MediaType.DMF, - - // DSKA0320.CQM.lz - MediaType.DMF, - - // DSKA0322.CQM.lz - MediaType.Unknown, - - // mf2dd.cqm.lz - MediaType.DOS_35_DS_DD_9, - - // mf2dd_fdformat_800.cqm.lz - MediaType.CBM_35_DD, - - // mf2dd_freedos.cqm.lz - MediaType.CBM_35_DD, - - // mf2hd_blind.cqm.lz - MediaType.DOS_35_HD, - - // mf2hd.cqm.lz - MediaType.DOS_35_HD, - - // mf2hd_fdformat_168.cqm.lz - MediaType.DMF, - - // mf2hd_freedos.cqm.lz - MediaType.DMF - }; - public override string[] _md5S => new[] - { - // DSKA0000.CQM.lz - "e8bbbd22db87181974e12ba0227ea011", - - // DSKA0001.CQM.lz - "9f5635f3df4d880a500910b0ad1ab535", - - // DSKA0002.CQM.lz - "9176f59e9205846b6212e084f46ed95c", - - // DSKA0003.CQM.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0004.CQM.lz - "1045bfd216ae1ae480dd0ef626f5ff39", - - // DSKA0006.CQM.lz - "46fce47baf08c6f093f2c355a603543d", - - // DSKA0009.CQM.lz - "95ea232f59e44db374b994cfe7f1c07f", - - // DSKA0010.CQM.lz - "9e2b01f4397db2a6c76e2bc267df37b3", - - // DSKA0011.CQM.lz - "dbbf55398d930e14c2b0a035dd1277b9", - - // DSKA0012.CQM.lz - "656002e6e620cb3b73c27f4c21d32edb", - - // DSKA0013.CQM.lz - "1244cc2c101c66e6bb4ad5183b356b19", - - // DSKA0017.CQM.lz - "8cad624afc06ab756f9800eba22ee886", - - // DSKA0018.CQM.lz - "84cce7b4d8c8e21040163cd2d03a730c", - - // DSKA0019.CQM.lz - "76a1ef9485ffd5da1e9836725e375ada", - - // DSKA0020.CQM.lz - "d236783dfd1dc29f350c51949b1e9e68", - - // DSKA0021.CQM.lz - "6915f208cdda762eea2fe64ad754e72f", - - // DSKA0023.CQM.lz - "b52f26c3c5b9b2cfc93a287a7fca3548", - - // DSKA0024.CQM.lz - "2302991363cb3681cffdc4388915b51e", - - // DSKA0025.CQM.lz - "4e4cafed1cc22ea72201169427e5e1b6", - - // DSKA0026.CQM.lz - "a579b349a5a24218d59a44e36bdb1333", - - // DSKA0027.CQM.lz - "3135430552171a832339a8a93d44cc90", - - // DSKA0028.CQM.lz - "1a4c7487382c98b7bc74623ddfb488e6", - - // DSKA0029.CQM.lz - "a8a9caa886a338b66181cfa21db6b620", - - // DSKA0030.CQM.lz - "af83d011608042d35021e39aa5e10b2f", - - // DSKA0031.CQM.lz - "e640835966327f3f662e1db8e0575510", - - // DSKA0032.CQM.lz - "ff3534234d1d2dd88bf6e83be23d9227", - - // DSKA0033.CQM.lz - "dfaff34a6556b515642f1e54f839b02e", - - // DSKA0034.CQM.lz - "ca8f5c7f9ed161b03ccb166eb9d62146", - - // DSKA0035.CQM.lz - "6642c1a32d2c58e93481d664974fc202", - - // DSKA0036.CQM.lz - "846f01b8b60cb3c775bd66419e977926", - - // DSKA0037.CQM.lz - "5101f89850dc28efbcfb7622086a9ddf", - - // DSKA0038.CQM.lz - "8e570be2ed1f00ddea82e50a2d9c446a", - - // DSKA0039.CQM.lz - "abba2a1ddd60a649047a9c44d94bbeae", - - // DSKA0040.CQM.lz - "e3bc48bec81be5b35be73d41fdffd2ab", - - // DSKA0041.CQM.lz - "43b5068af9d016d1432eb2e12d2b802a", - - // DSKA0042.CQM.lz - "5bf2ad4dc300592604b6e32f8b8e2656", - - // DSKA0043.CQM.lz - "cb9a832ca6a4097b8ccc30d2108e1f7d", - - // DSKA0044.CQM.lz - "56d181a6bb8713e6b2854fe8887faab6", - - // DSKA0045.CQM.lz - "41aef7cff26aefda1add8d49c5b962c2", - - // DSKA0046.CQM.lz - "2437c5f089f1cba3866b36360b016f16", - - // DSKA0047.CQM.lz - "bdaa8f17373b265830fdf3a06b794367", - - // DSKA0048.CQM.lz - "629932c285478d0540ff7936aa008351", - - // DSKA0049.CQM.lz - "7a2abef5d4701e2e49abb05af8d4da50", - - // DSKA0050.CQM.lz - "e3507522c914264f44fb2c92c3170c09", - - // DSKA0051.CQM.lz - "824fe65dbb1a42b6b94f05405ef984f2", - - // DSKA0052.CQM.lz - "1a8c2e78e7132cf9ba5d6c2b75876be0", - - // DSKA0053.CQM.lz - "936b20bb0966fe693b4d5e2353e24846", - - // DSKA0054.CQM.lz - "803b01a0b440c2837d37c21308f30cd5", - - // DSKA0055.CQM.lz - "aa0d31f914760cc4cde75479779ebed6", - - // DSKA0056.CQM.lz - "31269ed6464302ae26d22b7c87bceb23", - - // DSKA0057.CQM.lz - "5e413433c54f48978d281c6e66d1106e", - - // DSKA0058.CQM.lz - "4fc28b0128543b2eb70f6432c4c8a980", - - // DSKA0059.CQM.lz - "24a7459d080cea3a60d131b8fd7dc5d1", - - // DSKA0060.CQM.lz - "2031b1e16ee2defc0d15f732f633df33", - - // DSKA0069.CQM.lz - "5fc19ca552b6db957061e9a1750394d2", - - // DSKA0070.CQM.lz - "d1e978b679c63a218c3f77a7ca2c7206", - - // DSKA0073.CQM.lz - "a33b46f042b78fe3d0b3c5dbb3908a93", - - // DSKA0074.CQM.lz - "565d3c001cbb532154aa5d3c65b2439c", - - // DSKA0075.CQM.lz - "e60442c3ebd72c99bdd7545fdba59613", - - // DSKA0076.CQM.lz - "058a33a129539285c9b64010496af52f", - - // DSKA0077.CQM.lz - "0726ecbc38965d30a6222c3e74cd1aa3", - - // DSKA0078.CQM.lz - "c9a193837db7d8a5eb025eb41e8a76d7", - - // DSKA0080.CQM.lz - "c38d69ac88520f14fcc6d6ced22b065d", - - // DSKA0081.CQM.lz - "91d51964e1e64ef3f6f622fa19aa833c", - - // DSKA0082.CQM.lz - "db36d9651c952ff679ec33223c8db2d3", - - // DSKA0083.CQM.lz - "5f1d98806309aee7f81de72e51e6d386", - - // DSKA0084.CQM.lz - "1207a1cc7ff73d4f74c8984b4e7db33f", - - // DSKA0085.CQM.lz - "c97a3081fd25474b6b7945b8572d5ab8", - - // DSKA0105.CQM.lz - "d40a99cb549fcfb26fcf9ef01b5dfca7", - - // DSKA0106.CQM.lz - "7b41dd9ca7eb32828960eb1417a6092a", - - // DSKA0107.CQM.lz - "126dfd25363c076727dfaab03955c931", - - // DSKA0108.CQM.lz - "e6492aac144f5f6f593b84c64680cf64", - - // DSKA0109.CQM.lz - "7973e569ed93beb1ece2e84a5ef3a8d1", - - // DSKA0110.CQM.lz - "a793047503af08e83361427b3e2806e0", - - // DSKA0111.CQM.lz - "f01541de322c8d6d7321084d7a245e7b", - - // DSKA0112.CQM.lz - "ba6ec1652ff41bcc687aaf9c4e32dc18", - - // DSKA0113.CQM.lz - "7973e569ed93beb1ece2e84a5ef3a8d1", - - // DSKA0114.CQM.lz - "a793047503af08e83361427b3e2806e0", - - // DSKA0115.CQM.lz - "ba6ec1652ff41bcc687aaf9c4e32dc18", - - // DSKA0116.CQM.lz - "6631b66fdfd89319323771c41334c7ba", - - // DSKA0117.CQM.lz - "56471a253f4d6803b634e2bbff6c0931", - - // DSKA0120.CQM.lz - "7d36aee5a3071ff75b979f3acb649c40", - - // DSKA0121.CQM.lz - "0ccb62039363ab544c69eca229a17fae", - - // DSKA0122.CQM.lz - "7851d31fad9302ff45d3ded4fba25387", - - // DSKA0123.CQM.lz - "915b08c82591e8488320e001b7303b6d", - - // DSKA0124.CQM.lz - "5e5ea6fe9adf842221fdc60e56630405", - - // DSKA0125.CQM.lz - "a22e254f7e3526ec30dc4915a19fcb52", - - // DSKA0126.CQM.lz - "ddc6c1200c60e9f7796280f50c2e5283", - - // DSKA0147.CQM.lz - "6efa72a33021d5051546c3e0dd4c3c09", - - // DSKA0148.CQM.lz - "8b5acfd14818ff9556d3d81361ce4862", - - // DSKA0149.CQM.lz - "cf42d08469548a31caf2649a1d08a85f", - - // DSKA0150.CQM.lz - "62745e10683cf2ec1dac177535459891", - - // DSKA0151.CQM.lz - "298c377de52947c472a85d281b6d3d4d", - - // DSKA0153.CQM.lz - "298c377de52947c472a85d281b6d3d4d", - - // DSKA0158.CQM.lz - "8b5acfd14818ff9556d3d81361ce4862", - - // DSKA0159.CQM.lz - "6efa72a33021d5051546c3e0dd4c3c09", - - // DSKA0162.CQM.lz - "e63014a4299f52f22e6e2c9609f51979", - - // DSKA0163.CQM.lz - "be05d1ff10ef8b2220546c4db962ac9e", - - // DSKA0164.CQM.lz - "32823b9009c99b6711e89336ad03ec7f", - - // DSKA0166.CQM.lz - "1c8b03a8550ed3e70e1c78316aa445aa", - - // DSKA0167.CQM.lz - "185bc63e4304a2d2554615362b2d25c5", - - // DSKA0168.CQM.lz - "0bdf9130c07bb5d558a4705249f949d0", - - // DSKA0169.CQM.lz - "2dafeddaa99e7dc0db5ef69e128f9c8e", - - // DSKA0173.CQM.lz - "028769dc0abefab1740cc309432588b6", - - // DSKA0174.CQM.lz - "152023525154b45ab26687190bac94db", - - // DSKA0175.CQM.lz - "db38ecd93f28dd065927fed21917eed5", - - // DSKA0180.CQM.lz - "f206c0caa4e0eda37233ab6e89ab5493", - - // DSKA0181.CQM.lz - "554492a7b41f4cd9068a3a2b70eb0e5f", - - // DSKA0182.CQM.lz - "865ad9072cb6c7458f7d86d7e9368622", - - // DSKA0183.CQM.lz - "2461e458438f0033bc5811fd6958ad02", - - // DSKA0184.CQM.lz - "606d5fbf174708c7ecfbfdd2a50fec9c", - - // DSKA0185.CQM.lz - "6173d4c7b6a1addb14a4cbe088ede9d7", - - // DSKA0186.CQM.lz - "5f47876d515d9495789f5e27ed313959", - - // DSKA0197.CQM.lz - "65531301132413a81f3994eaf0b16f50", - - // DSKA0198.CQM.lz - "a13fbf4d230f421d1bc4d21b714dc36b", - - // DSKA0199.CQM.lz - "de0170cd10ddd839a63370355b2ba4ed", - - // DSKA0200.CQM.lz - "1045bfd216ae1ae480dd0ef626f5ff39", - - // DSKA0201.CQM.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0202.CQM.lz - "1045bfd216ae1ae480dd0ef626f5ff39", - - // DSKA0203.CQM.lz - "8a16a3008739516fc3ba4c878868d056", - - // DSKA0204.CQM.lz - "46fce47baf08c6f093f2c355a603543d", - - // DSKA0205.CQM.lz - "ee73a5d5c8dfac236baf7b99811696f9", - - // DSKA0206.CQM.lz - "8245ddd644583bd78ac0638133c89824", - - // DSKA0207.CQM.lz - "33c51a3d6f13cfedb5f08bf4c3cba7b9", - - // DSKA0209.CQM.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0210.CQM.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0211.CQM.lz - "647f14749f59be471aac04a71a079a64", - - // DSKA0212.CQM.lz - "517cdd5e42a4673f733d1aedfb46770f", - - // DSKA0213.CQM.lz - "6ad92e9522e4ba902c01beecb5943bb1", - - // DSKA0214.CQM.lz - "8e077143864bb20e36f25a4685860a1e", - - // DSKA0215.CQM.lz - "9724c94417cef88b2ad2f3c1db9d8730", - - // DSKA0216.CQM.lz - "40199611e6e75bbc37ad6c52a5b77eae", - - // DSKA0221.CQM.lz - "f92b2e52259531d50bfb403dc1274ab1", - - // DSKA0222.CQM.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0225.CQM.lz - "dbcd4aa7c1c670a667c89b309bd9de42", - - // DSKA0228.CQM.lz - "d88f521c048df99b8ef5f01a8a001455", - - // DSKA0232.CQM.lz - "b76bd117ce24d933cdefe09b1de2164a", - - // DSKA0234.CQM.lz - "a50f82253aa4d8dea4fb193d64a66778", - - // DSKA0240.CQM.lz - "d1ab955f0961ab94e6cf69f78134a84b", - - // DSKA0241.CQM.lz - "8b62738f15bcc916a668eaa67eec86e7", - - // DSKA0242.CQM.lz - "87a432496cb23b5c2299545500df3553", - - // DSKA0243.CQM.lz - "9866ab8e58fa4be25010184aec4ad3aa", - - // DSKA0244.CQM.lz - "9dab329ae098b29889ab08278de38f95", - - // DSKA0245.CQM.lz - "0d71b4952dadbfb1061acc1f4640c787", - - // DSKA0246.CQM.lz - "af7ac6b5b9d2d57dad22dbb64ef7de38", - - // DSKA0247.CQM.lz - "f8f81f945aaad6fbfe7e2db1905302c1", - - // DSKA0248.CQM.lz - "f6f81c75b5ba45d91c1886c6dda9caee", - - // DSKA0250.CQM.lz - "0b9cb8107cbb94c5e36aea438a04dc98", - - // DSKA0251.CQM.lz - "d075e50705f4ddca7ba4dbc981ec1176", - - // DSKA0252.CQM.lz - "9f86480c86bae33a5b444e4a7ed55048", - - // DSKA0253.CQM.lz - "231891ccd0cc599cfe25419c669fc5f8", - - // DSKA0254.CQM.lz - "5dc0d482a773043d8683a84c8220df95", - - // DSKA0258.CQM.lz - "855943f9caecdcce9b06f0098d773c6b", - - // DSKA0262.CQM.lz - "5ac0a9fc7337f761098f816359b0f6f7", - - // DSKA0263.CQM.lz - "1ea6ec8e663218b1372048f6e25795b5", - - // DSKA0264.CQM.lz - "77a1167b1b9043496e32b8578cde0ff0", - - // DSKA0265.CQM.lz - "4b07d760d65f3f0f8ffa5f2b81cee907", - - // DSKA0266.CQM.lz - "32c044c5c2b0bd13806149a759c14935", - - // DSKA0267.CQM.lz - "8752095abc13dba3f3467669da333891", - - // DSKA0268.CQM.lz - "aece7cd34bbba3e75307fa70404d9d30", - - // DSKA0269.CQM.lz - "5289afb16a6e4a33213e3bcca56c6230", - - // DSKA0270.CQM.lz - "1aef0a0ba233476db6567878c3c2b266", - - // DSKA0271.CQM.lz - "b96596711f4d2ee85dfda0fe3b9f26c3", - - // DSKA0272.CQM.lz - "a4f461af7fda5e93a7ab63fcbb7e7683", - - // DSKA0273.CQM.lz - "8f7f7099d4475f6631fcf0a79b031d61", - - // DSKA0280.CQM.lz - "4feeaf4b4ee5dad85db727fbbda4b6d1", - - // DSKA0281.CQM.lz - "3c77ca681df78e4cd7baa162aa9b0859", - - // DSKA0282.CQM.lz - "51da1f86c49657ffdb367bb2ddeb7990", - - // DSKA0283.CQM.lz - "b81a4987f89936630b8ebc62e4bbce6e", - - // DSKA0284.CQM.lz - "f76f92dd326c99c5efad5ee58daf72e1", - - // DSKA0285.CQM.lz - "b6f2c10e42908e334025bc4ffd81e771", - - // DSKA0287.CQM.lz - "f2f409ea2a62a7866fd2777cc4fc9739", - - // DSKA0288.CQM.lz - "3e441d69cec5c3169274e1379de4af4b", - - // DSKA0289.CQM.lz - "30a93f30dd4485c6fc037fe0775d3fc7", - - // DSKA0290.CQM.lz - "e0caf02cce5597c98313bcc480366ec7", - - // DSKA0291.CQM.lz - "4af4904d2b3c815da7bef7049209f5eb", - - // DSKA0299.CQM.lz - "39bf5a98bcb2185d855ac06378febcfa", - - // DSKA0300.CQM.lz - "dc20055b6e6fd6f8e1114d4be2effeed", - - // DSKA0301.CQM.lz - "56af9256cf71d5aac5fd5d363674bc49", - - // DSKA0302.CQM.lz - "bbba1e2d1418e05c3a4e7b4d585d160b", - - // DSKA0303.CQM.lz - "bca3a045e81617f7f5ebb5a8818eac47", - - // DSKA0304.CQM.lz - "a296663cb8e75e94603221352f29cfff", - - // DSKA0305.CQM.lz - "ecda36ebf0e1100233cb0ec722c18583", - - // DSKA0307.CQM.lz - "cef2f4fe9b1a32d5c0544f814e634264", - - // DSKA0308.CQM.lz - "bbe58e26b8f8f822cd3edfd37a4e4924", - - // DSKA0311.CQM.lz - "b9b6ebdf711364c979de7cf70c3a438a", - - // DSKA0314.CQM.lz - "d37424f367f545acbb397f2bed766843", - - // DSKA0316.CQM.lz - "9963dd6f19ce6bd56eabeccdfbbd821a", - - // DSKA0317.CQM.lz - "acf6604559ae8217f7869823e2429024", - - // DSKA0318.CQM.lz - "23bf2139cdfdc4c16db058fd31ea6481", - - // DSKA0319.CQM.lz - "fa26adda0415f02057b113ad29c80c8d", - - // DSKA0320.CQM.lz - "4f2a8d036fefd6c6c88d99eda3aa12b7", - - // DSKA0322.CQM.lz - "e794a3ffa4069ea999fdf7146710fa9e", - - // mf2dd.cqm.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2dd_fdformat_800.cqm.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_freedos.cqm.lz - "1ff7649b679ba22ff20d39ff717dbec8", - - // mf2hd_blind.cqm.lz - "b4a602f67903c46eef62addb0780aa56", - - // mf2hd.cqm.lz - "b4a602f67903c46eef62addb0780aa56", - - // mf2hd_fdformat_168.cqm.lz - "03c2af6a8ebf4bd6f530335de34ae5dd", - - // mf2hd_freedos.cqm.lz - "1a9f2eeb3cbeeb057b9a9a5c6e9b0cc6" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "CopyQM"); public override IMediaImage _plugin => new DiscImages.CopyQm(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DSKA0000.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "e8bbbd22db87181974e12ba0227ea011" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0001.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "9f5635f3df4d880a500910b0ad1ab535" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0002.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "9176f59e9205846b6212e084f46ed95c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0003.CQM.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0004.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "1045bfd216ae1ae480dd0ef626f5ff39" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0006.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "46fce47baf08c6f093f2c355a603543d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0009.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "95ea232f59e44db374b994cfe7f1c07f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0010.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "9e2b01f4397db2a6c76e2bc267df37b3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0011.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "dbbf55398d930e14c2b0a035dd1277b9" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0012.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "656002e6e620cb3b73c27f4c21d32edb" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0013.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1244cc2c101c66e6bb4ad5183b356b19" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0017.CQM.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "8cad624afc06ab756f9800eba22ee886" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0018.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "84cce7b4d8c8e21040163cd2d03a730c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0019.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 640, + SectorSize = 1024, + MD5 = "76a1ef9485ffd5da1e9836725e375ada" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0020.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "d236783dfd1dc29f350c51949b1e9e68" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0021.CQM.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "6915f208cdda762eea2fe64ad754e72f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0023.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "b52f26c3c5b9b2cfc93a287a7fca3548" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0024.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2302991363cb3681cffdc4388915b51e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0025.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "4e4cafed1cc22ea72201169427e5e1b6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0026.CQM.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "a579b349a5a24218d59a44e36bdb1333" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0027.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 640, + SectorSize = 1024, + MD5 = "3135430552171a832339a8a93d44cc90" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0028.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1a4c7487382c98b7bc74623ddfb488e6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0029.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 576, + SectorSize = 1024, + MD5 = "a8a9caa886a338b66181cfa21db6b620" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0030.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "af83d011608042d35021e39aa5e10b2f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0031.CQM.lz", + MediaType = MediaType.ACORN_525_SS_DD_40, + Sectors = 640, + SectorSize = 256, + MD5 = "e640835966327f3f662e1db8e0575510" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0032.CQM.lz", + MediaType = MediaType.ACORN_525_SS_DD_40, + Sectors = 640, + SectorSize = 256, + MD5 = "ff3534234d1d2dd88bf6e83be23d9227" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0033.CQM.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "dfaff34a6556b515642f1e54f839b02e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0034.CQM.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "ca8f5c7f9ed161b03ccb166eb9d62146" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0035.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6642c1a32d2c58e93481d664974fc202" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0036.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "846f01b8b60cb3c775bd66419e977926" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0037.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "5101f89850dc28efbcfb7622086a9ddf" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0038.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "8e570be2ed1f00ddea82e50a2d9c446a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0039.CQM.lz", + MediaType = MediaType.DOS_35_SS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "abba2a1ddd60a649047a9c44d94bbeae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0040.CQM.lz", + MediaType = MediaType.DOS_35_SS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "e3bc48bec81be5b35be73d41fdffd2ab" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0041.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "43b5068af9d016d1432eb2e12d2b802a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0042.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "5bf2ad4dc300592604b6e32f8b8e2656" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0043.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "cb9a832ca6a4097b8ccc30d2108e1f7d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0044.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "56d181a6bb8713e6b2854fe8887faab6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0045.CQM.lz", + MediaType = MediaType.NEC_35_HD_15, + Sectors = 2400, + SectorSize = 512, + MD5 = "41aef7cff26aefda1add8d49c5b962c2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0046.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "2437c5f089f1cba3866b36360b016f16" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0047.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_8, + Sectors = 1280, + SectorSize = 512, + MD5 = "bdaa8f17373b265830fdf3a06b794367" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0048.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "629932c285478d0540ff7936aa008351" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0049.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "7a2abef5d4701e2e49abb05af8d4da50" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0050.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "e3507522c914264f44fb2c92c3170c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0051.CQM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "824fe65dbb1a42b6b94f05405ef984f2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0052.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "1a8c2e78e7132cf9ba5d6c2b75876be0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0053.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "936b20bb0966fe693b4d5e2353e24846" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0054.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "803b01a0b440c2837d37c21308f30cd5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0055.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "aa0d31f914760cc4cde75479779ebed6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0056.CQM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "31269ed6464302ae26d22b7c87bceb23" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0057.CQM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "5e413433c54f48978d281c6e66d1106e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0058.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "4fc28b0128543b2eb70f6432c4c8a980" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0059.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3528, + SectorSize = 512, + MD5 = "24a7459d080cea3a60d131b8fd7dc5d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0060.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3570, + SectorSize = 512, + MD5 = "2031b1e16ee2defc0d15f732f633df33" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0069.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "5fc19ca552b6db957061e9a1750394d2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0070.CQM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "d1e978b679c63a218c3f77a7ca2c7206" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0073.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "a33b46f042b78fe3d0b3c5dbb3908a93" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0074.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "565d3c001cbb532154aa5d3c65b2439c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0075.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "e60442c3ebd72c99bdd7545fdba59613" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0076.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "058a33a129539285c9b64010496af52f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0077.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "0726ecbc38965d30a6222c3e74cd1aa3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0078.CQM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "c9a193837db7d8a5eb025eb41e8a76d7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0080.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c38d69ac88520f14fcc6d6ced22b065d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0081.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "91d51964e1e64ef3f6f622fa19aa833c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0082.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "db36d9651c952ff679ec33223c8db2d3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0083.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 2988, + SectorSize = 512, + MD5 = "5f1d98806309aee7f81de72e51e6d386" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0084.CQM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "1207a1cc7ff73d4f74c8984b4e7db33f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0085.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "c97a3081fd25474b6b7945b8572d5ab8" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0105.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "d40a99cb549fcfb26fcf9ef01b5dfca7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0106.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 410, + SectorSize = 512, + MD5 = "7b41dd9ca7eb32828960eb1417a6092a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0107.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "126dfd25363c076727dfaab03955c931" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0108.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 820, + SectorSize = 512, + MD5 = "e6492aac144f5f6f593b84c64680cf64" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0109.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "7973e569ed93beb1ece2e84a5ef3a8d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0110.CQM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a793047503af08e83361427b3e2806e0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0111.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "f01541de322c8d6d7321084d7a245e7b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0112.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "ba6ec1652ff41bcc687aaf9c4e32dc18" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0113.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "7973e569ed93beb1ece2e84a5ef3a8d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0114.CQM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a793047503af08e83361427b3e2806e0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0115.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "ba6ec1652ff41bcc687aaf9c4e32dc18" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0116.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "6631b66fdfd89319323771c41334c7ba" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0117.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "56471a253f4d6803b634e2bbff6c0931" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0120.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "7d36aee5a3071ff75b979f3acb649c40" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0121.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "0ccb62039363ab544c69eca229a17fae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0122.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "7851d31fad9302ff45d3ded4fba25387" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0123.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "915b08c82591e8488320e001b7303b6d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0124.CQM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "5e5ea6fe9adf842221fdc60e56630405" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0125.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "a22e254f7e3526ec30dc4915a19fcb52" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0126.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ddc6c1200c60e9f7796280f50c2e5283" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0147.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6efa72a33021d5051546c3e0dd4c3c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0148.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "8b5acfd14818ff9556d3d81361ce4862" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0149.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 200, + SectorSize = 1024, + MD5 = "cf42d08469548a31caf2649a1d08a85f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0150.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 1024, + MD5 = "62745e10683cf2ec1dac177535459891" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0151.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "298c377de52947c472a85d281b6d3d4d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0153.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "298c377de52947c472a85d281b6d3d4d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0158.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 256, + MD5 = "8b5acfd14818ff9556d3d81361ce4862" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0159.CQM.lz", + MediaType = MediaType.ACORN_525_SS_DD_40, + Sectors = 640, + SectorSize = 256, + MD5 = "6efa72a33021d5051546c3e0dd4c3c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0162.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "e63014a4299f52f22e6e2c9609f51979" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0163.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "be05d1ff10ef8b2220546c4db962ac9e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0164.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 820, + SectorSize = 512, + MD5 = "32823b9009c99b6711e89336ad03ec7f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0166.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1c8b03a8550ed3e70e1c78316aa445aa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0167.CQM.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "185bc63e4304a2d2554615362b2d25c5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0168.CQM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "0bdf9130c07bb5d558a4705249f949d0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0169.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2dafeddaa99e7dc0db5ef69e128f9c8e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0173.CQM.lz", + MediaType = MediaType.DOS_35_SS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "028769dc0abefab1740cc309432588b6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0174.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "152023525154b45ab26687190bac94db" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0175.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "db38ecd93f28dd065927fed21917eed5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0180.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "f206c0caa4e0eda37233ab6e89ab5493" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0181.CQM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "554492a7b41f4cd9068a3a2b70eb0e5f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0182.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3402, + SectorSize = 512, + MD5 = "865ad9072cb6c7458f7d86d7e9368622" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0183.CQM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "2461e458438f0033bc5811fd6958ad02" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0184.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "606d5fbf174708c7ecfbfdd2a50fec9c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0185.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 2048, + MD5 = "6173d4c7b6a1addb14a4cbe088ede9d7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0186.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 160, + SectorSize = 8192, + MD5 = "5f47876d515d9495789f5e27ed313959" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0197.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 600, + SectorSize = 256, + MD5 = "65531301132413a81f3994eaf0b16f50" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0198.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1200, + SectorSize = 256, + MD5 = "a13fbf4d230f421d1bc4d21b714dc36b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0199.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 2400, + SectorSize = 256, + MD5 = "de0170cd10ddd839a63370355b2ba4ed" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0200.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "1045bfd216ae1ae480dd0ef626f5ff39" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0201.CQM.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0202.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "1045bfd216ae1ae480dd0ef626f5ff39" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0203.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "8a16a3008739516fc3ba4c878868d056" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0204.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "46fce47baf08c6f093f2c355a603543d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0205.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "ee73a5d5c8dfac236baf7b99811696f9" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0206.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "8245ddd644583bd78ac0638133c89824" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0207.CQM.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "33c51a3d6f13cfedb5f08bf4c3cba7b9" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0209.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0210.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0211.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "647f14749f59be471aac04a71a079a64" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0212.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "517cdd5e42a4673f733d1aedfb46770f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0213.CQM.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "6ad92e9522e4ba902c01beecb5943bb1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0214.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "8e077143864bb20e36f25a4685860a1e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0215.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "9724c94417cef88b2ad2f3c1db9d8730" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0216.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "40199611e6e75bbc37ad6c52a5b77eae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0221.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 5120, + SectorSize = 256, + MD5 = "f92b2e52259531d50bfb403dc1274ab1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0222.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0225.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 990, + SectorSize = 256, + MD5 = "dbcd4aa7c1c670a667c89b309bd9de42" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0228.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1050, + SectorSize = 256, + MD5 = "d88f521c048df99b8ef5f01a8a001455" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0232.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 621, + SectorSize = 512, + MD5 = "b76bd117ce24d933cdefe09b1de2164a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0234.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 2400, + SectorSize = 256, + MD5 = "a50f82253aa4d8dea4fb193d64a66778" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0240.CQM.lz", + MediaType = MediaType.ATARI_525_DD, + Sectors = 720, + SectorSize = 256, + MD5 = "d1ab955f0961ab94e6cf69f78134a84b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0241.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 714, + SectorSize = 256, + MD5 = "8b62738f15bcc916a668eaa67eec86e7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0242.CQM.lz", + MediaType = MediaType.NEC_35_HD_8, + Sectors = 1232, + SectorSize = 1024, + MD5 = "87a432496cb23b5c2299545500df3553" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0243.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 256, + MD5 = "9866ab8e58fa4be25010184aec4ad3aa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0244.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 256, + MD5 = "9dab329ae098b29889ab08278de38f95" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0245.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "0d71b4952dadbfb1061acc1f4640c787" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0246.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "af7ac6b5b9d2d57dad22dbb64ef7de38" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0247.CQM.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "f8f81f945aaad6fbfe7e2db1905302c1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0248.CQM.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "f6f81c75b5ba45d91c1886c6dda9caee" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0250.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 640, + SectorSize = 1024, + MD5 = "0b9cb8107cbb94c5e36aea438a04dc98" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0251.CQM.lz", + MediaType = MediaType.ACORN_525_DS_DD, + Sectors = 2560, + SectorSize = 256, + MD5 = "d075e50705f4ddca7ba4dbc981ec1176" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0252.CQM.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "9f86480c86bae33a5b444e4a7ed55048" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0253.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 640, + SectorSize = 1024, + MD5 = "231891ccd0cc599cfe25419c669fc5f8" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0254.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "5dc0d482a773043d8683a84c8220df95" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0258.CQM.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "855943f9caecdcce9b06f0098d773c6b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0262.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "5ac0a9fc7337f761098f816359b0f6f7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0263.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1ea6ec8e663218b1372048f6e25795b5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0264.CQM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "77a1167b1b9043496e32b8578cde0ff0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0265.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "4b07d760d65f3f0f8ffa5f2b81cee907" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0266.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "32c044c5c2b0bd13806149a759c14935" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0267.CQM.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "8752095abc13dba3f3467669da333891" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0268.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "aece7cd34bbba3e75307fa70404d9d30" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0269.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "5289afb16a6e4a33213e3bcca56c6230" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0270.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3320, + SectorSize = 512, + MD5 = "1aef0a0ba233476db6567878c3c2b266" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0271.CQM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "b96596711f4d2ee85dfda0fe3b9f26c3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0272.CQM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "a4f461af7fda5e93a7ab63fcbb7e7683" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0273.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "8f7f7099d4475f6631fcf0a79b031d61" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0280.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "4feeaf4b4ee5dad85db727fbbda4b6d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0281.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "3c77ca681df78e4cd7baa162aa9b0859" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0282.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "51da1f86c49657ffdb367bb2ddeb7990" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0283.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "b81a4987f89936630b8ebc62e4bbce6e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0284.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "f76f92dd326c99c5efad5ee58daf72e1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0285.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "b6f2c10e42908e334025bc4ffd81e771" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0287.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "f2f409ea2a62a7866fd2777cc4fc9739" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0288.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1494, + SectorSize = 512, + MD5 = "3e441d69cec5c3169274e1379de4af4b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0289.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "30a93f30dd4485c6fc037fe0775d3fc7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0290.CQM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "e0caf02cce5597c98313bcc480366ec7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0291.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "4af4904d2b3c815da7bef7049209f5eb" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0299.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "39bf5a98bcb2185d855ac06378febcfa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0300.CQM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "dc20055b6e6fd6f8e1114d4be2effeed" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0301.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "56af9256cf71d5aac5fd5d363674bc49" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0302.CQM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "bbba1e2d1418e05c3a4e7b4d585d160b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0303.CQM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "bca3a045e81617f7f5ebb5a8818eac47" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0304.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "a296663cb8e75e94603221352f29cfff" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0305.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ecda36ebf0e1100233cb0ec722c18583" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0307.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "cef2f4fe9b1a32d5c0544f814e634264" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0308.CQM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "bbe58e26b8f8f822cd3edfd37a4e4924" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0311.CQM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "b9b6ebdf711364c979de7cf70c3a438a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0314.CQM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "d37424f367f545acbb397f2bed766843" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0316.CQM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "9963dd6f19ce6bd56eabeccdfbbd821a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0317.CQM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "acf6604559ae8217f7869823e2429024" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0318.CQM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "23bf2139cdfdc4c16db058fd31ea6481" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0319.CQM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "fa26adda0415f02057b113ad29c80c8d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0320.CQM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "4f2a8d036fefd6c6c88d99eda3aa12b7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0322.CQM.lz", + MediaType = MediaType.Unknown, + Sectors = 1386, + SectorSize = 512, + MD5 = "e794a3ffa4069ea999fdf7146710fa9e" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.cqm.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.cqm.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.cqm.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1ff7649b679ba22ff20d39ff717dbec8" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_blind.cqm.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b4a602f67903c46eef62addb0780aa56" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.cqm.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b4a602f67903c46eef62addb0780aa56" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.cqm.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "03c2af6a8ebf4bd6f530335de34ae5dd" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos.cqm.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "1a9f2eeb3cbeeb057b9a9a5c6e9b0cc6" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/CopyTape.cs b/Aaru.Tests/Images/CopyTape.cs index 10461b4a1..804bc5311 100644 --- a/Aaru.Tests/Images/CopyTape.cs +++ b/Aaru.Tests/Images/CopyTape.cs @@ -37,843 +37,712 @@ namespace Aaru.Tests.Images [TestFixture] public class CopyTape : TapeMediaImageTest { - public override string[] _testFiles => new[] - { - "Nonstop-UX System V Release 4 B32 (Boot Tape).cptp.lz", - "Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).cptp.lz", - "Nonstop-UX System V Release 4 B32 (Online Software Upgrade).cptp.lz", - "Nonstop-UX System V Release 4 B32 (Operating System).cptp.lz", - "Nonstop-UX System V Release 4 B32 (Optional Packages).cptp.lz", - "Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).cptp.lz", - "Nonstop-UX System V Release 4 B32 (Reliable Ethernet).cptp.lz", - "Nonstop-UX System V Release 4 B32 (Required Packages).cptp.lz", "OpenWindows.3.0.exabyte.cptp.lz", - "OpenWindows.3.0.Q150.cptp.lz", "OS.MP.4.1C.exabyte.cptp.lz", "X.3.0.exabyte.cptp.lz", "X.3.Q150.cptp.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).cptp.lz - 1604, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).cptp.lz - 15485, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).cptp.lz - 15, - - // Nonstop-UX System V Release 4 B32 (Operating System).cptp.lz - 3298, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).cptp.lz - 3152, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).cptp.lz - 818, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).cptp.lz - 7, - - // Nonstop-UX System V Release 4 B32 (Required Packages).cptp.lz - 684, - - // OpenWindows.3.0.exabyte.cptp.lz - 73525, - - // OpenWindows.3.0.Q150.cptp.lz - 290, - - // OS.MP.4.1C.exabyte.cptp.lz - 37587, - - // X.3.0.exabyte.cptp.lz - 25046, - - // X.3.Q150.cptp.lz - 102 - }; - - public override uint[] _sectorSize => new uint[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).cptp.lz - 10240, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).cptp.lz - 512, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).cptp.lz - 32256, - - // Nonstop-UX System V Release 4 B32 (Operating System).cptp.lz - 32256, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).cptp.lz - 32256, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).cptp.lz - 32256, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).cptp.lz - 32256, - - // Nonstop-UX System V Release 4 B32 (Required Packages).cptp.lz - 32256, - - // OpenWindows.3.0.exabyte.cptp.lz - 1024, - - // OpenWindows.3.0.Q150.cptp.lz - 262144, - - // OS.MP.4.1C.exabyte.cptp.lz - 8192, - - // X.3.0.exabyte.cptp.lz - 1024, - - // X.3.Q150.cptp.lz - 262144 - }; - - public override MediaType[] _mediaTypes => new[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).cptp.lz - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).cptp.lz - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).cptp.lz - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Operating System).cptp.lz - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).cptp.lz - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).cptp.lz - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).cptp.lz - MediaType.UnknownTape, - - // Nonstop-UX System V Release 4 B32 (Required Packages).cptp.lz - MediaType.UnknownTape, - - // OpenWindows.3.0.exabyte.cptp.lz - MediaType.UnknownTape, - - // OpenWindows.3.0.Q150.cptp.lz - MediaType.UnknownTape, - - // OS.MP.4.1C.exabyte.cptp.lz - MediaType.UnknownTape, - - // X.3.0.exabyte.cptp.lz - MediaType.UnknownTape, - - // X.3.Q150.cptp.lz - MediaType.UnknownTape - }; - - public override string[] _md5S => new[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).cptp.lz - "a6334d975523b3422fea522b0cc118a9", - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).cptp.lz - "17ef78d9e5c53b976f530d4ca44223fd", - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).cptp.lz - "76c0ae10f4ec70ef8681b212f02a71c8", - - // Nonstop-UX System V Release 4 B32 (Operating System).cptp.lz - "e331c9d0ae7c25c81c6580bc9965e2d0", - - // Nonstop-UX System V Release 4 B32 (Optional Packages).cptp.lz - "018c37c40f8df91ab9b098d643c9ae6c", - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).cptp.lz - "eb3ce36b2c3afeeec59e5b8ed802a393", - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).cptp.lz - "b057656698a224187afb2bdbb8caf7f3", - - // Nonstop-UX System V Release 4 B32 (Required Packages).cptp.lz - "8e48e388e7094f3170065718ab618b53", - - // OpenWindows.3.0.exabyte.cptp.lz - "8861f8c06a2e93ca5a81d729ad3e1de1", - - // OpenWindows.3.0.Q150.cptp.lz - "bfc402b23af0cf1ad22d9fb2ea29b58f", - - // OS.MP.4.1C.exabyte.cptp.lz - "e4a3e2fe26c72ca025ac0c017ec73ee9", - - // X.3.0.exabyte.cptp.lz - "e625c03d7493dc22fe49f91f731446e8", - - // X.3.Q150.cptp.lz - "198464b1daf8e674debf8eda0fcbf016" - }; - - public override TapeFile[][] _tapeFiles => new[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 1603, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 15484, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 14, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Operating System).cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 3297, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 3151, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 817, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 6, - Partition = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Required Packages).cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 683, - Partition = 0 - } - }, - - // OpenWindows.3.0.exabyte.cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 0, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 1, - LastBlock = 164, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 165, - LastBlock = 2412, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 2413, - LastBlock = 5612, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 5613, - LastBlock = 73524, - Partition = 0 - } - }, - - // OpenWindows.3.0.Q150.cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 0, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 1, - LastBlock = 1, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 2, - LastBlock = 10, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 11, - LastBlock = 23, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 24, - LastBlock = 289, - Partition = 0 - } - }, - - // OS.MP.4.1C.exabyte.cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 1, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 2, - LastBlock = 3, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 4, - LastBlock = 6860, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 6861, - LastBlock = 13773, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 13774, - LastBlock = 20263, - Partition = 0 - }, - new TapeFile - { - File = 5, - FirstBlock = 20264, - LastBlock = 20299, - Partition = 0 - }, - new TapeFile - { - File = 6, - FirstBlock = 20300, - LastBlock = 22603, - Partition = 0 - }, - new TapeFile - { - File = 7, - FirstBlock = 22604, - LastBlock = 23472, - Partition = 0 - }, - new TapeFile - { - File = 8, - FirstBlock = 23473, - LastBlock = 24946, - Partition = 0 - }, - new TapeFile - { - File = 9, - FirstBlock = 24947, - LastBlock = 26436, - Partition = 0 - }, - new TapeFile - { - File = 10, - FirstBlock = 26437, - LastBlock = 27720, - Partition = 0 - }, - new TapeFile - { - File = 11, - FirstBlock = 27721, - LastBlock = 31922, - Partition = 0 - }, - new TapeFile - { - File = 12, - FirstBlock = 31923, - LastBlock = 32283, - Partition = 0 - }, - new TapeFile - { - File = 13, - FirstBlock = 32284, - LastBlock = 32675, - Partition = 0 - }, - new TapeFile - { - File = 14, - FirstBlock = 32676, - LastBlock = 33549, - Partition = 0 - }, - new TapeFile - { - File = 15, - FirstBlock = 33550, - LastBlock = 33686, - Partition = 0 - }, - new TapeFile - { - File = 16, - FirstBlock = 33687, - LastBlock = 33909, - Partition = 0 - }, - new TapeFile - { - File = 17, - FirstBlock = 33910, - LastBlock = 33949, - Partition = 0 - }, - new TapeFile - { - File = 18, - FirstBlock = 33950, - LastBlock = 34180, - Partition = 0 - }, - new TapeFile - { - File = 19, - FirstBlock = 34181, - LastBlock = 34573, - Partition = 0 - }, - new TapeFile - { - File = 20, - FirstBlock = 34574, - LastBlock = 35072, - Partition = 0 - }, - new TapeFile - { - File = 21, - FirstBlock = 35073, - LastBlock = 35163, - Partition = 0 - }, - new TapeFile - { - File = 22, - FirstBlock = 35164, - LastBlock = 35908, - Partition = 0 - }, - new TapeFile - { - File = 23, - FirstBlock = 35909, - LastBlock = 35984, - Partition = 0 - }, - new TapeFile - { - File = 24, - FirstBlock = 35985, - LastBlock = 36098, - Partition = 0 - }, - new TapeFile - { - File = 25, - FirstBlock = 36099, - LastBlock = 36270, - Partition = 0 - }, - new TapeFile - { - File = 26, - FirstBlock = 36271, - LastBlock = 36276, - Partition = 0 - }, - new TapeFile - { - File = 27, - FirstBlock = 36277, - LastBlock = 36647, - Partition = 0 - }, - new TapeFile - { - File = 28, - FirstBlock = 36648, - LastBlock = 37111, - Partition = 0 - }, - new TapeFile - { - File = 29, - FirstBlock = 37112, - LastBlock = 37583, - Partition = 0 - }, - new TapeFile - { - File = 30, - FirstBlock = 37584, - LastBlock = 37584, - Partition = 0 - }, - new TapeFile - { - File = 31, - FirstBlock = 37585, - LastBlock = 37585, - Partition = 0 - }, - new TapeFile - { - File = 32, - FirstBlock = 37586, - LastBlock = 37586, - Partition = 0 - } - }, - - // X.3.0.exabyte.cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 0, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 1, - LastBlock = 61, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 62, - LastBlock = 149, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 150, - LastBlock = 2781, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 2782, - LastBlock = 11885, - Partition = 0 - }, - new TapeFile - { - File = 5, - FirstBlock = 11886, - LastBlock = 25045, - Partition = 0 - } - }, - - // X.3.Q150.cptp.lz - new[] - { - new TapeFile - { - File = 0, - FirstBlock = 0, - LastBlock = 0, - Partition = 0 - }, - new TapeFile - { - File = 1, - FirstBlock = 1, - LastBlock = 1, - Partition = 0 - }, - new TapeFile - { - File = 2, - FirstBlock = 2, - LastBlock = 2, - Partition = 0 - }, - new TapeFile - { - File = 3, - FirstBlock = 3, - LastBlock = 13, - Partition = 0 - }, - new TapeFile - { - File = 4, - FirstBlock = 14, - LastBlock = 49, - Partition = 0 - }, - new TapeFile - { - File = 5, - FirstBlock = 50, - LastBlock = 101, - Partition = 0 - } - } - }; - - public override TapePartition[][] _tapePartitions => new[] - { - // Nonstop-UX System V Release 4 B32 (Boot Tape).cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 1603, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 15484, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Online Software Upgrade).cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 14, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Operating System).cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 3297, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Optional Packages).cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 3151, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 817, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Reliable Ethernet).cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 6, - Number = 0 - } - }, - - // Nonstop-UX System V Release 4 B32 (Required Packages).cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 683, - Number = 0 - } - }, - - // OpenWindows.3.0.exabyte.cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 73524, - Number = 0 - } - }, - - // OpenWindows.3.0.Q150.cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 289, - Number = 0 - } - }, - - // OS.MP.4.1C.exabyte.cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 37586, - Number = 0 - } - }, - - // X.3.0.exabyte.cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 25045, - Number = 0 - } - }, - - // X.3.Q150.cptp.lz - new[] - { - new TapePartition - { - FirstBlock = 0, - LastBlock = 101, - Number = 0 - } - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "copytape"); public override IMediaImage _plugin => new DiscImages.CopyTape(); + + public override TapeImageTestExpected[] Tests => new[] + { + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Boot Tape).cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 1604, + SectorSize = 10240, + MD5 = "a6334d975523b3422fea522b0cc118a9", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 1603, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 1603, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Integrity SX25 VME V5.0+).cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 15485, + SectorSize = 512, + MD5 = "17ef78d9e5c53b976f530d4ca44223fd", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 15484, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 15484, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Online Software Upgrade).cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 15, + SectorSize = 32256, + MD5 = "76c0ae10f4ec70ef8681b212f02a71c8", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 14, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 14, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Operating System).cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 3298, + SectorSize = 32256, + MD5 = "e331c9d0ae7c25c81c6580bc9965e2d0", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 3297, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 3297, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Optional Packages).cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 3152, + SectorSize = 32256, + MD5 = "018c37c40f8df91ab9b098d643c9ae6c", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 3151, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 3151, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (OSF-Motif 1.2.4).cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 818, + SectorSize = 32256, + MD5 = "eb3ce36b2c3afeeec59e5b8ed802a393", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 817, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 817, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Reliable Ethernet).cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 7, + SectorSize = 32256, + MD5 = "b057656698a224187afb2bdbb8caf7f3", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 6, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 6, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "Nonstop-UX System V Release 4 B32 (Required Packages).cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 684, + SectorSize = 32256, + MD5 = "8e48e388e7094f3170065718ab618b53", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 683, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 683, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "OpenWindows.3.0.exabyte.cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 73525, + SectorSize = 1024, + MD5 = "8861f8c06a2e93ca5a81d729ad3e1de1", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 73524, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 0, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 1, + LastBlock = 164, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 165, + LastBlock = 2412, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 2413, + LastBlock = 5612, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 5613, + LastBlock = 73524, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "OpenWindows.3.0.Q150.cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 290, + SectorSize = 262144, + MD5 = "bfc402b23af0cf1ad22d9fb2ea29b58f", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 289, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 0, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 1, + LastBlock = 1, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 2, + LastBlock = 10, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 11, + LastBlock = 23, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 24, + LastBlock = 289, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "OS.MP.4.1C.exabyte.cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 37587, + SectorSize = 8192, + MD5 = "e4a3e2fe26c72ca025ac0c017ec73ee9", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 37586, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 1, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 2, + LastBlock = 3, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 4, + LastBlock = 6860, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 6861, + LastBlock = 13773, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 13774, + LastBlock = 20263, + Partition = 0 + }, + new TapeFile + { + File = 5, + FirstBlock = 20264, + LastBlock = 20299, + Partition = 0 + }, + new TapeFile + { + File = 6, + FirstBlock = 20300, + LastBlock = 22603, + Partition = 0 + }, + new TapeFile + { + File = 7, + FirstBlock = 22604, + LastBlock = 23472, + Partition = 0 + }, + new TapeFile + { + File = 8, + FirstBlock = 23473, + LastBlock = 24946, + Partition = 0 + }, + new TapeFile + { + File = 9, + FirstBlock = 24947, + LastBlock = 26436, + Partition = 0 + }, + new TapeFile + { + File = 10, + FirstBlock = 26437, + LastBlock = 27720, + Partition = 0 + }, + new TapeFile + { + File = 11, + FirstBlock = 27721, + LastBlock = 31922, + Partition = 0 + }, + new TapeFile + { + File = 12, + FirstBlock = 31923, + LastBlock = 32283, + Partition = 0 + }, + new TapeFile + { + File = 13, + FirstBlock = 32284, + LastBlock = 32675, + Partition = 0 + }, + new TapeFile + { + File = 14, + FirstBlock = 32676, + LastBlock = 33549, + Partition = 0 + }, + new TapeFile + { + File = 15, + FirstBlock = 33550, + LastBlock = 33686, + Partition = 0 + }, + new TapeFile + { + File = 16, + FirstBlock = 33687, + LastBlock = 33909, + Partition = 0 + }, + new TapeFile + { + File = 17, + FirstBlock = 33910, + LastBlock = 33949, + Partition = 0 + }, + new TapeFile + { + File = 18, + FirstBlock = 33950, + LastBlock = 34180, + Partition = 0 + }, + new TapeFile + { + File = 19, + FirstBlock = 34181, + LastBlock = 34573, + Partition = 0 + }, + new TapeFile + { + File = 20, + FirstBlock = 34574, + LastBlock = 35072, + Partition = 0 + }, + new TapeFile + { + File = 21, + FirstBlock = 35073, + LastBlock = 35163, + Partition = 0 + }, + new TapeFile + { + File = 22, + FirstBlock = 35164, + LastBlock = 35908, + Partition = 0 + }, + new TapeFile + { + File = 23, + FirstBlock = 35909, + LastBlock = 35984, + Partition = 0 + }, + new TapeFile + { + File = 24, + FirstBlock = 35985, + LastBlock = 36098, + Partition = 0 + }, + new TapeFile + { + File = 25, + FirstBlock = 36099, + LastBlock = 36270, + Partition = 0 + }, + new TapeFile + { + File = 26, + FirstBlock = 36271, + LastBlock = 36276, + Partition = 0 + }, + new TapeFile + { + File = 27, + FirstBlock = 36277, + LastBlock = 36647, + Partition = 0 + }, + new TapeFile + { + File = 28, + FirstBlock = 36648, + LastBlock = 37111, + Partition = 0 + }, + new TapeFile + { + File = 29, + FirstBlock = 37112, + LastBlock = 37583, + Partition = 0 + }, + new TapeFile + { + File = 30, + FirstBlock = 37584, + LastBlock = 37584, + Partition = 0 + }, + new TapeFile + { + File = 31, + FirstBlock = 37585, + LastBlock = 37585, + Partition = 0 + }, + new TapeFile + { + File = 32, + FirstBlock = 37586, + LastBlock = 37586, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "X.3.0.exabyte.cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 25046, + SectorSize = 1024, + MD5 = "e625c03d7493dc22fe49f91f731446e8", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 25045, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 0, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 1, + LastBlock = 61, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 62, + LastBlock = 149, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 150, + LastBlock = 2781, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 2782, + LastBlock = 11885, + Partition = 0 + }, + new TapeFile + { + File = 5, + FirstBlock = 11886, + LastBlock = 25045, + Partition = 0 + } + } + }, + new TapeImageTestExpected + { + TestFile = "X.3.Q150.cptp.lz", + MediaType = MediaType.UnknownTape, + Sectors = 102, + SectorSize = 262144, + MD5 = "198464b1daf8e674debf8eda0fcbf016", + Partitions = new[] + { + new TapePartition + { + FirstBlock = 0, + LastBlock = 101, + Number = 0 + } + }, + Files = new[] + { + new TapeFile + { + File = 0, + FirstBlock = 0, + LastBlock = 0, + Partition = 0 + }, + new TapeFile + { + File = 1, + FirstBlock = 1, + LastBlock = 1, + Partition = 0 + }, + new TapeFile + { + File = 2, + FirstBlock = 2, + LastBlock = 2, + Partition = 0 + }, + new TapeFile + { + File = 3, + FirstBlock = 3, + LastBlock = 13, + Partition = 0 + }, + new TapeFile + { + File = 4, + FirstBlock = 14, + LastBlock = 49, + Partition = 0 + }, + new TapeFile + { + File = 5, + FirstBlock = 50, + LastBlock = 101, + Partition = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/D88.cs b/Aaru.Tests/Images/D88.cs index a6b540e07..948874b37 100644 --- a/Aaru.Tests/Images/D88.cs +++ b/Aaru.Tests/Images/D88.cs @@ -36,51 +36,162 @@ namespace Aaru.Tests.Images [TestFixture] public class D88 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "1942 (1987)(ASCII)(JP).d77.lz", "'Ashe (1988)(Quasar)(Disk 4 of 4)(User Disk).d88.lz", - "Crimsin (1988)(Xtalsoft)(Disk 3 of 3).d88.lz", "Dragon Slayer (1986)(Falcom - Login)(JP).d88.lz", - "D-Side - Lagrange L-2 Part II (1986)(Compaq)(JP).d88.lz", - "File Master FM, The v1.01 (1986)(Kyoto Media)(JP).d77.lz", "Gandhara (1987)(Enix)(JP).d88.lz", - "Might & Magic (198x)(Star Craft)(Disk 1 of 3)(Disk A).d88.lz", "msdos33d_md2dd.d88.lz", - "msdos33d_md2hd.d88.lz", "msdos50_epson_md2dd.d88.lz", "msdos50_epson_md2hd.d88.lz", "msdos50_md2dd.d88.lz", - "msdos50_md2hd.d88.lz", "msdos62_md2dd.d88.lz", "msdos62_md2hd.d88.lz", - "R-Type (1988)(Irem)(Disk 1 of 2).d88.lz", "Towns System Software v1.1L30 (1992)(Fujitsu)(JP).d88.lz", - "Visual Instrument Player (198x)(Kamiya)(JP)(Disk 1 of 2).d88.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - 1280, 1280, 1280, 411, 1440, 1280, 1280, 4033, 1440, 1232, 1440, 1232, 1440, 1232, 1440, 1232, 1284, 1232, - 1280 - }; - - public override uint[] _sectorSize => new uint[] - { - 256, 256, 256, 256, 256, 256, 256, 128, 512, 1024, 512, 1024, 512, 1024, 512, 1024, 1024, 1024, 256 - }; - - // TODO: Add "unknown" media types - public override MediaType[] _mediaTypes => new[] - { - MediaType.NEC_525_SS, MediaType.NEC_525_SS, MediaType.NEC_525_SS, MediaType.Unknown, MediaType.Unknown, - MediaType.NEC_525_SS, MediaType.NEC_525_SS, MediaType.Unknown, MediaType.Unknown, MediaType.NEC_525_HD, - MediaType.Unknown, MediaType.NEC_525_HD, MediaType.Unknown, MediaType.NEC_525_HD, MediaType.Unknown, - MediaType.NEC_525_HD, MediaType.Unknown, MediaType.NEC_525_HD, MediaType.NEC_525_SS - }; - - public override string[] _md5S => new[] - { - "a4103c39cd7fd9fc3de8418dfcf22364", "b948048c03e0b3d34d77f5c9dced0b41", "f91152fab791d4dc0677a289d90478a5", - "39b01df04a6312b09f1b83c9f3a46b22", "ef775ec1f41b8b725ea83ec8c5ca04e2", "5c2b22f824524cd6c539aaeb2ecb84cd", - "6bddf3dd32877f7b552cbf9da6b89f76", "003cd0292879733b6eab7ca79ab9cfeb", "acb738a5a945e4e2ba1504a14a529933", - "106068dbdf13803979c7bbb63612f43d", "be916f25847b9cfc9776d88cc150ae7e", "ccc7f98e216db35c2b7a08634a9f3e20", - "7a3332e82b0fe8c5673a2615f6c0b9a2", "62f5be96a8b8ccab9ee4aebf557cfcf7", "07fb4c225d4b5a2e2a1046ae66fc153c", - "1f73980e45a384bed331eaa33c9ef65b", "9d675e5147b55cee0b2bc05476eef825", "bb48546ced9c61462e1c89dca4987143", - "c7df67f4e66dad658fe856d3c8b36c7a" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "D88"); public override IMediaImage _plugin => new DiscImages.D88(); + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "1942 (1987)(ASCII)(JP).d77.lz", + MediaType = MediaType.NEC_525_SS, + Sectors = 1280, + SectorSize = 256, + MD5 = "a4103c39cd7fd9fc3de8418dfcf22364" + }, + new BlockImageTestExpected + { + TestFile = "'Ashe (1988)(Quasar)(Disk 4 of 4)(User Disk).d88.lz", + MediaType = MediaType.NEC_525_SS, + Sectors = 1280, + SectorSize = 256, + MD5 = "b948048c03e0b3d34d77f5c9dced0b41" + }, + new BlockImageTestExpected + { + TestFile = "Crimsin (1988)(Xtalsoft)(Disk 3 of 3).d88.lz", + MediaType = MediaType.NEC_525_SS, + Sectors = 1280, + SectorSize = 256, + MD5 = "f91152fab791d4dc0677a289d90478a5" + }, + new BlockImageTestExpected + { + TestFile = "Dragon Slayer (1986)(Falcom - Login)(JP).d88.lz", + MediaType = MediaType.Unknown, + Sectors = 411, + SectorSize = 256, + MD5 = "39b01df04a6312b09f1b83c9f3a46b22" + }, + new BlockImageTestExpected + { + TestFile = "D-Side - Lagrange L-2 Part II (1986)(Compaq)(JP).d88.lz", + MediaType = MediaType.Unknown, + Sectors = 1440, + SectorSize = 256, + MD5 = "ef775ec1f41b8b725ea83ec8c5ca04e2" + }, + new BlockImageTestExpected + { + TestFile = "File Master FM, The v1.01 (1986)(Kyoto Media)(JP).d77.lz", + MediaType = MediaType.NEC_525_SS, + Sectors = 1280, + SectorSize = 256, + MD5 = "5c2b22f824524cd6c539aaeb2ecb84cd" + }, + new BlockImageTestExpected + { + TestFile = "Gandhara (1987)(Enix)(JP).d88.lz", + MediaType = MediaType.NEC_525_SS, + Sectors = 1280, + SectorSize = 256, + MD5 = "6bddf3dd32877f7b552cbf9da6b89f76" + }, + new BlockImageTestExpected + { + TestFile = "Might & Magic (198x)(Star Craft)(Disk 1 of 3)(Disk A).d88.lz", + MediaType = MediaType.Unknown, + Sectors = 4033, + SectorSize = 128, + MD5 = "003cd0292879733b6eab7ca79ab9cfeb" + }, + new BlockImageTestExpected + { + TestFile = "msdos33d_md2dd.d88.lz", + MediaType = MediaType.Unknown, + Sectors = 1440, + SectorSize = 512, + MD5 = "acb738a5a945e4e2ba1504a14a529933" + }, + new BlockImageTestExpected + { + TestFile = "msdos33d_md2hd.d88.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "106068dbdf13803979c7bbb63612f43d" + }, + new BlockImageTestExpected + { + TestFile = "msdos50_epson_md2dd.d88.lz", + MediaType = MediaType.Unknown, + Sectors = 1440, + SectorSize = 512, + MD5 = "be916f25847b9cfc9776d88cc150ae7e" + }, + new BlockImageTestExpected + { + TestFile = "msdos50_epson_md2hd.d88.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "ccc7f98e216db35c2b7a08634a9f3e20" + }, + new BlockImageTestExpected + { + TestFile = "msdos50_md2dd.d88.lz", + MediaType = MediaType.Unknown, + Sectors = 1440, + SectorSize = 512, + MD5 = "7a3332e82b0fe8c5673a2615f6c0b9a2" + }, + new BlockImageTestExpected + { + TestFile = "msdos50_md2hd.d88.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "62f5be96a8b8ccab9ee4aebf557cfcf7" + }, + new BlockImageTestExpected + { + TestFile = "msdos62_md2dd.d88.lz", + MediaType = MediaType.Unknown, + Sectors = 1440, + SectorSize = 512, + MD5 = "07fb4c225d4b5a2e2a1046ae66fc153c" + }, + new BlockImageTestExpected + { + TestFile = "msdos62_md2hd.d88.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "1f73980e45a384bed331eaa33c9ef65b" + }, + new BlockImageTestExpected + { + TestFile = "R-Type (1988)(Irem)(Disk 1 of 2).d88.lz", + MediaType = MediaType.Unknown, + Sectors = 1284, + SectorSize = 1024, + MD5 = "9d675e5147b55cee0b2bc05476eef825" + }, + new BlockImageTestExpected + { + TestFile = "Towns System Software v1.1L30 (1992)(Fujitsu)(JP).d88.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "bb48546ced9c61462e1c89dca4987143" + }, + new BlockImageTestExpected + { + TestFile = "Visual Instrument Player (198x)(Kamiya)(JP)(Disk 1 of 2).d88.lz", + MediaType = MediaType.NEC_525_SS, + Sectors = 1280, + SectorSize = 256, + MD5 = "c7df67f4e66dad658fe856d3c8b36c7a" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DART.cs b/Aaru.Tests/Images/DART.cs index cbc98304f..d15c4e56d 100644 --- a/Aaru.Tests/Images/DART.cs +++ b/Aaru.Tests/Images/DART.cs @@ -36,36 +36,75 @@ namespace Aaru.Tests.Images [TestFixture] public class Dart : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "mf1dd_hfs_best.dart.lz", "mf1dd_hfs_fast.dart.lz", "mf1dd_mfs_best.dart.lz", "mf1dd_mfs_fast.dart.lz", - "mf2dd_hfs_best.dart.lz", "mf2dd_hfs_fast.dart.lz", "mf2dd_mfs_best.dart.lz", "mf2dd_mfs_fast.dart.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - 800, 800, 800, 800, 1600, 1600, 1600, 1600 - }; - - public override uint[] _sectorSize => new uint[] - { - 512, 512, 512, 512, 512, 512, 512, 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - MediaType.AppleSonySS, MediaType.AppleSonySS, MediaType.AppleSonySS, MediaType.AppleSonySS, - MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.AppleSonyDS - }; - - public override string[] _md5S => new[] - { - "eae3a95671d077deb702b3549a769f56", "eae3a95671d077deb702b3549a769f56", "c5d92544c3e78b7f0a9b4baaa9a64eec", - "c5d92544c3e78b7f0a9b4baaa9a64eec", "a99744348a70b62b57bce2dec9132ced", "a99744348a70b62b57bce2dec9132ced", - "93e71b9ecdb39d3ec9245b4f451856d4", "93e71b9ecdb39d3ec9245b4f451856d4" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DART"); public override IMediaImage _plugin => new DiscImages.Dart(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "mf1dd_hfs_best.dart.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "eae3a95671d077deb702b3549a769f56" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_hfs_fast.dart.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "eae3a95671d077deb702b3549a769f56" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_mfs_best.dart.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "c5d92544c3e78b7f0a9b4baaa9a64eec" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_mfs_fast.dart.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "c5d92544c3e78b7f0a9b4baaa9a64eec" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_hfs_best.dart.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a99744348a70b62b57bce2dec9132ced" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_hfs_fast.dart.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a99744348a70b62b57bce2dec9132ced" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_mfs_best.dart.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "93e71b9ecdb39d3ec9245b4f451856d4" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_mfs_fast.dart.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "93e71b9ecdb39d3ec9245b4f451856d4" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiscJuggler.cs b/Aaru.Tests/Images/DiscJuggler.cs index 4852a63f1..d560864a0 100644 --- a/Aaru.Tests/Images/DiscJuggler.cs +++ b/Aaru.Tests/Images/DiscJuggler.cs @@ -36,1934 +36,1542 @@ namespace Aaru.Tests.Images [TestFixture] public class DiscJuggler : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "jaguarcd.cdi", "make_audiocd.cdi", "make_data_mode1_joliet.cdi", "make_data_mode2_joliet.cdi", - "make_dvd.cdi", "make_enhancedcd.cdi", "make_mixed_mode.cdi", "make_multisession_dvd.cdi", - "make_pangram_mode1_joliet.cdi", "make_pangram_mode2_joliet.cdi", "pcengine.cdi", "pcfx.cdi", - "report_audiocd.cdi", "report_cdr.cdi", "report_cdrom.cdi", "report_cdrw_2x.cdi", "report_dvdram_v1.cdi", - "report_dvdram_v2.cdi", "report_dvd-r.cdi", "report_dvd+r-dl.cdi", "report_dvdrom.cdi", "report_dvd+rw.cdi", - "report_dvd-rw.cdi", "report_enhancedcd.cdi", "test_audiocd_cdtext.cdi", "test_data_track_as_audio.cdi", - "test_data_track_as_audio_fixed_sub.cdi", "test_disc_starts_at_track2.cdi", "test_enhancedcd.cdi", - "test_incd_udf200_finalized.cdi", "test_karaoke_multi_sampler.cdi", "test_multiple_indexes.cdi", - "test_multisession.cdi", "test_multisession_dvd+r.cdi", "test_multisession_dvd-r.cdi", - "test_track111_in_session2.cdi", "test_track111_in_session2_fixed_sub.cdi", "test_track2_inside_track1.cdi", - "test_videocd.cdi" - }; - - public override ulong[] _sectors => new ulong[] - { - // jaguarcd.cdi - 230845, - - // make_audiocd.cdi - 0, - - // make_data_mode1_joliet.cdi - 0, - - // make_data_mode2_joliet.cdi - 0, - - // make_dvd.cdi - 84896, - - // make_enhancedcd.cdi - 0, - - // make_mixed_mode.cdi - 0, - - // make_multisession_dvd.cdi - 0, - - // make_pangram_mode1_joliet.cdi - 0, - - // make_pangram_mode2_joliet.cdi - 0, - - // pcengine.cdi - 160356, - - // pcfx.cdi - 245930, - - // report_audiocd.cdi - 245273, - - // report_cdr.cdi - 254265, - - // report_cdrom.cdi - 254265, - - // report_cdrw_2x.cdi - 308224, - - // report_dvdram_v1.cdi - 1218961, - - // report_dvdram_v2.cdi - 2236705, - - // report_dvd-r.cdi - 2146368, - - // report_dvd+r-dl.cdi - 3455936, - - // report_dvdrom.cdi - 2146368, - - // report_dvd+rw.cdi - 2295104, - - // report_dvd-rw.cdi - 2146368, - - // report_enhancedcd.cdi - 291916, - - // test_audiocd_cdtext.cdi - 277696, - - // test_data_track_as_audio.cdi - 50985, - - // test_data_track_as_audio_fixed_sub.cdi - 50985, - - // test_disc_starts_at_track2.cdi - 50985, - - // test_enhancedcd.cdi - 47806, - - // test_incd_udf200_finalized.cdi - 350134, - - // test_karaoke_multi_sampler.cdi - 329008, - - // test_multiple_indexes.cdi - 65536, - - // test_multisession.cdi - 25968, - - // test_multisession_dvd+r.cdi - 230624, - - // test_multisession_dvd-r.cdi - 257264, - - // test_track111_in_session2.cdi - 0, - - // test_track111_in_session2_fixed_sub.cdi - 0, - - // test_track2_inside_track1.cdi - 0, - - // test_videocd.cdi - 48644 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // jaguarcd.cdi - MediaType.CDDA, - - // make_audiocd.cdi - MediaType.CDDA, - - // make_data_mode1_joliet.cdi - MediaType.CDDA, - - // make_data_mode2_joliet.cdi - MediaType.CDDA, - - // make_dvd.cdi - MediaType.DVDROM, - - // make_enhancedcd.cdi - MediaType.CDDA, - - // make_mixed_mode.cdi - MediaType.CDDA, - - // make_multisession_dvd.cdi - MediaType.CDDA, - - // make_pangram_mode1_joliet.cdi - MediaType.CDDA, - - // make_pangram_mode2_joliet.cdi - MediaType.CDDA, - - // pcengine.cdi - MediaType.CD, - - // pcfx.cdi - MediaType.CD, - - // report_audiocd.cdi - MediaType.CDDA, - - // report_cdr.cdi - MediaType.CDROM, - - // report_cdrom.cdi - MediaType.CDROM, - - // report_cdrw_2x.cdi - MediaType.CDROM, - - // report_dvdram_v1.cdi - MediaType.DVDROM, - - // report_dvdram_v2.cdi - MediaType.DVDROM, - - // report_dvd-r.cdi - MediaType.DVDROM, - - // report_dvd+r-dl.cdi - MediaType.DVDROM, - - // report_dvdrom.cdi - MediaType.DVDROM, - - // report_dvd+rw.cdi - MediaType.DVDROM, - - // report_dvd-rw.cdi - MediaType.DVDROM, - - // report_enhancedcd.cdi - MediaType.CDPLUS, - - // test_audiocd_cdtext.cdi - MediaType.CDDA, - - // test_data_track_as_audio.cdi - MediaType.CDDA, - - // test_data_track_as_audio_fixed_sub.cdi - MediaType.CDROMXA, - - // test_disc_starts_at_track2.cdi - MediaType.CDROMXA, - - // test_enhancedcd.cdi - MediaType.CDPLUS, - - // test_incd_udf200_finalized.cdi - MediaType.CDROMXA, - - // test_karaoke_multi_sampler.cdi - MediaType.CDROMXA, - - // test_multiple_indexes.cdi - MediaType.CDDA, - - // test_multisession.cdi - MediaType.CDROMXA, - - // test_multisession_dvd+r.cdi - MediaType.DVDROM, - - // test_multisession_dvd-r.cdi - MediaType.DVDROM, - - // test_track111_in_session2.cdi - MediaType.CDDA, - - // test_track111_in_session2_fixed_sub.cdi - MediaType.CDDA, - - // test_track2_inside_track1.cdi - MediaType.CDDA, - - // test_videocd.cdi - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // jaguarcd.cdi - "e234467539490be2db99d643b1d4e905", - - // make_audiocd.cdi - "UNKNOWN", - - // make_data_mode1_joliet.cdi - "UNKNOWN", - - // make_data_mode2_joliet.cdi - "UNKNOWN", - - // make_dvd.cdi - "5240b794f12174da73915e8c1f38b6a4", - - // make_enhancedcd.cdi - "UNKNOWN", - - // make_mixed_mode.cdi - "UNKNOWN", - - // make_multisession_dvd.cdi - "UNKNOWN", - - // make_pangram_mode1_joliet.cdi - "UNKNOWN", - - // make_pangram_mode2_joliet.cdi - "UNKNOWN", - - // pcengine.cdi - "b7947d8d77c2ede5199293ee2ac387ed", - - // pcfx.cdi - "2e872a5cfa43959183677398ede15c08", - - // report_audiocd.cdi - "UNKNOWN", - - // report_cdr.cdi - "UNKNOWN", - - // report_cdrom.cdi - "UNKNOWN", - - // report_cdrw_2x.cdi - "UNKNOWN", - - // report_dvdram_v1.cdi - "b04c88635c5d493c250c289964018a7a", - - // report_dvdram_v2.cdi - "c0823b070513d02c9f272986f23e74e8", - - // report_dvd-r.cdi - "106f141400355476b499213f36a363f9", - - // report_dvd+r-dl.cdi - "692148a01b4204160b088141fb52bd70", - - // report_dvdrom.cdi - "106f141400355476b499213f36a363f9", - - // report_dvd+rw.cdi - "759e9c19389aee07f88a994132b6f8d9", - - // report_dvd-rw.cdi - "106f141400355476b499213f36a363f9", - - // report_enhancedcd.cdi - "UNKNOWN", - - // test_audiocd_cdtext.cdi - "52d7a2793b7600dc94d007f5e7dfd942", - - // test_data_track_as_audio.cdi - "UNKNOWN", - - // test_data_track_as_audio_fixed_sub.cdi - "UNKNOWN", - - // test_disc_starts_at_track2.cdi - "UNKNOWN", - - // test_enhancedcd.cdi - "31054e6b8f4d51fe502ac340490bcd46", - - // test_incd_udf200_finalized.cdi - "d976a8d0131bf48926542160bb41fc13", - - // test_karaoke_multi_sampler.cdi - "UNKNOWN", - - // test_multiple_indexes.cdi - "9315c6fc3cf5371ae3795df2b624bd5e", - - // test_multisession.cdi - "46e43ed4712e5ae61b653b4d19f27080", - - // test_multisession_dvd+r.cdi - "020993315e49ab0d36bc7248819162ea", - - // test_multisession_dvd-r.cdi - "dff8f2107a4ea9633a88ce38ff609b8e", - - // test_track111_in_session2.cdi - "UNKNOWN", - - // test_track111_in_session2_fixed_sub.cdi - "UNKNOWN", - - // test_track2_inside_track1.cdi - "UNKNOWN", - - // test_videocd.cdi - "e5b596e73f46f646a51e1315b59e7cb9" - }; - - public override string[] _longMd5S => new[] - { - // jaguarcd.cdi - "e234467539490be2db99d643b1d4e905", - - // make_audiocd.cdi - "UNKNOWN", - - // make_data_mode1_joliet.cdi - "UNKNOWN", - - // make_data_mode2_joliet.cdi - "UNKNOWN", - - // make_dvd.cdi - "5240b794f12174da73915e8c1f38b6a4", - - // make_enhancedcd.cdi - "UNKNOWN", - - // make_mixed_mode.cdi - "UNKNOWN", - - // make_multisession_dvd.cdi - "UNKNOWN", - - // make_pangram_mode1_joliet.cdi - "UNKNOWN", - - // make_pangram_mode2_joliet.cdi - "UNKNOWN", - - // pcengine.cdi - "9fdbcb9827f0bbafcd886447b386bc58", - - // pcfx.cdi - "a8939e0fd28ee0bd876101b218af3572", - - // report_audiocd.cdi - "UNKNOWN", - - // report_cdr.cdi - "UNKNOWN", - - // report_cdrom.cdi - "UNKNOWN", - - // report_cdrw_2x.cdi - "UNKNOWN", - - // report_dvdram_v1.cdi - "b04c88635c5d493c250c289964018a7a", - - // report_dvdram_v2.cdi - "c0823b070513d02c9f272986f23e74e8", - - // report_dvd-r.cdi - "106f141400355476b499213f36a363f9", - - // report_dvd+r-dl.cdi - "692148a01b4204160b088141fb52bd70", - - // report_dvdrom.cdi - "106f141400355476b499213f36a363f9", - - // report_dvd+rw.cdi - "759e9c19389aee07f88a994132b6f8d9", - - // report_dvd-rw.cdi - "106f141400355476b499213f36a363f9", - - // report_enhancedcd.cdi - "UNKNOWN", - - // test_audiocd_cdtext.cdi - "52d7a2793b7600dc94d007f5e7dfd942", - - // test_data_track_as_audio.cdi - "UNKNOWN", - - // test_data_track_as_audio_fixed_sub.cdi - "UNKNOWN", - - // test_disc_starts_at_track2.cdi - "UNKNOWN", - - // test_enhancedcd.cdi - "2fc4b8966350322ed3fd553b9e628164", - - // test_incd_udf200_finalized.cdi - "cd55978d00f1bc127a0e652259ba2418", - - // test_karaoke_multi_sampler.cdi - "UNKNOWN", - - // test_multiple_indexes.cdi - "9315c6fc3cf5371ae3795df2b624bd5e", - - // test_multisession.cdi - "cac33e71b4693b2902f086a0a433129d", - - // test_multisession_dvd+r.cdi - "020993315e49ab0d36bc7248819162ea", - - // test_multisession_dvd-r.cdi - "dff8f2107a4ea9633a88ce38ff609b8e", - - // test_track111_in_session2.cdi - "UNKNOWN", - - // test_track111_in_session2_fixed_sub.cdi - "UNKNOWN", - - // test_track2_inside_track1.cdi - "UNKNOWN", - - // test_videocd.cdi - "acd1a8de676ebe6feeb9d6964ccd63ea" - }; - - public override string[] _subchannelMd5S => new[] - { - // jaguarcd.cdi - "d02a5fb43012a1f178a540d0e054d183", - - // make_audiocd.cdi - "UNKNOWN", - - // make_data_mode1_joliet.cdi - "UNKNOWN", - - // make_data_mode2_joliet.cdi - "UNKNOWN", - - // make_dvd.cdi - null, - - // make_enhancedcd.cdi - "UNKNOWN", - - // make_mixed_mode.cdi - "UNKNOWN", - - // make_multisession_dvd.cdi - "UNKNOWN", - - // make_pangram_mode1_joliet.cdi - "UNKNOWN", - - // make_pangram_mode2_joliet.cdi - "UNKNOWN", - - // pcengine.cdi - "19566671874ef21e4c4ba4de5fd5a7ad", - - // pcfx.cdi - null, - - // report_audiocd.cdi - "UNKNOWN", - - // report_cdr.cdi - "UNKNOWN", - - // report_cdrom.cdi - "UNKNOWN", - - // report_cdrw_2x.cdi - "UNKNOWN", - - // report_dvdram_v1.cdi - null, - - // report_dvdram_v2.cdi - null, - - // report_dvd-r.cdi - null, - - // report_dvd+r-dl.cdi - null, - - // report_dvdrom.cdi - null, - - // report_dvd+rw.cdi - null, - - // report_dvd-rw.cdi - null, - - // report_enhancedcd.cdi - "UNKNOWN", - - // test_audiocd_cdtext.cdi - null, - - // test_data_track_as_audio.cdi - "UNKNOWN", - - // test_data_track_as_audio_fixed_sub.cdi - "UNKNOWN", - - // test_disc_starts_at_track2.cdi - "UNKNOWN", - - // test_enhancedcd.cdi - null, - - // test_incd_udf200_finalized.cdi - null, - - // test_karaoke_multi_sampler.cdi - "UNKNOWN", - - // test_multiple_indexes.cdi - null, - - // test_multisession.cdi - null, - - // test_multisession_dvd+r.cdi - null, - - // test_multisession_dvd-r.cdi - null, - - // test_track111_in_session2.cdi - "UNKNOWN", - - // test_track111_in_session2_fixed_sub.cdi - "UNKNOWN", - - // test_track2_inside_track1.cdi - "UNKNOWN", - - // test_videocd.cdi - null - }; - - public override int[] _tracks => new[] - { - // jaguarcd.cd - 11, - - // make_audiocd.cdi - 0, - - // make_data_mode1_joliet.cdi - 0, - - // make_data_mode2_joliet.cdi - 0, - - // make_dvd.cdi - 1, - - // make_enhancedcd.cdi - 0, - - // make_mixed_mode.cdi - 0, - - // make_multisession_dvd.cdi - 0, - - // make_pangram_mode1_joliet.cdi - 0, - - // make_pangram_mode2_joliet.cdi - 0, - - // pcengine.cdi - 16, - - // pcfx.cdi - 8, - - // report_audiocd.cdi - 14, - - // report_cdr.cdi - 1, - - // report_cdrom.cdi - 1, - - // report_cdrw_2x.cdi - 1, - - // report_dvdram_v1.cdi - 1, - - // report_dvdram_v2.cdi - 1, - - // report_dvd-r.cdi - 1, - - // report_dvd+r-dl.cdi - 1, - - // report_dvdrom.cdi - 1, - - // report_dvd+rw.cdi - 1, - - // report_dvd-rw.cdi - 1, - - // report_enhancedcd.cdi - 14, - - // test_audiocd_cdtext.cdi - 11, - - // test_data_track_as_audio.cdi - 2, - - // test_data_track_as_audio_fixed_sub.cdi - 2, - - // test_disc_starts_at_track2.cdi - 2, - - // test_enhancedcd.cdi - 3, - - // test_incd_udf200_finalized.cdi - 1, - - // test_karaoke_multi_sampler.cdi - 16, - - // test_multiple_indexes.cdi - 5, - - // test_multisession.cdi - 4, - - // test_multisession_dvd+r.cdi - 1, - - // test_multisession_dvd-r.cdi - 1, - - // test_track111_in_session2.cdi - 0, - - // test_track111_in_session2_fixed_sub.cdi - 0, - - // test_track2_inside_track1.cdi - 0, - - // test_videocd.cdi - 2 - }; - - public override int[][] _trackSessions => new[] - { - // jaguarcd.cdi - new[] - { - 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // make_audiocd.cdi - new[] - { - 1 - }, - - // make_data_mode1_joliet.cdi - new[] - { - 1 - }, - - // make_data_mode2_joliet.cdi - new[] - { - 1 - }, - - // make_dvd.cdi - new[] - { - 1 - }, - - // make_enhancedcd.cdi - new[] - { - 1 - }, - - // make_mixed_mode.cdi - new[] - { - 1 - }, - - // make_multisession_dvd.cdi - new[] - { - 1 - }, - - // make_pangram_mode1_joliet.cdi - new[] - { - 1 - }, - - // make_pangram_mode2_joliet.cdi - new[] - { - 1 - }, - - // pcengine.cdi - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.cdi - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.cdi - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.cdi - new[] - { - 1 - }, - - // report_cdrom.cdi - new[] - { - 1 - }, - - // report_cdrw_2x.cdi - new[] - { - 1 - }, - - // report_dvdram_v1.cdi - new[] - { - 1 - }, - - // report_dvdram_v2.cdi - new[] - { - 1 - }, - - // report_dvd-r.cdi - new[] - { - 1 - }, - - // report_dvd+r-dl.cdi - new[] - { - 1 - }, - - // report_dvdrom.cdi - new[] - { - 1 - }, - - // report_dvd+rw.cdi - new[] - { - 1 - }, - - // report_dvd-rw.cdi - new[] - { - 1 - }, - - // report_enhancedcd.cdi - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_audiocd_cdtext.cdi - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_data_track_as_audio.cdi - new[] - { - 1, 2 - }, - - // test_data_track_as_audio_fixed_sub.cdi - new[] - { - 1, 2 - }, - - // test_disc_starts_at_track2.cdi - new[] - { - 1, 2 - }, - - // test_enhancedcd.cdi - new[] - { - 1, 1, 2 - }, - - // test_incd_udf200_finalized.cdi - new[] - { - 1 - }, - - // test_karaoke_multi_sampler.cdi - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.cdi - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.cdi - new[] - { - 1, 2, 3, 4 - }, - - // test_multisession_dvd+r.cdi - new[] - { - 1 - }, - - // test_multisession_dvd-r.cdi - new[] - { - 1 - }, - - // test_track111_in_session2.cdi - new[] - { - 1 - }, - - // test_track111_in_session2_fixed_sub.cdi - new[] - { - 1 - }, - - // test_track2_inside_track1.cdi - new[] - { - 1 - }, - - // test_videocd.cdi - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // jaguarcd.cdi - new ulong[] - { - 0, 27490, 28088, 78742, 99905, 133054, 160759, 181317, 201875, 222433, 242991 - }, - - // make_audiocd.cdi - new ulong[] - { - 1 - }, - - // make_data_mode1_joliet.cdi - new ulong[] - { - 1 - }, - - // make_data_mode2_joliet.cdi - new ulong[] - { - 1 - }, - - // make_dvd.cdi - new ulong[] - { - 0 - }, - - // make_enhancedcd.cdi - new ulong[] - { - 1 - }, - - // make_mixed_mode.cdi - new ulong[] - { - 1 - }, - - // make_multisession_dvd.cdi - new ulong[] - { - 1 - }, - - // make_pangram_mode1_joliet.cdi - new ulong[] - { - 1 - }, - - // make_pangram_mode2_joliet.cdi - new ulong[] - { - 1 - }, - - // pcengine.cdi - new ulong[] - { - 0, 3365, 38464, 47217, 53501, 61819, 68563, 75397, 83130, 86481, 91267, 99274, 106693, 112238, 120270, - 126004 - }, - - // pcfx.cdi - new ulong[] - { - 0, 4245, 4759, 5791, 41909, 220645, 225646, 235498 - }, - - // report_audiocd.cdi - new ulong[] - { - 0, 16399, 30051, 47800, 63164, 78775, 94582, 116975, 136016, 153922, 170601, 186389, 201649, 224299 - }, - - // report_cdr.cdi - new ulong[] - { - 0 - }, - - // report_cdrom.cdi - new ulong[] - { - 0 - }, - - // report_cdrw_2x.cdi - new ulong[] - { - 0 - }, - - // report_dvdram_v1.cdi - new ulong[] - { - 0 - }, - - // report_dvdram_v2.cdi - new ulong[] - { - 0 - }, - - // report_dvd-r.cdi - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.cdi - new ulong[] - { - 0 - }, - - // report_dvdrom.cdi - new ulong[] - { - 0 - }, - - // report_dvd+rw.cdi - new ulong[] - { - 0 - }, - - // report_dvd-rw.cdi - new ulong[] - { - 0 - }, - - // report_enhancedcd.cdi - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234030 - }, - - // test_audiocd_cdtext.cdi - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_data_track_as_audio.cdi - new ulong[] - { - 0, 36789 - }, - - // test_data_track_as_audio_fixed_sub.cdi - new ulong[] - { - 0, 36789 - }, - - // test_disc_starts_at_track2.cdi - new ulong[] - { - 0, 36789 - }, - - // test_enhancedcd.cdi - new ulong[] - { - 0, 14405, 40203 - }, - - // test_incd_udf200_finalized.cdi - new ulong[] - { - 0 - }, - - // test_karaoke_multi_sampler.cdi - new ulong[] - { - 0, 1737, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.cdi - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession.cdi - new ulong[] - { - 0, 19383, 32710, 45228 - }, - - // test_multisession_dvd+r.cdi - new ulong[] - { - 0 - }, - - // test_multisession_dvd-r.cdi - new ulong[] - { - 0 - }, - - // test_track111_in_session2.cdi - new ulong[] - { - 1 - }, - - // test_track111_in_session2_fixed_sub.cdi - new ulong[] - { - 1 - }, - - // test_track2_inside_track1.cdi - new ulong[] - { - 1 - }, - - // test_videocd.cdi - new ulong[] - { - 0, 1102 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // jaguarcd.cdi - new ulong[] - { - 16239, 28087, 78741, 99904, 133053, 160758, 181316, 201874, 222432, 242990, 243586 - }, - - // make_audiocd.cdi - new ulong[] - { - 1 - }, - - // make_data_mode1_joliet.cdi - new ulong[] - { - 1 - }, - - // make_data_mode2_joliet.cdi - new ulong[] - { - 1 - }, - - // make_dvd.cdi - new ulong[] - { - 84895 - }, - - // make_enhancedcd.cdi - new ulong[] - { - 1 - }, - - // make_mixed_mode.cdi - new ulong[] - { - 1 - }, - - // make_multisession_dvd.cdi - new ulong[] - { - 1 - }, - - // make_pangram_mode1_joliet.cdi - new ulong[] - { - 1 - }, - - // make_pangram_mode2_joliet.cdi - new ulong[] - { - 1 - }, - - // pcengine.cdi - new ulong[] - { - 3364, 38463, 47216, 53500, 61818, 68562, 75396, 83129, 86480, 91266, 99273, 106692, 112237, 120269, - 126003, 160955 - }, - - // pcfx.cdi - new ulong[] - { - 4244, 4758, 5790, 41908, 220644, 225645, 235497, 246679 - }, - - // report_audiocd.cdi - new ulong[] - { - 16398, 30050, 47799, 63163, 78774, 94581, 116974, 136015, 153921, 170600, 186388, 201648, 224298, 247072 - }, - - // report_cdr.cdi - new ulong[] - { - 254264 - }, - - // report_cdrom.cdi - new ulong[] - { - 254264 - }, - - // report_cdrw_2x.cdi - new ulong[] - { - 308223 - }, - - // report_dvdram_v1.cdi - new ulong[] - { - 1218960 - }, - - // report_dvdram_v2.cdi - new ulong[] - { - 2236704 - }, - - // report_dvd-r.cdi - new ulong[] - { - 2146367 - }, - - // report_dvd+r-dl.cdi - new ulong[] - { - 3455935 - }, - - // report_dvdrom.cdi - new ulong[] - { - 2146367 - }, - - // report_dvd+rw.cdi - new ulong[] - { - 2295103 - }, - - // report_dvd-rw.cdi - new ulong[] - { - 2146367 - }, - - // report_enhancedcd.cdi - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 222779, - 303315 - }, - - // test_audiocd_cdtext.cdi - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_data_track_as_audio.cdi - new ulong[] - { - 25538, 62384 - }, - - // test_data_track_as_audio_fixed_sub.cdi - new ulong[] - { - 25538, 62384 - }, - - // test_disc_starts_at_track2.cdi - new ulong[] - { - 25538, 62384 - }, - - // test_enhancedcd.cdi - new ulong[] - { - 14404, 28952, 59205 - }, - - // test_incd_udf200_finalized.cdi - new ulong[] - { - 350133 - }, - - // test_karaoke_multi_sampler.cdi - new ulong[] - { - 1736, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.cdi - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.cdi - new ulong[] - { - 8132, 25959, 38477, 51167 - }, - - // test_multisession_dvd+r.cdi - new ulong[] - { - 230623 - }, - - // test_multisession_dvd-r.cdi - new ulong[] - { - 257263 - }, - - // test_track111_in_session2.cdi - new ulong[] - { - 1 - }, - - // test_track111_in_session2_fixed_sub.cdi - new ulong[] - { - 1 - }, - - // test_track2_inside_track1.cdi - new ulong[] - { - 1 - }, - - // test_videocd.cdi - new ulong[] - { - 1101, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // jaguarcd.cdi - new ulong[] - { - 150, 150, 149, 150, 149, 149, 149, 149, 149, 149, 149 - }, - - // make_audiocd.cdi - new ulong[] - { - 1 - }, - - // make_data_mode1_joliet.cdi - new ulong[] - { - 1 - }, - - // make_data_mode2_joliet.cdi - new ulong[] - { - 1 - }, - - // make_dvd.cdi - new ulong[] - { - 0 - }, - - // make_enhancedcd.cdi - new ulong[] - { - 1 - }, - - // make_mixed_mode.cdi - new ulong[] - { - 1 - }, - - // make_multisession_dvd.cdi - new ulong[] - { - 1 - }, - - // make_pangram_mode1_joliet.cdi - new ulong[] - { - 1 - }, - - // make_pangram_mode2_joliet.cdi - new ulong[] - { - 1 - }, - - // pcengine.cdi - new ulong[] - { - 150, 225, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225 - }, - - // pcfx.cdi - new ulong[] - { - 150, 150, 150, 150, 150, 150, 0, 0 - }, - - // report_audiocd.cdi - new ulong[] - { - 150, 150, 0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // report_cdr.cdi - new ulong[] - { - 150 - }, - - // report_cdrom.cdi - new ulong[] - { - 150 - }, - - // report_cdrw_2x.cdi - new ulong[] - { - 150 - }, - - // report_dvdram_v1.cdi - new ulong[] - { - 0 - }, - - // report_dvdram_v2.cdi - new ulong[] - { - 0 - }, - - // report_dvd-r.cdi - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.cdi - new ulong[] - { - 0 - }, - - // report_dvdrom.cdi - new ulong[] - { - 0 - }, - - // report_dvd+rw.cdi - new ulong[] - { - 0 - }, - - // report_dvd-rw.cdi - new ulong[] - { - 0 - }, - - // report_enhancedcd.cdi - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_audiocd_cdtext.cdi - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_data_track_as_audio.cdi - new ulong[] - { - 150, 150 - }, - - // test_data_track_as_audio_fixed_sub.cdi - new ulong[] - { - 150, 150 - }, - - // test_disc_starts_at_track2.cdi - new ulong[] - { - 150, 150 - }, - - // test_enhancedcd.cdi - new ulong[] - { - 150, 0, 150 - }, - - // test_incd_udf200_finalized.cdi - new ulong[] - { - 150 - }, - - // test_karaoke_multi_sampler.cdi - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.cdi - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession.cdi - new ulong[] - { - 150, 150, 150, 150 - }, - - // test_multisession_dvd+r.cdi - new ulong[] - { - 0 - }, - - // test_multisession_dvd-r.cdi - new ulong[] - { - 0 - }, - - // test_track111_in_session2.cdi - new ulong[] - { - 1 - }, - - // test_track111_in_session2_fixed_sub.cdi - new ulong[] - { - 1 - }, - - // test_track2_inside_track1.cdi - new ulong[] - { - 1 - }, - - // test_videocd.cdi - new ulong[] - { - 150, 150 - } - }; - - public override byte[][] _trackFlags => new[] - { - // jaguarcd.cdi - new byte[] - { - 1 - }, - - // make_audiocd.cdi - new byte[] - { - 1 - }, - - // make_data_mode1_joliet.cdi - new byte[] - { - 1 - }, - - // make_data_mode2_joliet.cdi - new byte[] - { - 1 - }, - - // make_dvd.cdi - new byte[] - { - 1 - }, - - // make_enhancedcd.cdi - new byte[] - { - 1 - }, - - // make_mixed_mode.cdi - new byte[] - { - 1 - }, - - // make_multisession_dvd.cdi - new byte[] - { - 1 - }, - - // make_pangram_mode1_joliet.cdi - new byte[] - { - 1 - }, - - // make_pangram_mode2_joliet.cdi - new byte[] - { - 1 - }, - - // pcengine.cdi - new byte[] - { - 1 - }, - - // pcfx.cdi - new byte[] - { - 1 - }, - - // report_audiocd.cdi - new byte[] - { - 1 - }, - - // report_cdr.cdi - new byte[] - { - 1 - }, - - // report_cdrom.cdi - new byte[] - { - 1 - }, - - // report_cdrw_2x.cdi - new byte[] - { - 1 - }, - - // report_dvdram_v1.cdi - new byte[] - { - 1 - }, - - // report_dvdram_v2.cdi - new byte[] - { - 1 - }, - - // report_dvd-r.cdi - new byte[] - { - 1 - }, - - // report_dvd+r-dl.cdi - new byte[] - { - 1 - }, - - // report_dvdrom.cdi - new byte[] - { - 1 - }, - - // report_dvd+rw.cdi - new byte[] - { - 1 - }, - - // report_dvd-rw.cdi - new byte[] - { - 1 - }, - - // report_enhancedcd.cdi - new byte[] - { - 1 - }, - - // test_audiocd_cdtext.cdi - new byte[] - { - 1 - }, - - // test_data_track_as_audio.cdi - new byte[] - { - 1 - }, - - // test_data_track_as_audio_fixed_sub.cdi - new byte[] - { - 1 - }, - - // test_disc_starts_at_track2.cdi - new byte[] - { - 1 - }, - - // test_enhancedcd.cdi - new byte[] - { - 1 - }, - - // test_incd_udf200_finalized.cdi - new byte[] - { - 1 - }, - - // test_karaoke_multi_sampler.cdi - new byte[] - { - 1 - }, - - // test_multiple_indexes.cdi - new byte[] - { - 1 - }, - - // test_multisession.cdi - new byte[] - { - 1 - }, - - // test_multisession_dvd+r.cdi - new byte[] - { - 1 - }, - - // test_multisession_dvd-r.cdi - new byte[] - { - 1 - }, - - // test_track111_in_session2.cdi - new byte[] - { - 1 - }, - - // test_track111_in_session2_fixed_sub.cdi - new byte[] - { - 1 - }, - - // test_track2_inside_track1.cdi - new byte[] - { - 1 - }, - - // test_videocd.cdi - new byte[] - { - 1 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiscJuggler"); public override IMediaImage _plugin => new DiscImages.DiscJuggler(); + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "jaguarcd.cdi", + MediaType = MediaType.CDDA, + Sectors = 230845, + MD5 = "e234467539490be2db99d643b1d4e905", + LongMD5 = "e234467539490be2db99d643b1d4e905", + SubchannelMD5 = "d02a5fb43012a1f178a540d0e054d183", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16239, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 27490, + End = 28087, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 28088, + End = 78741, + Pregap = 149, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 78742, + End = 99904, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 99905, + End = 133053, + Pregap = 149, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 133054, + End = 160758, + Pregap = 149, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 160759, + End = 181316, + Pregap = 149, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 181317, + End = 201874, + Pregap = 149, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 201875, + End = 222432, + Pregap = 149, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 222433, + End = 242990, + Pregap = 149, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 242991, + End = 243586, + Pregap = 149, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_audiocd.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_dvd.cdi", + MediaType = MediaType.DVDROM, + Sectors = 84896, + MD5 = "5240b794f12174da73915e8c1f38b6a4", + LongMD5 = "5240b794f12174da73915e8c1f38b6a4", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84895, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_enhancedcd.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_mixed_mode.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_multisession_dvd.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_pangram_mode1_joliet.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_pangram_mode2_joliet.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.cdi", + MediaType = MediaType.CD, + Sectors = 160356, + MD5 = "b7947d8d77c2ede5199293ee2ac387ed", + LongMD5 = "9fdbcb9827f0bbafcd886447b386bc58", + SubchannelMD5 = "19566671874ef21e4c4ba4de5fd5a7ad", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3364, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3365, + End = 38463, + Pregap = 225, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38464, + End = 47216, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47217, + End = 53500, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53501, + End = 61818, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61819, + End = 68562, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68563, + End = 75396, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75397, + End = 83129, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 83130, + End = 86480, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86481, + End = 91266, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 91267, + End = 99273, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99274, + End = 106692, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106693, + End = 112237, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112238, + End = 120269, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 120270, + End = 126003, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126004, + End = 160955, + Pregap = 225, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.cdi", + MediaType = MediaType.CD, + Sectors = 245930, + MD5 = "2e872a5cfa43959183677398ede15c08", + LongMD5 = "a8939e0fd28ee0bd876101b218af3572", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4244, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4245, + End = 4758, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4759, + End = 5790, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5791, + End = 41908, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41909, + End = 220644, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220645, + End = 225645, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225646, + End = 235497, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235498, + End = 246679, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.cdi", + MediaType = MediaType.CDDA, + Sectors = 245273, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16398, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16399, + End = 30050, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47799, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47800, + End = 63163, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63164, + End = 78774, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78775, + End = 94581, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94582, + End = 116974, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 116975, + End = 136015, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136016, + End = 153921, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153922, + End = 170600, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170601, + End = 186388, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186389, + End = 201648, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201649, + End = 224298, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224299, + End = 247072, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.cdi", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.cdi", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw_2x.cdi", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v1.cdi", + MediaType = MediaType.DVDROM, + Sectors = 1218961, + MD5 = "b04c88635c5d493c250c289964018a7a", + LongMD5 = "b04c88635c5d493c250c289964018a7a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1218960, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.cdi", + MediaType = MediaType.DVDROM, + Sectors = 2236705, + MD5 = "c0823b070513d02c9f272986f23e74e8", + LongMD5 = "c0823b070513d02c9f272986f23e74e8", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2236704, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-r.cdi", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + MD5 = "106f141400355476b499213f36a363f9", + LongMD5 = "106f141400355476b499213f36a363f9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r-dl.cdi", + MediaType = MediaType.DVDROM, + Sectors = 3455936, + MD5 = "692148a01b4204160b088141fb52bd70", + LongMD5 = "692148a01b4204160b088141fb52bd70", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3455935, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdrom.cdi", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + MD5 = "106f141400355476b499213f36a363f9", + LongMD5 = "106f141400355476b499213f36a363f9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+rw.cdi", + MediaType = MediaType.DVDROM, + Sectors = 2295104, + MD5 = "759e9c19389aee07f88a994132b6f8d9", + LongMD5 = "759e9c19389aee07f88a994132b6f8d9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2295103, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-rw.cdi", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + MD5 = "106f141400355476b499213f36a363f9", + LongMD5 = "106f141400355476b499213f36a363f9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.cdi", + MediaType = MediaType.CDPLUS, + Sectors = 291916, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 222779, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234030, + End = 303315, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.cdi", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "52d7a2793b7600dc94d007f5e7dfd942", + LongMD5 = "52d7a2793b7600dc94d007f5e7dfd942", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio.cdi", + MediaType = MediaType.CDDA, + Sectors = 50985, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio_fixed_sub.cdi", + MediaType = MediaType.CDROMXA, + Sectors = 50985, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_disc_starts_at_track2.cdi", + MediaType = MediaType.CDROMXA, + Sectors = 50985, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62384, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.cdi", + MediaType = MediaType.CDPLUS, + Sectors = 47806, + MD5 = "31054e6b8f4d51fe502ac340490bcd46", + LongMD5 = "2fc4b8966350322ed3fd553b9e628164", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14404, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14405, + End = 28952, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 40203, + End = 59205, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.cdi", + MediaType = MediaType.CDROMXA, + Sectors = 350134, + MD5 = "d976a8d0131bf48926542160bb41fc13", + LongMD5 = "cd55978d00f1bc127a0e652259ba2418", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_karaoke_multi_sampler.cdi", + MediaType = MediaType.CDROMXA, + Sectors = 329008, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.cdi", + MediaType = MediaType.CDDA, + Sectors = 65536, + MD5 = "9315c6fc3cf5371ae3795df2b624bd5e", + LongMD5 = "9315c6fc3cf5371ae3795df2b624bd5e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.cdi", + MediaType = MediaType.CDROMXA, + Sectors = 25968, + MD5 = "46e43ed4712e5ae61b653b4d19f27080", + LongMD5 = "cac33e71b4693b2902f086a0a433129d", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19383, + End = 25959, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32710, + End = 38477, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45228, + End = 51167, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd+r.cdi", + MediaType = MediaType.DVDROM, + Sectors = 230624, + MD5 = "020993315e49ab0d36bc7248819162ea", + LongMD5 = "020993315e49ab0d36bc7248819162ea", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 230623, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd-r.cdi", + MediaType = MediaType.DVDROM, + Sectors = 257264, + MD5 = "dff8f2107a4ea9633a88ce38ff609b8e", + LongMD5 = "dff8f2107a4ea9633a88ce38ff609b8e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 257263, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track111_in_session2.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track111_in_session2_fixed_sub.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_track1.cdi", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 1, + End = 1, + Pregap = 1, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.cdi", + MediaType = MediaType.CDROMXA, + Sectors = 48644, + MD5 = "e5b596e73f46f646a51e1315b59e7cb9", + LongMD5 = "acd1a8de676ebe6feeb9d6964ccd63ea", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1101, + Pregap = 150, + Flags = 1 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1102, + End = 48793, + Pregap = 150, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy42.cs b/Aaru.Tests/Images/DiskCopy42.cs index dc3c44faa..cc0e4a088 100644 --- a/Aaru.Tests/Images/DiskCopy42.cs +++ b/Aaru.Tests/Images/DiskCopy42.cs @@ -36,134 +36,83 @@ namespace Aaru.Tests.Images [TestFixture] public class DiskCopy42 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "hfs.dsk.lz", "mf1dd_hfs.img.lz", "mf1dd_mfs.img.lz", "mf2dd_hfs.img.lz", "mf2dd_mfs.img.lz", - "modified.dsk.lz", "pascal800.dsk.lz", "prodos1440.dsk.lz", "prodos800.dsk.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // hfs.dsk.lz - 1600, - - // mf1dd_hfs.img.lz - 800, - - // mf1dd_mfs.img.lz - 800, - - // mf2dd_hfs.img.lz - 1600, - - // mf2dd_mfs.img.lz - 1600, - - // modified.dsk.lz - 1600, - - // pascal800.dsk.lz - 1600, - - // prodos1440.dsk.lz - 1600, - - // prodos800.dsk.lz - 1600 - }; - - public override uint[] _sectorSize => new uint[] - { - // hfs.dsk.lz - 512, - - // mf1dd_hfs.img.lz - 512, - - // mf1dd_mfs.img.lz - 512, - - // mf2dd_hfs.img.lz - 512, - - // mf2dd_mfs.img.lz - 512, - - // modified.dsk.lz - 512, - - // pascal800.dsk.lz - 512, - - // prodos1440.dsk.lz - 512, - - // prodos800.dsk.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // hfs.dsk.lz - MediaType.AppleSonyDS, - - // mf1dd_hfs.img.lz - MediaType.AppleSonySS, - - // mf1dd_mfs.img.lz - MediaType.AppleSonySS, - - // mf2dd_hfs.img.lz - MediaType.AppleSonyDS, - - // mf2dd_mfs.img.lz - MediaType.AppleSonyDS, - - // modified.dsk.lz - MediaType.AppleSonyDS, - - // pascal800.dsk.lz - MediaType.AppleSonyDS, - - // prodos1440.dsk.lz - MediaType.AppleSonyDS, - - // prodos800.dsk.lz - MediaType.AppleSonyDS - }; - - public override string[] _md5S => new[] - { - // hfs.dsk.lz - "2762f41d0379b476042fc62891baac84", - - // mf1dd_hfs.img.lz - "eae3a95671d077deb702b3549a769f56", - - // mf1dd_mfs.img.lz - "c5d92544c3e78b7f0a9b4baaa9a64eec", - - // mf2dd_hfs.img.lz - "a99744348a70b62b57bce2dec9132ced", - - // mf2dd_mfs.img.lz - "93e71b9ecdb39d3ec9245b4f451856d4", - - // modified.dsk.lz - "b748f6df3e60e7169d42ec6fcc857ea4", - - // pascal800.dsk.lz - "dbd0ec8a3126236910709faf923adcf2", - - // prodos1440.dsk.lz - "fcf747bd356b48d442ff74adb8f3516b", - - // prodos800.dsk.lz - "fcf747bd356b48d442ff74adb8f3516b" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 4.2"); public override IMediaImage _plugin => new DiscImages.DiskCopy42(); + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "hfs.dsk.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "2762f41d0379b476042fc62891baac84" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_hfs.img.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "eae3a95671d077deb702b3549a769f56" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_mfs.img.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "c5d92544c3e78b7f0a9b4baaa9a64eec" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_hfs.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a99744348a70b62b57bce2dec9132ced" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_mfs.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "93e71b9ecdb39d3ec9245b4f451856d4" + }, + new BlockImageTestExpected + { + TestFile = "modified.dsk.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "b748f6df3e60e7169d42ec6fcc857ea4" + }, + new BlockImageTestExpected + { + TestFile = "pascal800.dsk.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "dbd0ec8a3126236910709faf923adcf2" + }, + new BlockImageTestExpected + { + TestFile = "prodos1440.dsk.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "fcf747bd356b48d442ff74adb8f3516b" + }, + new BlockImageTestExpected + { + TestFile = "prodos800.dsk.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "fcf747bd356b48d442ff74adb8f3516b" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy633/DiskCopy42.cs b/Aaru.Tests/Images/DiskCopy633/DiskCopy42.cs index 7a5742ede..4559212b3 100644 --- a/Aaru.Tests/Images/DiskCopy633/DiskCopy42.cs +++ b/Aaru.Tests/Images/DiskCopy633/DiskCopy42.cs @@ -36,98 +36,60 @@ namespace Aaru.Tests.Images.DiskCopy633 [TestFixture] public class DiskCopy42 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_42_DOS_1440.img", "DC6_42_DOS_720.img", "DC6_42_HFS_1440.img", "DC6_42_HFS_800.img", - "DC6_42_PD_1440.img", "DC6_42_PD_800.img" - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_42_DOS_1440.img - 2880, - - // DC6_42_DOS_720.img - 1440, - - // DC6_42_HFS_1440.img - 2880, - - // DC6_42_HFS_800.img - 1600, - - // DC6_42_PD_1440.img - 2880, - - // DC6_42_PD_800.img - 1600 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_42_DOS_1440.img - 512, - - // DC6_42_DOS_720.img - 512, - - // DC6_42_HFS_1440.img - 512, - - // DC6_42_HFS_800.img - 512, - - // DC6_42_PD_1440.img - 512, - - // DC6_42_PD_800.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_42_DOS_1440.img - MediaType.DOS_35_HD, - - // DC6_42_DOS_720.img - MediaType.DOS_35_DS_DD_9, - - // DC6_42_HFS_1440.img - MediaType.DOS_35_HD, - - // DC6_42_HFS_800.img - MediaType.AppleSonyDS, - - // DC6_42_PD_1440.img - MediaType.DOS_35_HD, - - // DC6_42_PD_800.img - MediaType.AppleSonyDS - }; - - public override string[] _md5S => new[] - { - // DC6_42_DOS_1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DC6_42_DOS_720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_42_HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // DC6_42_HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_42_PD_1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_42_PD_800.img - "a72da7aedadbe194c22a3d71c62e4766" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 6.3.3", "DiskCopy 4.2"); public override IMediaImage _plugin => new DiscImages.DiskCopy42(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_42_DOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_42_DOS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_42_HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_42_HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_42_PD_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_42_PD_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy633/NDIF/ROCo.cs b/Aaru.Tests/Images/DiskCopy633/NDIF/ROCo.cs index ef2536474..92b2d072f 100644 --- a/Aaru.Tests/Images/DiskCopy633/NDIF/ROCo.cs +++ b/Aaru.Tests/Images/DiskCopy633/NDIF/ROCo.cs @@ -37,250 +37,156 @@ namespace Aaru.Tests.Images.DiskCopy633.NDIF [TestFixture] public class ROCo : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_RC_DOS_1440.img", "DC6_RC_DOS_1440.smi", "DC6_RC_DOS_720.img", "DC6_RC_DOS_720.smi", - "DC6_RC_DOS_DMF.img", "DC6_RC_DOS_DMF.smi", "DC6_RC_HFS_1440.img", "DC6_RC_HFS_1440.smi", - "DC6_RC_HFS_800.img", "DC6_RC_HFS_800.smi", "DC6_RC_HFS_DMF.img", "DC6_RC_HFS_DMF.smi", - "DC6_RC_PD_1440.img", "DC6_RC_PD_1440.smi", "DC6_RC_PD_800.img", "DC6_RC_PD_800.smi", "DC6_RC_PD_DMF.img", - "DC6_RC_PD_DMF.smi" - /* TODO: Segmented images - "DC6_RC_DOS_DMF 1of2", - "DC6_RC_HFS_DMF 1of2", - "DC6_RC_PD_DMF 1of2", - */ - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_RC_DOS_1440.img - 2880, - - // DC6_RC_DOS_1440.smi - 2880, - - // DC6_RC_DOS_720.img - 1440, - - // DC6_RC_DOS_720.smi - 1440, - - // DC6_RC_DOS_DMF.img - 3360, - - // DC6_RC_DOS_DMF.smi - 3360, - - // DC6_RC_HFS_1440.img - 2880, - - // DC6_RC_HFS_1440.smi - 2880, - - // DC6_RC_HFS_800.img - 1600, - - // DC6_RC_HFS_800.smi - 1600, - - // DC6_RC_HFS_DMF.img - 3360, - - // DC6_RC_HFS_DMF.smi - 3360, - - // DC6_RC_PD_1440.img - 2880, - - // DC6_RC_PD_1440.smi - 2880, - - // DC6_RC_PD_800.img - 1600, - - // DC6_RC_PD_800.smi - 1600, - - // DC6_RC_PD_DMF.img - 3360, - - // DC6_RC_PD_DMF.smi - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_RC_DOS_1440.img - 512, - - // DC6_RC_DOS_1440.smi - 512, - - // DC6_RC_DOS_720.img - 512, - - // DC6_RC_DOS_720.smi - 512, - - // DC6_RC_DOS_DMF.img - 512, - - // DC6_RC_DOS_DMF.smi - 512, - - // DC6_RC_HFS_1440.img - 512, - - // DC6_RC_HFS_1440.smi - 512, - - // DC6_RC_HFS_800.img - 512, - - // DC6_RC_HFS_800.smi - 512, - - // DC6_RC_HFS_DMF.img - 512, - - // DC6_RC_HFS_DMF.smi - 512, - - // DC6_RC_PD_1440.img - 512, - - // DC6_RC_PD_1440.smi - 512, - - // DC6_RC_PD_800.img - 512, - - // DC6_RC_PD_800.smi - 512, - - // DC6_RC_PD_DMF.img - 512, - - // DC6_RC_PD_DMF.smi - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_RC_DOS_1440.img - MediaType.DOS_35_HD, - - // DC6_RC_DOS_1440.smi - MediaType.DOS_35_HD, - - // DC6_RC_DOS_720.img - MediaType.DOS_35_DS_DD_9, - - // DC6_RC_DOS_720.smi - MediaType.DOS_35_DS_DD_9, - - // DC6_RC_DOS_DMF.img - MediaType.DMF, - - // DC6_RC_DOS_DMF.smi - MediaType.DMF, - - // DC6_RC_HFS_1440.img - MediaType.DOS_35_HD, - - // DC6_RC_HFS_1440.smi - MediaType.DOS_35_HD, - - // DC6_RC_HFS_800.img - MediaType.AppleSonyDS, - - // DC6_RC_HFS_800.smi - MediaType.AppleSonyDS, - - // DC6_RC_HFS_DMF.img - MediaType.DMF, - - // DC6_RC_HFS_DMF.smi - MediaType.DMF, - - // DC6_RC_PD_1440.img - MediaType.DOS_35_HD, - - // DC6_RC_PD_1440.smi - MediaType.DOS_35_HD, - - // DC6_RC_PD_800.img - MediaType.AppleSonyDS, - - // DC6_RC_PD_800.smi - MediaType.AppleSonyDS, - - // DC6_RC_PD_DMF.img - MediaType.DMF, - - // DC6_RC_PD_DMF.smi - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DC6_RC_DOS_1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DC6_RC_DOS_1440.smi - "ff419213080574056ebd9adf7bab3d32", - - // DC6_RC_DOS_720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_RC_DOS_720.smi - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_RC_DOS_DMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // DC6_RC_DOS_DMF.smi - "92ea7a359957012a682ba126cfdef0ce", - - // DC6_RC_HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // DC6_RC_HFS_1440.smi - "3160038ca028ccf52ad7863790072145", - - // DC6_RC_HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RC_HFS_800.smi - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RC_HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // DC6_RC_HFS_DMF.smi - "652dc979c177f2d8e846587158b38478", - - // DC6_RC_PD_1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_RC_PD_1440.smi - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_RC_PD_800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // DC6_RC_PD_800.smi - "a72da7aedadbe194c22a3d71c62e4766", - - // DC6_RC_PD_DMF.img - "7fbf0251a93cb36d98e68b7d19624de5", - - // DC6_RC_PD_DMF.smi - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 6.3.3", "NDIF", "ROCo"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_RC_DOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_DOS_1440.smi", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_DOS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_DOS_720.smi", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_DOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_DOS_DMF.smi", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_HFS_1440.smi", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_HFS_800.smi", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_HFS_DMF.smi", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_PD_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_PD_1440.smi", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_PD_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_PD_800.smi", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_PD_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RC_PD_DMF.smi", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy633/NDIF/RdWr.cs b/Aaru.Tests/Images/DiskCopy633/NDIF/RdWr.cs index dfeca0879..4cb51c5ca 100644 --- a/Aaru.Tests/Images/DiskCopy633/NDIF/RdWr.cs +++ b/Aaru.Tests/Images/DiskCopy633/NDIF/RdWr.cs @@ -37,134 +37,84 @@ namespace Aaru.Tests.Images.DiskCopy633.NDIF [TestFixture] public class RdWr : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_RW_DOS_1440.img", "DC6_RW_DOS_720.img", "DC6_RW_DOS_DMF.img", "DC6_RW_HFS_1440.img", - "DC6_RW_HFS_800.img", "DC6_RW_HFS_DMF.img", "DC6_RW_PD_1440.img", "DC6_RW_PD_800.img", "DC6_RW_PD_DMF.img" - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_RW_DOS_1440.img - 2880, - - // DC6_RW_DOS_720.img - 1440, - - // DC6_RW_DOS_DMF.img - 3360, - - // DC6_RW_HFS_1440.img - 2880, - - // DC6_RW_HFS_800.img - 1600, - - // DC6_RW_HFS_DMF.img - 3360, - - // DC6_RW_PD_1440.img - 2880, - - // DC6_RW_PD_800.img - 1600, - - // DC6_RW_PD_DMF.img - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_RW_DOS_1440.img - 512, - - // DC6_RW_DOS_720.img - 512, - - // DC6_RW_DOS_DMF.img - 512, - - // DC6_RW_HFS_1440.img - 512, - - // DC6_RW_HFS_800.img - 512, - - // DC6_RW_HFS_DMF.img - 512, - - // DC6_RW_PD_1440.img - 512, - - // DC6_RW_PD_800.img - 512, - - // DC6_RW_PD_DMF.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_RW_DOS_1440.img - MediaType.DOS_35_HD, - - // DC6_RW_DOS_720.img - MediaType.DOS_35_DS_DD_9, - - // DC6_RW_DOS_DMF.img - MediaType.DMF, - - // DC6_RW_HFS_1440.img - MediaType.DOS_35_HD, - - // DC6_RW_HFS_800.img - MediaType.AppleSonyDS, - - // DC6_RW_HFS_DMF.img - MediaType.DMF, - - // DC6_RW_PD_1440.img - MediaType.DOS_35_HD, - - // DC6_RW_PD_800.img - MediaType.AppleSonyDS, - - // DC6_RW_PD_DMF.img - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DC6_RW_DOS_1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DC6_RW_DOS_720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_RW_DOS_DMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // DC6_RW_HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // DC6_RW_HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RW_HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // DC6_RW_PD_1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_RW_PD_800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // DC6_RW_PD_DMF.img - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 6.3.3", "NDIF", "RdWr"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_RW_DOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_DOS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_DOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_PD_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_PD_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_PD_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy633/NDIF/Rdxx.cs b/Aaru.Tests/Images/DiskCopy633/NDIF/Rdxx.cs index 44e11978d..05623cbd2 100644 --- a/Aaru.Tests/Images/DiskCopy633/NDIF/Rdxx.cs +++ b/Aaru.Tests/Images/DiskCopy633/NDIF/Rdxx.cs @@ -37,139 +37,84 @@ namespace Aaru.Tests.Images.DiskCopy633.NDIF [TestFixture] public class Rdxx : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_RO_DOS_1440.img", "DC6_RO_DOS_720.img", "DC6_RO_DOS_DMF.img", "DC6_RO_HFS_1440.img", - "DC6_RO_HFS_800.img", "DC6_RO_HFS_DMF.img", "DC6_RO_PD_1440.img", "DC6_RO_PD_800.img", "DC6_RO_PD_DMF.img" - /* TODO: Segmented images - "DC6_RO_DOS_DMF 1of2", - "DC6_RO_HFS_DMF 1of2", - "DC6_RO_PD_DMF 1of2", - */ - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_RO_DOS_1440.img - 2880, - - // DC6_RO_DOS_720.img - 1440, - - // DC6_RO_DOS_DMF.img - 3360, - - // DC6_RO_HFS_1440.img - 2880, - - // DC6_RO_HFS_800.img - 1600, - - // DC6_RO_HFS_DMF.img - 3360, - - // DC6_RO_PD_1440.img - 2880, - - // DC6_RO_PD_800.img - 1600, - - // DC6_RO_PD_DMF.img - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_RO_DOS_1440.img - 512, - - // DC6_RO_DOS_720.img - 512, - - // DC6_RO_DOS_DMF.img - 512, - - // DC6_RO_HFS_1440.img - 512, - - // DC6_RO_HFS_800.img - 512, - - // DC6_RO_HFS_DMF.img - 512, - - // DC6_RO_PD_1440.img - 512, - - // DC6_RO_PD_800.img - 512, - - // DC6_RO_PD_DMF.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_RO_DOS_1440.img - MediaType.DOS_35_HD, - - // DC6_RO_DOS_720.img - MediaType.DOS_35_DS_DD_9, - - // DC6_RO_DOS_DMF.img - MediaType.DMF, - - // DC6_RO_HFS_1440.img - MediaType.DOS_35_HD, - - // DC6_RO_HFS_800.img - MediaType.AppleSonyDS, - - // DC6_RO_HFS_DMF.img - MediaType.DMF, - - // DC6_RO_PD_1440.img - MediaType.DOS_35_HD, - - // DC6_RO_PD_800.img - MediaType.AppleSonyDS, - - // DC6_RO_PD_DMF.img - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DC6_RO_DOS_1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DC6_RO_DOS_720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_RO_DOS_DMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // DC6_RO_HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // DC6_RO_HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RO_HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // DC6_RO_PD_1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_RO_PD_800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // DC6_RO_PD_DMF.img - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 6.3.3", "NDIF", "Rdxx"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_RO_DOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RO_DOS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RO_DOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RO_HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RO_HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RO_HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RO_PD_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RO_PD_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RO_PD_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy65/UDCO.cs b/Aaru.Tests/Images/DiskCopy65/UDCO.cs index 5033fe4c2..c76135940 100644 --- a/Aaru.Tests/Images/DiskCopy65/UDCO.cs +++ b/Aaru.Tests/Images/DiskCopy65/UDCO.cs @@ -37,135 +37,84 @@ namespace Aaru.Tests.Images.DiskCopy65 [TestFixture] public class UDCO : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_UDCO_DOS_1440.img.lz", "DC6_UDCO_DOS_720.img.lz", "DC6_UDCO_DOS_DMF.img.lz", - "DC6_UDCO_HFS_1440.img.lz", "DC6_UDCO_HFS_800.img.lz", "DC6_UDCO_HFS_DMF.img.lz", "DC6_UDCO_PD_1440.img.lz", - "DC6_UDCO_PD_800.img.lz", "DC6_UDCO_PD_DMF.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_UDCO_DOS_1440.img.lz - 2880, - - // DC6_UDCO_DOS_720.img.lz - 1440, - - // DC6_UDCO_DOS_DMF.img.lz - 3360, - - // DC6_UDCO_HFS_1440.img.lz - 2880, - - // DC6_UDCO_HFS_800.img.lz - 1600, - - // DC6_UDCO_HFS_DMF.img.lz - 3360, - - // DC6_UDCO_PD_1440.img.lz - 2880, - - // DC6_UDCO_PD_800.img.lz - 1600, - - // DC6_UDCO_PD_DMF.img.lz - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_UDCO_DOS_1440.img.lz - 512, - - // DC6_UDCO_DOS_720.img.lz - 512, - - // DC6_UDCO_DOS_DMF.img.lz - 512, - - // DC6_UDCO_HFS_1440.img.lz - 512, - - // DC6_UDCO_HFS_800.img.lz - 512, - - // DC6_UDCO_HFS_DMF.img.lz - 512, - - // DC6_UDCO_PD_1440.img.lz - 512, - - // DC6_UDCO_PD_800.img.lz - 512, - - // DC6_UDCO_PD_DMF.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_UDCO_DOS_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDCO_DOS_720.img.lz - MediaType.DOS_35_DS_DD_9, - - // DC6_UDCO_DOS_DMF.img.lz - MediaType.DMF, - - // DC6_UDCO_HFS_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDCO_HFS_800.img.lz - MediaType.AppleSonyDS, - - // DC6_UDCO_HFS_DMF.img.lz - MediaType.DMF, - - // DC6_UDCO_PD_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDCO_PD_800.img.lz - MediaType.AppleSonyDS, - - // DC6_UDCO_PD_DMF.img.lz - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DC6_UDCO_DOS_1440.img.lz - "ff419213080574056ebd9adf7bab3d32", - - // DC6_UDCO_DOS_720.img.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_UDCO_DOS_DMF.img.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DC6_UDCO_HFS_1440.img.lz - "3160038ca028ccf52ad7863790072145", - - // DC6_UDCO_HFS_800.img.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_UDCO_HFS_DMF.img.lz - "652dc979c177f2d8e846587158b38478", - - // DC6_UDCO_PD_1440.img.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_UDCO_PD_800.img.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // DC6_UDCO_PD_DMF.img.lz - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 6.5", "UDIF", "UDCO"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_DOS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_DOS_720.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_DOS_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_HFS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_HFS_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_HFS_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_PD_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_PD_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCO_PD_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy65/UDCo_obsolete.cs b/Aaru.Tests/Images/DiskCopy65/UDCo_obsolete.cs index 5d5ad460a..e990e9c9a 100644 --- a/Aaru.Tests/Images/DiskCopy65/UDCo_obsolete.cs +++ b/Aaru.Tests/Images/DiskCopy65/UDCo_obsolete.cs @@ -37,135 +37,84 @@ namespace Aaru.Tests.Images.DiskCopy65 [TestFixture] public class UDCo_obsolete : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_UDCo_DOS_1440.img.lz", "DC6_UDCo_DOS_720.img.lz", "DC6_UDCo_DOS_DMF.img.lz", - "DC6_UDCo_HFS_1440.img.lz", "DC6_UDCo_HFS_800.img.lz", "DC6_UDCo_HFS_DMF.img.lz", "DC6_UDCo_PD_1440.img.lz", - "DC6_UDCo_PD_800.img.lz", "DC6_UDCo_PD_DMF.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_UDCo_DOS_1440.img.lz - 2880, - - // DC6_UDCo_DOS_720.img.lz - 1440, - - // DC6_UDCo_DOS_DMF.img.lz - 3360, - - // DC6_UDCo_HFS_1440.img.lz - 2880, - - // DC6_UDCo_HFS_800.img.lz - 1600, - - // DC6_UDCo_HFS_DMF.img.lz - 3360, - - // DC6_UDCo_PD_1440.img.lz - 2880, - - // DC6_UDCo_PD_800.img.lz - 1600, - - // DC6_UDCo_PD_DMF.img.lz - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_UDCo_DOS_1440.img.lz - 512, - - // DC6_UDCo_DOS_720.img.lz - 512, - - // DC6_UDCo_DOS_DMF.img.lz - 512, - - // DC6_UDCo_HFS_1440.img.lz - 512, - - // DC6_UDCo_HFS_800.img.lz - 512, - - // DC6_UDCo_HFS_DMF.img.lz - 512, - - // DC6_UDCo_PD_1440.img.lz - 512, - - // DC6_UDCo_PD_800.img.lz - 512, - - // DC6_UDCo_PD_DMF.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_UDCo_DOS_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDCo_DOS_720.img.lz - MediaType.DOS_35_DS_DD_9, - - // DC6_UDCo_DOS_DMF.img.lz - MediaType.DMF, - - // DC6_UDCo_HFS_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDCo_HFS_800.img.lz - MediaType.AppleSonyDS, - - // DC6_UDCo_HFS_DMF.img.lz - MediaType.DMF, - - // DC6_UDCo_PD_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDCo_PD_800.img.lz - MediaType.AppleSonyDS, - - // DC6_UDCo_PD_DMF.img.lz - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DC6_UDCo_DOS_1440.img.lz - "ff419213080574056ebd9adf7bab3d32", - - // DC6_UDCo_DOS_720.img.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_UDCo_DOS_DMF.img.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DC6_UDCo_HFS_1440.img.lz - "3160038ca028ccf52ad7863790072145", - - // DC6_UDCo_HFS_800.img.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_UDCo_HFS_DMF.img.lz - "652dc979c177f2d8e846587158b38478", - - // DC6_UDCo_PD_1440.img.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_UDCo_PD_800.img.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // DC6_UDCo_PD_DMF.img.lz - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 6.5", "UDIF", "UDCo_OBS"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_DOS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_DOS_720.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_DOS_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_HFS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_HFS_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_HFS_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_PD_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_PD_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDCo_PD_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy65/UDRO.cs b/Aaru.Tests/Images/DiskCopy65/UDRO.cs index c058f419c..3e9092ecb 100644 --- a/Aaru.Tests/Images/DiskCopy65/UDRO.cs +++ b/Aaru.Tests/Images/DiskCopy65/UDRO.cs @@ -37,135 +37,84 @@ namespace Aaru.Tests.Images.DiskCopy65 [TestFixture] public class UDRO : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_UDRO_DOS_1440.img.lz", "DC6_UDRO_DOS_720.img.lz", "DC6_UDRO_DOS_DMF.img.lz", - "DC6_UDRO_HFS_1440.img.lz", "DC6_UDRO_HFS_800.img.lz", "DC6_UDRO_HFS_DMF.img.lz", "DC6_UDRO_PD_1440.img.lz", - "DC6_UDRO_PD_800.img.lz", "DC6_UDRO_PD_DMF.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_UDRO_DOS_1440.img.lz - 2880, - - // DC6_UDRO_DOS_720.img.lz - 1440, - - // DC6_UDRO_DOS_DMF.img.lz - 3360, - - // DC6_UDRO_HFS_1440.img.lz - 2880, - - // DC6_UDRO_HFS_800.img.lz - 1600, - - // DC6_UDRO_HFS_DMF.img.lz - 3360, - - // DC6_UDRO_PD_1440.img.lz - 2880, - - // DC6_UDRO_PD_800.img.lz - 1600, - - // DC6_UDRO_PD_DMF.img.lz - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_UDRO_DOS_1440.img.lz - 512, - - // DC6_UDRO_DOS_720.img.lz - 512, - - // DC6_UDRO_DOS_DMF.img.lz - 512, - - // DC6_UDRO_HFS_1440.img.lz - 512, - - // DC6_UDRO_HFS_800.img.lz - 512, - - // DC6_UDRO_HFS_DMF.img.lz - 512, - - // DC6_UDRO_PD_1440.img.lz - 512, - - // DC6_UDRO_PD_800.img.lz - 512, - - // DC6_UDRO_PD_DMF.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_UDRO_DOS_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDRO_DOS_720.img.lz - MediaType.DOS_35_DS_DD_9, - - // DC6_UDRO_DOS_DMF.img.lz - MediaType.DMF, - - // DC6_UDRO_HFS_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDRO_HFS_800.img.lz - MediaType.AppleSonyDS, - - // DC6_UDRO_HFS_DMF.img.lz - MediaType.DMF, - - // DC6_UDRO_PD_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDRO_PD_800.img.lz - MediaType.AppleSonyDS, - - // DC6_UDRO_PD_DMF.img.lz - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DC6_UDRO_DOS_1440.img.lz - "ff419213080574056ebd9adf7bab3d32", - - // DC6_UDRO_DOS_720.img.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_UDRO_DOS_DMF.img.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DC6_UDRO_HFS_1440.img.lz - "3160038ca028ccf52ad7863790072145", - - // DC6_UDRO_HFS_800.img.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_UDRO_HFS_DMF.img.lz - "652dc979c177f2d8e846587158b38478", - - // DC6_UDRO_PD_1440.img.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_UDRO_PD_800.img.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // DC6_UDRO_PD_DMF.img.lz - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 6.5", "UDIF", "UDRO"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_DOS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_DOS_720.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_DOS_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_HFS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_HFS_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_HFS_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_PD_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_PD_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRO_PD_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskCopy65/UDRo_obsolete.cs b/Aaru.Tests/Images/DiskCopy65/UDRo_obsolete.cs index 585e0b27e..7a683f99f 100644 --- a/Aaru.Tests/Images/DiskCopy65/UDRo_obsolete.cs +++ b/Aaru.Tests/Images/DiskCopy65/UDRo_obsolete.cs @@ -37,135 +37,84 @@ namespace Aaru.Tests.Images.DiskCopy65 [TestFixture] public class UDRo_obsolete : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_UDRo_DOS_1440.img.lz", "DC6_UDRo_DOS_720.img.lz", "DC6_UDRo_DOS_DMF.img.lz", - "DC6_UDRo_HFS_1440.img.lz", "DC6_UDRo_HFS_800.img.lz", "DC6_UDRo_HFS_DMF.img.lz", "DC6_UDRo_PD_1440.img.lz", - "DC6_UDRo_PD_800.img.lz", "DC6_UDRo_PD_DMF.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_UDRo_DOS_1440.img.lz - 2880, - - // DC6_UDRo_DOS_720.img.lz - 1440, - - // DC6_UDRo_DOS_DMF.img.lz - 3360, - - // DC6_UDRo_HFS_1440.img.lz - 2880, - - // DC6_UDRo_HFS_800.img.lz - 1600, - - // DC6_UDRo_HFS_DMF.img.lz - 3360, - - // DC6_UDRo_PD_1440.img.lz - 2880, - - // DC6_UDRo_PD_800.img.lz - 1600, - - // DC6_UDRo_PD_DMF.img.lz - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_UDRo_DOS_1440.img.lz - 512, - - // DC6_UDRo_DOS_720.img.lz - 512, - - // DC6_UDRo_DOS_DMF.img.lz - 512, - - // DC6_UDRo_HFS_1440.img.lz - 512, - - // DC6_UDRo_HFS_800.img.lz - 512, - - // DC6_UDRo_HFS_DMF.img.lz - 512, - - // DC6_UDRo_PD_1440.img.lz - 512, - - // DC6_UDRo_PD_800.img.lz - 512, - - // DC6_UDRo_PD_DMF.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_UDRo_DOS_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDRo_DOS_720.img.lz - MediaType.DOS_35_DS_DD_9, - - // DC6_UDRo_DOS_DMF.img.lz - MediaType.DMF, - - // DC6_UDRo_HFS_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDRo_HFS_800.img.lz - MediaType.AppleSonyDS, - - // DC6_UDRo_HFS_DMF.img.lz - MediaType.DMF, - - // DC6_UDRo_PD_1440.img.lz - MediaType.DOS_35_HD, - - // DC6_UDRo_PD_800.img.lz - MediaType.AppleSonyDS, - - // DC6_UDRo_PD_DMF.img.lz - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DC6_UDRo_DOS_1440.img.lz - "ff419213080574056ebd9adf7bab3d32", - - // DC6_UDRo_DOS_720.img.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DC6_UDRo_DOS_DMF.img.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DC6_UDRo_HFS_1440.img.lz - "3160038ca028ccf52ad7863790072145", - - // DC6_UDRo_HFS_800.img.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_UDRo_HFS_DMF.img.lz - "652dc979c177f2d8e846587158b38478", - - // DC6_UDRo_PD_1440.img.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // DC6_UDRo_PD_800.img.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // DC6_UDRo_PD_DMF.img.lz - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskCopy 6.5", "UDIF", "UDRo_OBS"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_DOS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_DOS_720.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_DOS_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_HFS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_HFS_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_HFS_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_PD_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_PD_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "DC6_UDRo_PD_DMF.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/DiskCopy42.cs b/Aaru.Tests/Images/DiskImagesFramework/DiskCopy42.cs index ef6534970..53aac249b 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/DiskCopy42.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/DiskCopy42.cs @@ -36,134 +36,84 @@ namespace Aaru.Tests.Images.DiskImagesFramework [TestFixture] public class DiskCopy42 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.img.lz", "DOS_720.img.lz", "HFS_1440.img.lz", "HFS_800.img.lz", "ProDOS_1440.img.lz", - "ProDOS_800.img.lz", "UFS_1440.img.lz", "UFS_720.img.lz", "UFS_800.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.img.lz - 2880, - - // DOS_720.img.lz - 1440, - - // HFS_1440.img.lz - 2880, - - // HFS_800.img.lz - 1600, - - // ProDOS_1440.img.lz - 2880, - - // ProDOS_800.img.lz - 1600, - - // UFS_1440.img.lz - 2880, - - // UFS_720.img.lz - 1440, - - // UFS_800.img.lz - 1600 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.img.lz - 512, - - // DOS_720.img.lz - 512, - - // HFS_1440.img.lz - 512, - - // HFS_800.img.lz - 512, - - // ProDOS_1440.img.lz - 512, - - // ProDOS_800.img.lz - 512, - - // UFS_1440.img.lz - 512, - - // UFS_720.img.lz - 512, - - // UFS_800.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.img.lz - MediaType.DOS_35_HD, - - // DOS_720.img.lz - MediaType.DOS_35_DS_DD_9, - - // HFS_1440.img.lz - MediaType.DOS_35_HD, - - // HFS_800.img.lz - MediaType.AppleSonyDS, - - // ProDOS_1440.img.lz - MediaType.DOS_35_HD, - - // ProDOS_800.img.lz - MediaType.AppleSonyDS, - - // UFS_1440.img.lz - MediaType.DOS_35_HD, - - // UFS_720.img.lz - MediaType.DOS_35_DS_DD_9, - - // UFS_800.img.lz - MediaType.AppleSonyDS - }; - - public override string[] _md5S => new[] - { - // DOS_1440.img.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.img.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // HFS_1440.img.lz - "3160038ca028ccf52ad7863790072145", - - // HFS_800.img.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // ProDOS_1440.img.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.img.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // UFS_1440.img.lz - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.img.lz - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.img.lz - "85574aebeef03eb355bf8541955d06ea" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "DiskCopy 4.2"); public override IMediaImage _plugin => new DiscImages.DiskCopy42(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/NDIF/ROCo.cs b/Aaru.Tests/Images/DiskImagesFramework/NDIF/ROCo.cs index 57bad4046..0148a3521 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/NDIF/ROCo.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/NDIF/ROCo.cs @@ -37,219 +37,140 @@ namespace Aaru.Tests.Images.DiskImagesFramework.NDIF [TestFixture] public class ROCo : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.img", "DOS_720.img", "DOS_DMF.img", "DOS_SP_5Mb.img", "HFS_1440.img", "HFS_800.img", - "HFS_DMF.img", "HFSP_SP_5Mb.img", "HFS_SP_5Mb.img", "ProDOS_1440.img", "ProDOS_800.img", "ProDOS_DMF.img", - "UFS_1440.img", "UFS_720.img", "UFS_800.img", "UFS_DMF.img" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.img - 2880, - - // DOS_720.img - 1440, - - // DOS_DMF.img - 3360, - - // DOS_SP_5Mb.img - 10240, - - // HFS_1440.img - 2880, - - // HFS_800.img - 1600, - - // HFS_DMF.img - 3360, - - // HFSP_SP_5Mb.img - 10144, - - // HFS_SP_5Mb.img - 10240, - - // ProDOS_1440.img - 2880, - - // ProDOS_800.img - 1600, - - // ProDOS_DMF.img - 3360, - - // UFS_1440.img - 2880, - - // UFS_720.img - 1440, - - // UFS_800.img - 1600, - - // UFS_DMF.img - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.img - 512, - - // DOS_720.img - 512, - - // DOS_DMF.img - 512, - - // DOS_SP_5Mb.img - 512, - - // HFS_1440.img - 512, - - // HFS_800.img - 512, - - // HFS_DMF.img - 512, - - // HFSP_SP_5Mb.img - 512, - - // HFS_SP_5Mb.img - 512, - - // ProDOS_1440.img - 512, - - // ProDOS_800.img - 512, - - // ProDOS_DMF.img - 512, - - // UFS_1440.img - 512, - - // UFS_720.img - 512, - - // UFS_800.img - 512, - - // UFS_DMF.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.img - MediaType.DOS_35_HD, - - // DOS_720.img - MediaType.DOS_35_DS_DD_9, - - // DOS_DMF.img - MediaType.DMF, - - // DOS_SP_5Mb.img - MediaType.GENERIC_HDD, - - // HFS_1440.img - MediaType.DOS_35_HD, - - // HFS_800.img - MediaType.AppleSonyDS, - - // HFS_DMF.img - MediaType.DMF, - - // HFSP_SP_5Mb.img - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.img - MediaType.GENERIC_HDD, - - // ProDOS_1440.img - MediaType.DOS_35_HD, - - // ProDOS_800.img - MediaType.AppleSonyDS, - - // ProDOS_DMF.img - MediaType.DMF, - - // UFS_1440.img - MediaType.DOS_35_HD, - - // UFS_720.img - MediaType.DOS_35_DS_DD_9, - - // UFS_800.img - MediaType.AppleSonyDS, - - // UFS_DMF.img - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DOS_1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.img - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.img - "5841dbaceb4937df2518742c2d5cb8d5", - - // HFS_SP_5Mb.img - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.img - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.img - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.img - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.img - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.img - "cdfebf3f8b8f250dc6905a90dd1bc90f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "NDIF", "ROCo"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10144, + SectorSize = 512, + MD5 = "5841dbaceb4937df2518742c2d5cb8d5" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/NDIF/RdWr.cs b/Aaru.Tests/Images/DiskImagesFramework/NDIF/RdWr.cs index 83e5da04e..c1caf22ff 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/NDIF/RdWr.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/NDIF/RdWr.cs @@ -37,219 +37,140 @@ namespace Aaru.Tests.Images.DiskImagesFramework.NDIF [TestFixture] public class RdWr : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.img", "DOS_720.img", "DOS_DMF.img", "DOS_SP_5Mb.img", "HFS_1440.img", "HFS_800.img", - "HFS_DMF.img", "HFSP_SP_5Mb.img", "HFS_SP_5Mb.img", "ProDOS_1440.img", "ProDOS_800.img", "ProDOS_DMF.img", - "UFS_1440.img", "UFS_720.img", "UFS_800.img", "UFS_DMF.img" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.img - 2880, - - // DOS_720.img - 1440, - - // DOS_DMF.img - 3360, - - // DOS_SP_5Mb.img - 10240, - - // HFS_1440.img - 2880, - - // HFS_800.img - 1600, - - // HFS_DMF.img - 3360, - - // HFSP_SP_5Mb.img - 10240, - - // HFS_SP_5Mb.img - 10240, - - // ProDOS_1440.img - 2880, - - // ProDOS_800.img - 1600, - - // ProDOS_DMF.img - 3360, - - // UFS_1440.img - 2880, - - // UFS_720.img - 1440, - - // UFS_800.img - 1600, - - // UFS_DMF.img - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.img - 512, - - // DOS_720.img - 512, - - // DOS_DMF.img - 512, - - // DOS_SP_5Mb.img - 512, - - // HFS_1440.img - 512, - - // HFS_800.img - 512, - - // HFS_DMF.img - 512, - - // HFSP_SP_5Mb.img - 512, - - // HFS_SP_5Mb.img - 512, - - // ProDOS_1440.img - 512, - - // ProDOS_800.img - 512, - - // ProDOS_DMF.img - 512, - - // UFS_1440.img - 512, - - // UFS_720.img - 512, - - // UFS_800.img - 512, - - // UFS_DMF.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.img - MediaType.DOS_35_HD, - - // DOS_720.img - MediaType.DOS_35_DS_DD_9, - - // DOS_DMF.img - MediaType.DMF, - - // DOS_SP_5Mb.img - MediaType.GENERIC_HDD, - - // HFS_1440.img - MediaType.DOS_35_HD, - - // HFS_800.img - MediaType.AppleSonyDS, - - // HFS_DMF.img - MediaType.DMF, - - // HFSP_SP_5Mb.img - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.img - MediaType.GENERIC_HDD, - - // ProDOS_1440.img - MediaType.DOS_35_HD, - - // ProDOS_800.img - MediaType.AppleSonyDS, - - // ProDOS_DMF.img - MediaType.DMF, - - // UFS_1440.img - MediaType.DOS_35_HD, - - // UFS_720.img - MediaType.DOS_35_DS_DD_9, - - // UFS_800.img - MediaType.AppleSonyDS, - - // UFS_DMF.img - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DOS_1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.img - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.img - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.img - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.img - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.img - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.img - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.img - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.img - "cdfebf3f8b8f250dc6905a90dd1bc90f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "NDIF", "RdWr"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/NDIF/Rdxx.cs b/Aaru.Tests/Images/DiskImagesFramework/NDIF/Rdxx.cs index 62018892d..f6efd80ed 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/NDIF/Rdxx.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/NDIF/Rdxx.cs @@ -37,219 +37,140 @@ namespace Aaru.Tests.Images.DiskImagesFramework.NDIF [TestFixture] public class Rdxx : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.img", "DOS_720.img", "DOS_DMF.img", "DOS_SP_5Mb.img", "HFS_1440.img", "HFS_800.img", - "HFS_DMF.img", "HFSP_SP_5Mb.img", "HFS_SP_5Mb.img", "ProDOS_1440.img", "ProDOS_800.img", "ProDOS_DMF.img", - "UFS_1440.img", "UFS_720.img", "UFS_800.img", "UFS_DMF.img" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.img - 2880, - - // DOS_720.img - 1440, - - // DOS_DMF.img - 3360, - - // DOS_SP_5Mb.img - 10240, - - // HFS_1440.img - 2880, - - // HFS_800.img - 1600, - - // HFS_DMF.img - 3360, - - // HFSP_SP_5Mb.img - 10144, - - // HFS_SP_5Mb.img - 10240, - - // ProDOS_1440.img - 2880, - - // ProDOS_800.img - 1600, - - // ProDOS_DMF.img - 3360, - - // UFS_1440.img - 2880, - - // UFS_720.img - 1440, - - // UFS_800.img - 1600, - - // UFS_DMF.img - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.img - 512, - - // DOS_720.img - 512, - - // DOS_DMF.img - 512, - - // DOS_SP_5Mb.img - 512, - - // HFS_1440.img - 512, - - // HFS_800.img - 512, - - // HFS_DMF.img - 512, - - // HFSP_SP_5Mb.img - 512, - - // HFS_SP_5Mb.img - 512, - - // ProDOS_1440.img - 512, - - // ProDOS_800.img - 512, - - // ProDOS_DMF.img - 512, - - // UFS_1440.img - 512, - - // UFS_720.img - 512, - - // UFS_800.img - 512, - - // UFS_DMF.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.img - MediaType.DOS_35_HD, - - // DOS_720.img - MediaType.DOS_35_DS_DD_9, - - // DOS_DMF.img - MediaType.DMF, - - // DOS_SP_5Mb.img - MediaType.GENERIC_HDD, - - // HFS_1440.img - MediaType.DOS_35_HD, - - // HFS_800.img - MediaType.AppleSonyDS, - - // HFS_DMF.img - MediaType.DMF, - - // HFSP_SP_5Mb.img - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.img - MediaType.GENERIC_HDD, - - // ProDOS_1440.img - MediaType.DOS_35_HD, - - // ProDOS_800.img - MediaType.AppleSonyDS, - - // ProDOS_DMF.img - MediaType.DMF, - - // UFS_1440.img - MediaType.DOS_35_HD, - - // UFS_720.img - MediaType.DOS_35_DS_DD_9, - - // UFS_800.img - MediaType.AppleSonyDS, - - // UFS_DMF.img - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // DOS_1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.img - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.img - "5841dbaceb4937df2518742c2d5cb8d5", - - // HFS_SP_5Mb.img - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.img - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.img - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.img - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.img - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.img - "cdfebf3f8b8f250dc6905a90dd1bc90f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "NDIF", "Rdxx"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10144, + SectorSize = 512, + MD5 = "5841dbaceb4937df2518742c2d5cb8d5" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/IPOD.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/IPOD.cs index 570d783fb..a9fdb75de 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/IPOD.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/IPOD.cs @@ -37,232 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class IPOD : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg.lz", "DOS_720.dmg.lz", "DOS_DMF.dmg.lz", "DOS_SP_5Mb.dmg.lz", "HFS_1440.dmg.lz", - "HFS_800.dmg.lz", "HFS_DMF.dmg.lz", "HFSP_SP_5Mb.dmg.lz", "HFS_SP_5Mb.dmg.lz", "ProDOS_1440.dmg.lz", - "ProDOS_800.dmg.lz", "ProDOS_DMF.dmg.lz", "UFS_1440.dmg.lz", "UFS_720.dmg.lz", "UFS_800.dmg.lz", - "UFS_DMF.dmg.lz", "UFS_SP_5Mb.dmg.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg.lz - 2880, - - // DOS_720.dmg.lz - 1440, - - // DOS_DMF.dmg.lz - 3360, - - // DOS_SP_5Mb.dmg.lz - 10240, - - // HFS_1440.dmg.lz - 2880, - - // HFS_800.dmg.lz - 1600, - - // HFS_DMF.dmg.lz - 3360, - - // HFSP_SP_5Mb.dmg.lz - 10240, - - // HFS_SP_5Mb.dmg.lz - 10240, - - // ProDOS_1440.dmg.lz - 2880, - - // ProDOS_800.dmg.lz - 1600, - - // ProDOS_DMF.dmg.lz - 3360, - - // UFS_1440.dmg.lz - 2880, - - // UFS_720.dmg.lz - 1440, - - // UFS_800.dmg.lz - 1600, - - // UFS_DMF.dmg.lz - 3360, - - // UFS_SP_5Mb.dmg.lz - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg.lz - 512, - - // DOS_720.dmg.lz - 512, - - // DOS_DMF.dmg.lz - 512, - - // DOS_SP_5Mb.dmg.lz - 512, - - // HFS_1440.dmg.lz - 512, - - // HFS_800.dmg.lz - 512, - - // HFS_DMF.dmg.lz - 512, - - // HFSP_SP_5Mb.dmg.lz - 512, - - // HFS_SP_5Mb.dmg.lz - 512, - - // ProDOS_1440.dmg.lz - 512, - - // ProDOS_800.dmg.lz - 512, - - // ProDOS_DMF.dmg.lz - 512, - - // UFS_1440.dmg.lz - 512, - - // UFS_720.dmg.lz - 512, - - // UFS_800.dmg.lz - 512, - - // UFS_DMF.dmg.lz - 512, - - // UFS_SP_5Mb.dmg.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_720.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_720.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg.lz - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg.lz - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg.lz - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg.lz - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg.lz - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg.lz - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg.lz - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg.lz - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg.lz - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg.lz - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg.lz - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "IPOD"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDBZ.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDBZ.cs index 4e15c53ab..680573e1e 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDBZ.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDBZ.cs @@ -37,232 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class UDBZ : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg.lz", "DOS_720.dmg.lz", "DOS_DMF.dmg.lz", "DOS_SP_5Mb.dmg.lz", "HFS_1440.dmg.lz", - "HFS_800.dmg.lz", "HFS_DMF.dmg.lz", "HFSP_SP_5Mb.dmg.lz", "HFS_SP_5Mb.dmg.lz", "ProDOS_1440.dmg.lz", - "ProDOS_800.dmg.lz", "ProDOS_DMF.dmg.lz", "UFS_1440.dmg.lz", "UFS_720.dmg.lz", "UFS_800.dmg.lz", - "UFS_DMF.dmg.lz", "UFS_SP_5Mb.dmg.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg.lz - 2880, - - // DOS_720.dmg.lz - 1440, - - // DOS_DMF.dmg.lz - 3360, - - // DOS_SP_5Mb.dmg.lz - 10240, - - // HFS_1440.dmg.lz - 2880, - - // HFS_800.dmg.lz - 1600, - - // HFS_DMF.dmg.lz - 3360, - - // HFSP_SP_5Mb.dmg.lz - 10240, - - // HFS_SP_5Mb.dmg.lz - 10240, - - // ProDOS_1440.dmg.lz - 2880, - - // ProDOS_800.dmg.lz - 1600, - - // ProDOS_DMF.dmg.lz - 3360, - - // UFS_1440.dmg.lz - 2880, - - // UFS_720.dmg.lz - 1440, - - // UFS_800.dmg.lz - 1600, - - // UFS_DMF.dmg.lz - 3360, - - // UFS_SP_5Mb.dmg.lz - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg.lz - 512, - - // DOS_720.dmg.lz - 512, - - // DOS_DMF.dmg.lz - 512, - - // DOS_SP_5Mb.dmg.lz - 512, - - // HFS_1440.dmg.lz - 512, - - // HFS_800.dmg.lz - 512, - - // HFS_DMF.dmg.lz - 512, - - // HFSP_SP_5Mb.dmg.lz - 512, - - // HFS_SP_5Mb.dmg.lz - 512, - - // ProDOS_1440.dmg.lz - 512, - - // ProDOS_800.dmg.lz - 512, - - // ProDOS_DMF.dmg.lz - 512, - - // UFS_1440.dmg.lz - 512, - - // UFS_720.dmg.lz - 512, - - // UFS_800.dmg.lz - 512, - - // UFS_DMF.dmg.lz - 512, - - // UFS_SP_5Mb.dmg.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_720.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_720.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg.lz - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg.lz - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg.lz - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg.lz - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg.lz - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg.lz - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg.lz - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg.lz - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg.lz - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg.lz - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg.lz - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "UDBZ"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDCO.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDCO.cs index 55c936144..d96c39be5 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDCO.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDCO.cs @@ -37,232 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class UDCO : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg.lz", "DOS_720.dmg.lz", "DOS_DMF.dmg.lz", "DOS_SP_5Mb.dmg.lz", "HFS_1440.dmg.lz", - "HFS_800.dmg.lz", "HFS_DMF.dmg.lz", "HFSP_SP_5Mb.dmg.lz", "HFS_SP_5Mb.dmg.lz", "ProDOS_1440.dmg.lz", - "ProDOS_800.dmg.lz", "ProDOS_DMF.dmg.lz", "UFS_1440.dmg.lz", "UFS_720.dmg.lz", "UFS_800.dmg.lz", - "UFS_DMF.dmg.lz", "UFS_SP_5Mb.dmg.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg.lz - 2880, - - // DOS_720.dmg.lz - 1440, - - // DOS_DMF.dmg.lz - 3360, - - // DOS_SP_5Mb.dmg.lz - 10240, - - // HFS_1440.dmg.lz - 2880, - - // HFS_800.dmg.lz - 1600, - - // HFS_DMF.dmg.lz - 3360, - - // HFSP_SP_5Mb.dmg.lz - 10240, - - // HFS_SP_5Mb.dmg.lz - 10240, - - // ProDOS_1440.dmg.lz - 2880, - - // ProDOS_800.dmg.lz - 1600, - - // ProDOS_DMF.dmg.lz - 3360, - - // UFS_1440.dmg.lz - 2880, - - // UFS_720.dmg.lz - 1440, - - // UFS_800.dmg.lz - 1600, - - // UFS_DMF.dmg.lz - 3360, - - // UFS_SP_5Mb.dmg.lz - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg.lz - 512, - - // DOS_720.dmg.lz - 512, - - // DOS_DMF.dmg.lz - 512, - - // DOS_SP_5Mb.dmg.lz - 512, - - // HFS_1440.dmg.lz - 512, - - // HFS_800.dmg.lz - 512, - - // HFS_DMF.dmg.lz - 512, - - // HFSP_SP_5Mb.dmg.lz - 512, - - // HFS_SP_5Mb.dmg.lz - 512, - - // ProDOS_1440.dmg.lz - 512, - - // ProDOS_800.dmg.lz - 512, - - // ProDOS_DMF.dmg.lz - 512, - - // UFS_1440.dmg.lz - 512, - - // UFS_720.dmg.lz - 512, - - // UFS_800.dmg.lz - 512, - - // UFS_DMF.dmg.lz - 512, - - // UFS_SP_5Mb.dmg.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_720.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_720.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg.lz - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg.lz - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg.lz - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg.lz - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg.lz - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg.lz - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg.lz - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg.lz - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg.lz - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg.lz - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg.lz - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "UDCO"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDRO.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDRO.cs index 04594e3ee..222ac9e57 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDRO.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDRO.cs @@ -37,232 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class UDRO : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg.lz", "DOS_720.dmg.lz", "DOS_DMF.dmg.lz", "DOS_SP_5Mb.dmg.lz", "HFS_1440.dmg.lz", - "HFS_800.dmg.lz", "HFS_DMF.dmg.lz", "HFSP_SP_5Mb.dmg.lz", "HFS_SP_5Mb.dmg.lz", "ProDOS_1440.dmg.lz", - "ProDOS_800.dmg.lz", "ProDOS_DMF.dmg.lz", "UFS_1440.dmg.lz", "UFS_720.dmg.lz", "UFS_800.dmg.lz", - "UFS_DMF.dmg.lz", "UFS_SP_5Mb.dmg.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg.lz - 2880, - - // DOS_720.dmg.lz - 1440, - - // DOS_DMF.dmg.lz - 3360, - - // DOS_SP_5Mb.dmg.lz - 10240, - - // HFS_1440.dmg.lz - 2880, - - // HFS_800.dmg.lz - 1600, - - // HFS_DMF.dmg.lz - 3360, - - // HFSP_SP_5Mb.dmg.lz - 10240, - - // HFS_SP_5Mb.dmg.lz - 10240, - - // ProDOS_1440.dmg.lz - 2880, - - // ProDOS_800.dmg.lz - 1600, - - // ProDOS_DMF.dmg.lz - 3360, - - // UFS_1440.dmg.lz - 2880, - - // UFS_720.dmg.lz - 1440, - - // UFS_800.dmg.lz - 1600, - - // UFS_DMF.dmg.lz - 3360, - - // UFS_SP_5Mb.dmg.lz - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg.lz - 512, - - // DOS_720.dmg.lz - 512, - - // DOS_DMF.dmg.lz - 512, - - // DOS_SP_5Mb.dmg.lz - 512, - - // HFS_1440.dmg.lz - 512, - - // HFS_800.dmg.lz - 512, - - // HFS_DMF.dmg.lz - 512, - - // HFSP_SP_5Mb.dmg.lz - 512, - - // HFS_SP_5Mb.dmg.lz - 512, - - // ProDOS_1440.dmg.lz - 512, - - // ProDOS_800.dmg.lz - 512, - - // ProDOS_DMF.dmg.lz - 512, - - // UFS_1440.dmg.lz - 512, - - // UFS_720.dmg.lz - 512, - - // UFS_800.dmg.lz - 512, - - // UFS_DMF.dmg.lz - 512, - - // UFS_SP_5Mb.dmg.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_720.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_720.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg.lz - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg.lz - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg.lz - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg.lz - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg.lz - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg.lz - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg.lz - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg.lz - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg.lz - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg.lz - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg.lz - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "UDRO"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDRW.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDRW.cs index eca0424a8..c0989a433 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDRW.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDRW.cs @@ -37,231 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class UDRW : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg", "DOS_720.dmg", "DOS_DMF.dmg", "DOS_SP_5Mb.dmg", "HFS_1440.dmg", "HFS_800.dmg", - "HFS_DMF.dmg", "HFSP_SP_5Mb.dmg", "HFS_SP_5Mb.dmg", "ProDOS_1440.dmg", "ProDOS_800.dmg", "ProDOS_DMF.dmg", - "UFS_1440.dmg", "UFS_720.dmg", "UFS_800.dmg", "UFS_DMF.dmg", "UFS_SP_5Mb.dmg" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg - 2880, - - // DOS_720.dmg - 1440, - - // DOS_DMF.dmg - 3360, - - // DOS_SP_5Mb.dmg - 10240, - - // HFS_1440.dmg - 2880, - - // HFS_800.dmg - 1600, - - // HFS_DMF.dmg - 3360, - - // HFSP_SP_5Mb.dmg - 10240, - - // HFS_SP_5Mb.dmg - 10240, - - // ProDOS_1440.dmg - 2880, - - // ProDOS_800.dmg - 1600, - - // ProDOS_DMF.dmg - 3360, - - // UFS_1440.dmg - 2880, - - // UFS_720.dmg - 1440, - - // UFS_800.dmg - 1600, - - // UFS_DMF.dmg - 3360, - - // UFS_SP_5Mb.dmg - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg - 512, - - // DOS_720.dmg - 512, - - // DOS_DMF.dmg - 512, - - // DOS_SP_5Mb.dmg - 512, - - // HFS_1440.dmg - 512, - - // HFS_800.dmg - 512, - - // HFS_DMF.dmg - 512, - - // HFSP_SP_5Mb.dmg - 512, - - // HFS_SP_5Mb.dmg - 512, - - // ProDOS_1440.dmg - 512, - - // ProDOS_800.dmg - 512, - - // ProDOS_DMF.dmg - 512, - - // UFS_1440.dmg - 512, - - // UFS_720.dmg - 512, - - // UFS_800.dmg - 512, - - // UFS_DMF.dmg - 512, - - // UFS_SP_5Mb.dmg - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg - MediaType.GENERIC_HDD, - - // DOS_720.dmg - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg - MediaType.GENERIC_HDD, - - // HFS_1440.dmg - MediaType.GENERIC_HDD, - - // HFS_800.dmg - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg - MediaType.GENERIC_HDD, - - // UFS_1440.dmg - MediaType.GENERIC_HDD, - - // UFS_720.dmg - MediaType.GENERIC_HDD, - - // UFS_800.dmg - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "UDRW"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDTO.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDTO.cs index b41c7b736..066603d2e 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDTO.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDTO.cs @@ -37,231 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class UDTO : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg", "DOS_720.dmg", "DOS_DMF.dmg", "DOS_SP_5Mb.dmg", "HFS_1440.dmg", "HFS_800.dmg", - "HFS_DMF.dmg", "HFSP_SP_5Mb.dmg", "HFS_SP_5Mb.dmg", "ProDOS_1440.dmg", "ProDOS_800.dmg", "ProDOS_DMF.dmg", - "UFS_1440.dmg", "UFS_720.dmg", "UFS_800.dmg", "UFS_DMF.dmg", "UFS_SP_5Mb.dmg" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg - 2880, - - // DOS_720.dmg - 1440, - - // DOS_DMF.dmg - 3360, - - // DOS_SP_5Mb.dmg - 10240, - - // HFS_1440.dmg - 2880, - - // HFS_800.dmg - 1600, - - // HFS_DMF.dmg - 3360, - - // HFSP_SP_5Mb.dmg - 10240, - - // HFS_SP_5Mb.dmg - 10240, - - // ProDOS_1440.dmg - 2880, - - // ProDOS_800.dmg - 1600, - - // ProDOS_DMF.dmg - 3360, - - // UFS_1440.dmg - 2880, - - // UFS_720.dmg - 1440, - - // UFS_800.dmg - 1600, - - // UFS_DMF.dmg - 3360, - - // UFS_SP_5Mb.dmg - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg - 512, - - // DOS_720.dmg - 512, - - // DOS_DMF.dmg - 512, - - // DOS_SP_5Mb.dmg - 512, - - // HFS_1440.dmg - 512, - - // HFS_800.dmg - 512, - - // HFS_DMF.dmg - 512, - - // HFSP_SP_5Mb.dmg - 512, - - // HFS_SP_5Mb.dmg - 512, - - // ProDOS_1440.dmg - 512, - - // ProDOS_800.dmg - 512, - - // ProDOS_DMF.dmg - 512, - - // UFS_1440.dmg - 512, - - // UFS_720.dmg - 512, - - // UFS_800.dmg - 512, - - // UFS_DMF.dmg - 512, - - // UFS_SP_5Mb.dmg - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg - MediaType.GENERIC_HDD, - - // DOS_720.dmg - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg - MediaType.GENERIC_HDD, - - // HFS_1440.dmg - MediaType.GENERIC_HDD, - - // HFS_800.dmg - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg - MediaType.GENERIC_HDD, - - // UFS_1440.dmg - MediaType.GENERIC_HDD, - - // UFS_720.dmg - MediaType.GENERIC_HDD, - - // UFS_800.dmg - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "UDTO"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDZO.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDZO.cs index b8280c1cc..bd5a155e1 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDZO.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UDZO.cs @@ -37,232 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class UDZO : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg.lz", "DOS_720.dmg.lz", "DOS_DMF.dmg.lz", "DOS_SP_5Mb.dmg.lz", "HFS_1440.dmg.lz", - "HFS_800.dmg.lz", "HFS_DMF.dmg.lz", "HFSP_SP_5Mb.dmg.lz", "HFS_SP_5Mb.dmg.lz", "ProDOS_1440.dmg.lz", - "ProDOS_800.dmg.lz", "ProDOS_DMF.dmg.lz", "UFS_1440.dmg.lz", "UFS_720.dmg.lz", "UFS_800.dmg.lz", - "UFS_DMF.dmg.lz", "UFS_SP_5Mb.dmg.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg.lz - 2880, - - // DOS_720.dmg.lz - 1440, - - // DOS_DMF.dmg.lz - 3360, - - // DOS_SP_5Mb.dmg.lz - 10240, - - // HFS_1440.dmg.lz - 2880, - - // HFS_800.dmg.lz - 1600, - - // HFS_DMF.dmg.lz - 3360, - - // HFSP_SP_5Mb.dmg.lz - 10240, - - // HFS_SP_5Mb.dmg.lz - 10240, - - // ProDOS_1440.dmg.lz - 2880, - - // ProDOS_800.dmg.lz - 1600, - - // ProDOS_DMF.dmg.lz - 3360, - - // UFS_1440.dmg.lz - 2880, - - // UFS_720.dmg.lz - 1440, - - // UFS_800.dmg.lz - 1600, - - // UFS_DMF.dmg.lz - 3360, - - // UFS_SP_5Mb.dmg.lz - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg.lz - 512, - - // DOS_720.dmg.lz - 512, - - // DOS_DMF.dmg.lz - 512, - - // DOS_SP_5Mb.dmg.lz - 512, - - // HFS_1440.dmg.lz - 512, - - // HFS_800.dmg.lz - 512, - - // HFS_DMF.dmg.lz - 512, - - // HFSP_SP_5Mb.dmg.lz - 512, - - // HFS_SP_5Mb.dmg.lz - 512, - - // ProDOS_1440.dmg.lz - 512, - - // ProDOS_800.dmg.lz - 512, - - // ProDOS_DMF.dmg.lz - 512, - - // UFS_1440.dmg.lz - 512, - - // UFS_720.dmg.lz - 512, - - // UFS_800.dmg.lz - 512, - - // UFS_DMF.dmg.lz - 512, - - // UFS_SP_5Mb.dmg.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_720.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_720.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg.lz - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg.lz - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg.lz - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg.lz - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg.lz - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg.lz - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg.lz - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg.lz - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg.lz - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg.lz - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg.lz - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "UDZO"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UFBI.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UFBI.cs index a4688f81e..12191fdbe 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/UFBI.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/UFBI.cs @@ -37,232 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class UFBI : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg.lz", "DOS_720.dmg.lz", "DOS_DMF.dmg.lz", "DOS_SP_5Mb.dmg.lz", "HFS_1440.dmg.lz", - "HFS_800.dmg.lz", "HFS_DMF.dmg.lz", "HFSP_SP_5Mb.dmg.lz", "HFS_SP_5Mb.dmg.lz", "ProDOS_1440.dmg.lz", - "ProDOS_800.dmg.lz", "ProDOS_DMF.dmg.lz", "UFS_1440.dmg.lz", "UFS_720.dmg.lz", "UFS_800.dmg.lz", - "UFS_DMF.dmg.lz", "UFS_SP_5Mb.dmg.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg.lz - 2880, - - // DOS_720.dmg.lz - 1440, - - // DOS_DMF.dmg.lz - 3360, - - // DOS_SP_5Mb.dmg.lz - 10240, - - // HFS_1440.dmg.lz - 2880, - - // HFS_800.dmg.lz - 1600, - - // HFS_DMF.dmg.lz - 3360, - - // HFSP_SP_5Mb.dmg.lz - 10240, - - // HFS_SP_5Mb.dmg.lz - 10240, - - // ProDOS_1440.dmg.lz - 2880, - - // ProDOS_800.dmg.lz - 1600, - - // ProDOS_DMF.dmg.lz - 3360, - - // UFS_1440.dmg.lz - 2880, - - // UFS_720.dmg.lz - 1440, - - // UFS_800.dmg.lz - 1600, - - // UFS_DMF.dmg.lz - 3360, - - // UFS_SP_5Mb.dmg.lz - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg.lz - 512, - - // DOS_720.dmg.lz - 512, - - // DOS_DMF.dmg.lz - 512, - - // DOS_SP_5Mb.dmg.lz - 512, - - // HFS_1440.dmg.lz - 512, - - // HFS_800.dmg.lz - 512, - - // HFS_DMF.dmg.lz - 512, - - // HFSP_SP_5Mb.dmg.lz - 512, - - // HFS_SP_5Mb.dmg.lz - 512, - - // ProDOS_1440.dmg.lz - 512, - - // ProDOS_800.dmg.lz - 512, - - // ProDOS_DMF.dmg.lz - 512, - - // UFS_1440.dmg.lz - 512, - - // UFS_720.dmg.lz - 512, - - // UFS_800.dmg.lz - 512, - - // UFS_DMF.dmg.lz - 512, - - // UFS_SP_5Mb.dmg.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_720.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_720.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg.lz - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg.lz - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg.lz - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg.lz - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg.lz - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg.lz - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg.lz - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg.lz - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg.lz - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg.lz - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg.lz - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "UFBI"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskImagesFramework/UDIF/ULMO.cs b/Aaru.Tests/Images/DiskImagesFramework/UDIF/ULMO.cs index dc5b1b4fd..828d000b6 100644 --- a/Aaru.Tests/Images/DiskImagesFramework/UDIF/ULMO.cs +++ b/Aaru.Tests/Images/DiskImagesFramework/UDIF/ULMO.cs @@ -37,232 +37,148 @@ namespace Aaru.Tests.Images.DiskImagesFramework.UDIF [TestFixture] public class ULMO : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DOS_1440.dmg.lz", "DOS_720.dmg.lz", "DOS_DMF.dmg.lz", "DOS_SP_5Mb.dmg.lz", "HFS_1440.dmg.lz", - "HFS_800.dmg.lz", "HFS_DMF.dmg.lz", "HFSP_SP_5Mb.dmg.lz", "HFS_SP_5Mb.dmg.lz", "ProDOS_1440.dmg.lz", - "ProDOS_800.dmg.lz", "ProDOS_DMF.dmg.lz", "UFS_1440.dmg.lz", "UFS_720.dmg.lz", "UFS_800.dmg.lz", - "UFS_DMF.dmg.lz", "UFS_SP_5Mb.dmg.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DOS_1440.dmg.lz - 2880, - - // DOS_720.dmg.lz - 1440, - - // DOS_DMF.dmg.lz - 3360, - - // DOS_SP_5Mb.dmg.lz - 10240, - - // HFS_1440.dmg.lz - 2880, - - // HFS_800.dmg.lz - 1600, - - // HFS_DMF.dmg.lz - 3360, - - // HFSP_SP_5Mb.dmg.lz - 10240, - - // HFS_SP_5Mb.dmg.lz - 10240, - - // ProDOS_1440.dmg.lz - 2880, - - // ProDOS_800.dmg.lz - 1600, - - // ProDOS_DMF.dmg.lz - 3360, - - // UFS_1440.dmg.lz - 2880, - - // UFS_720.dmg.lz - 1440, - - // UFS_800.dmg.lz - 1600, - - // UFS_DMF.dmg.lz - 3360, - - // UFS_SP_5Mb.dmg.lz - 10304 - }; - - public override uint[] _sectorSize => new uint[] - { - // DOS_1440.dmg.lz - 512, - - // DOS_720.dmg.lz - 512, - - // DOS_DMF.dmg.lz - 512, - - // DOS_SP_5Mb.dmg.lz - 512, - - // HFS_1440.dmg.lz - 512, - - // HFS_800.dmg.lz - 512, - - // HFS_DMF.dmg.lz - 512, - - // HFSP_SP_5Mb.dmg.lz - 512, - - // HFS_SP_5Mb.dmg.lz - 512, - - // ProDOS_1440.dmg.lz - 512, - - // ProDOS_800.dmg.lz - 512, - - // ProDOS_DMF.dmg.lz - 512, - - // UFS_1440.dmg.lz - 512, - - // UFS_720.dmg.lz - 512, - - // UFS_800.dmg.lz - 512, - - // UFS_DMF.dmg.lz - 512, - - // UFS_SP_5Mb.dmg.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_720.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // DOS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // HFSP_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // HFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_800.dmg.lz - MediaType.GENERIC_HDD, - - // ProDOS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_1440.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_720.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_800.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_DMF.dmg.lz - MediaType.GENERIC_HDD, - - // UFS_SP_5Mb.dmg.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // DOS_1440.dmg.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS_720.dmg.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOS_DMF.dmg.lz - "92ea7a359957012a682ba126cfdef0ce", - - // DOS_SP_5Mb.dmg.lz - "df3b4331a4a5652393ff55f001998439", - - // HFS_1440.dmg.lz - "3160038ca028ccf52ad7863790072145", - - // HFS_800.dmg.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // HFS_DMF.dmg.lz - "652dc979c177f2d8e846587158b38478", - - // HFSP_SP_5Mb.dmg.lz - "894fa8596f64e161fe7d7f81e74a8839", - - // HFS_SP_5Mb.dmg.lz - "506c3deb99e78579b4d77e76224d3b4e", - - // ProDOS_1440.dmg.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // ProDOS_800.dmg.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // ProDOS_DMF.dmg.lz - "7fbf0251a93cb36d98e68b7d19624de5", - - // UFS_1440.dmg.lz - "b37823c7a90d1917f719ba5927b23da8", - - // UFS_720.dmg.lz - "4942032f7bf1d115237ea1764424828b", - - // UFS_800.dmg.lz - "85574aebeef03eb355bf8541955d06ea", - - // UFS_DMF.dmg.lz - "cdfebf3f8b8f250dc6905a90dd1bc90f", - - // UFS_SP_5Mb.dmg.lz - "b7d4ad55c7702658081b6578b588a57f" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DiskImagesFramework", "UDIF", "ULMO"); public override IMediaImage _plugin => new Udif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "DOS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "df3b4331a4a5652393ff55f001998439" + }, + new BlockImageTestExpected + { + TestFile = "HFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "HFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "HFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "HFSP_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "894fa8596f64e161fe7d7f81e74a8839" + }, + new BlockImageTestExpected + { + TestFile = "HFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10240, + SectorSize = 512, + MD5 = "506c3deb99e78579b4d77e76224d3b4e" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "ProDOS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + }, + new BlockImageTestExpected + { + TestFile = "UFS_1440.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b37823c7a90d1917f719ba5927b23da8" + }, + new BlockImageTestExpected + { + TestFile = "UFS_720.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1440, + SectorSize = 512, + MD5 = "4942032f7bf1d115237ea1764424828b" + }, + new BlockImageTestExpected + { + TestFile = "UFS_800.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "UFS_DMF.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3360, + SectorSize = 512, + MD5 = "cdfebf3f8b8f250dc6905a90dd1bc90f" + }, + new BlockImageTestExpected + { + TestFile = "UFS_SP_5Mb.dmg.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10304, + SectorSize = 512, + MD5 = "b7d4ad55c7702658081b6578b588a57f" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskUtilities/ImageDisk.cs b/Aaru.Tests/Images/DiskUtilities/ImageDisk.cs index b5ff2ae84..e9a256ec9 100644 --- a/Aaru.Tests/Images/DiskUtilities/ImageDisk.cs +++ b/Aaru.Tests/Images/DiskUtilities/ImageDisk.cs @@ -37,73 +37,44 @@ namespace Aaru.Tests.Images.DiskUtilities [TestFixture] public class ImageDisk : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "mf2dd_acorn.imd.lz", "mf2dd_fdformat_820.imd.lz", "mf2hd_2m.imd.lz", "mf2hd_fdformat_172.imd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // mf2dd_acorn.imd.lz - 800, - - // mf2dd_fdformat_820.imd.lz - 1640, - - // mf2hd_2m.imd.lz - 1812, - - // mf2hd_fdformat_172.imd.lz - 3444 - }; - - public override uint[] _sectorSize => new uint[] - { - // mf2dd_acorn.imd.lz - 1024, - - // mf2dd_fdformat_820.imd.lz - 512, - - // mf2hd_2m.imd.lz - 1024, - - // mf2hd_fdformat_172.imd.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // mf2dd_acorn.imd.lz - MediaType.ACORN_35_DS_DD, - - // mf2dd_fdformat_820.imd.lz - MediaType.FDFORMAT_35_DD, - - // mf2hd_2m.imd.lz - MediaType.Unknown, - - // mf2hd_fdformat_172.imd.lz - MediaType.FDFORMAT_35_HD - }; - - public override string[] _md5S => new[] - { - // mf2dd_acorn.imd.lz - "2626f65b49ec085253c41fa2e2a9e788", - - // mf2dd_fdformat_820.imd.lz - "9d978dff1196b456b8372d78e6b17970", - - // mf2hd_2m.imd.lz - "7ee82cecd23b30cc9aa6f0ec59877851", - - // mf2hd_fdformat_172.imd.lz - "9dea1e119a73a21a38d134f36b2e5564" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "disk-analyse", "ImageDisk"); public override IMediaImage _plugin => new Imd(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "mf2dd_acorn.imd.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "2626f65b49ec085253c41fa2e2a9e788" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.imd.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "9d978dff1196b456b8372d78e6b17970" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 1812, + SectorSize = 1024, + MD5 = "7ee82cecd23b30cc9aa6f0ec59877851" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.imd.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "9dea1e119a73a21a38d134f36b2e5564" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DiskUtilities/Raw.cs b/Aaru.Tests/Images/DiskUtilities/Raw.cs index 49f9e6f83..9fb6bcc85 100644 --- a/Aaru.Tests/Images/DiskUtilities/Raw.cs +++ b/Aaru.Tests/Images/DiskUtilities/Raw.cs @@ -37,106 +37,68 @@ namespace Aaru.Tests.Images.DiskUtilities [TestFixture] public class Raw : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "mf2dd_acorn.img.lz", "mf2dd_amiga.adf.lz", "mf2dd_fdformat_820.img.lz", "mf2hd_2m.img.lz", - "mf2hd_2m_max.img.lz", "mf2hd_fdformat_172.img.lz", "mf2hd_xdf.img.lz" - }; - public override ulong[] _sectors => new ulong[] - { - // mf2dd_acorn.img.lz - 1600, - - // mf2dd_amiga.adf.lz - 1760, - - // mf2dd_fdformat_820.img.lz - 1640, - - // mf2hd_2m.img.lz - 3605, - - // mf2hd_2m_max.img.lz - 3768, - - // mf2hd_fdformat_172.img.lz - 3444, - - // mf2hd_xdf.img.lz - 670 - }; - public override uint[] _sectorSize => new uint[] - { - // mf2dd_acorn.img.lz - 512, - - // mf2dd_amiga.adf.lz - 512, - - // mf2dd_fdformat_820.img.lz - 512, - - // mf2hd_2m.img.lz - 512, - - // mf2hd_2m_max.img.lz - 512, - - // mf2hd_fdformat_172.img.lz - 512, - - // mf2hd_xdf.img.lz - 8192 - }; - public override MediaType[] _mediaTypes => new[] - { - // mf2dd_acorn.img.lz - MediaType.AppleSonyDS, - - // mf2dd_amiga.adf.lz - MediaType.CBM_AMIGA_35_DD, - - // mf2dd_fdformat_820.img.lz - MediaType.FDFORMAT_35_DD, - - // mf2hd_2m.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_2m_max.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_fdformat_172.img.lz - MediaType.FDFORMAT_35_HD, - - // mf2hd_xdf.img.lz - MediaType.XDF_35 - }; - public override string[] _md5S => new[] - { - // mf2dd_acorn.img.lz - "2626f65b49ec085253c41fa2e2a9e788", - - // mf2dd_amiga.adf.lz - "7db6730656efb22695cdf0a49e2674c9", - - // mf2dd_fdformat_820.img.lz - "9d978dff1196b456b8372d78e6b17970", - - // mf2hd_2m.img.lz - "7ee82cecd23b30cc9aa6f0ec59877851", - - // mf2hd_2m_max.img.lz - "c96c0be31797a0e6c9f23aad8ae38555", - - // mf2hd_fdformat_172.img.lz - "9dea1e119a73a21a38d134f36b2e5564", - - // mf2hd_xdf.img.lz - "UNKNOWN" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "disk-analyse", "raw"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "mf2dd_acorn.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "2626f65b49ec085253c41fa2e2a9e788" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_amiga.adf.lz", + MediaType = MediaType.CBM_AMIGA_35_DD, + Sectors = 1760, + SectorSize = 512, + MD5 = "7db6730656efb22695cdf0a49e2674c9" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "9d978dff1196b456b8372d78e6b17970" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3605, + SectorSize = 512, + MD5 = "7ee82cecd23b30cc9aa6f0ec59877851" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3768, + SectorSize = 512, + MD5 = "c96c0be31797a0e6c9f23aad8ae38555" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.img.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "9dea1e119a73a21a38d134f36b2e5564" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.img.lz", + MediaType = MediaType.XDF_35, + Sectors = 670, + SectorSize = 8192, + MD5 = "UNKNOWN" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/DriDiskCopy.cs b/Aaru.Tests/Images/DriDiskCopy.cs index b51da983c..6e1d15c41 100644 --- a/Aaru.Tests/Images/DriDiskCopy.cs +++ b/Aaru.Tests/Images/DriDiskCopy.cs @@ -36,2321 +36,1516 @@ namespace Aaru.Tests.Images [TestFixture] public class DriDiskCopy : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DSKA0000.IMG.lz", "DSKA0001.IMG.lz", "DSKA0009.IMG.lz", "DSKA0010.IMG.lz", "DSKA0024.IMG.lz", - "DSKA0025.IMG.lz", "DSKA0030.IMG.lz", "DSKA0035.IMG.lz", "DSKA0036.IMG.lz", "DSKA0037.IMG.lz", - "DSKA0038.IMG.lz", "DSKA0039.IMG.lz", "DSKA0040.IMG.lz", "DSKA0041.IMG.lz", "DSKA0042.IMG.lz", - "DSKA0043.IMG.lz", "DSKA0044.IMG.lz", "DSKA0045.IMG.lz", "DSKA0046.IMG.lz", "DSKA0047.IMG.lz", - "DSKA0048.IMG.lz", "DSKA0049.IMG.lz", "DSKA0050.IMG.lz", "DSKA0051.IMG.lz", "DSKA0052.IMG.lz", - "DSKA0053.IMG.lz", "DSKA0054.IMG.lz", "DSKA0055.IMG.lz", "DSKA0056.IMG.lz", "DSKA0057.IMG.lz", - "DSKA0058.IMG.lz", "DSKA0059.IMG.lz", "DSKA0060.IMG.lz", "DSKA0069.IMG.lz", "DSKA0073.IMG.lz", - "DSKA0074.IMG.lz", "DSKA0075.IMG.lz", "DSKA0076.IMG.lz", "DSKA0077.IMG.lz", "DSKA0078.IMG.lz", - "DSKA0080.IMG.lz", "DSKA0081.IMG.lz", "DSKA0082.IMG.lz", "DSKA0083.IMG.lz", "DSKA0084.IMG.lz", - "DSKA0085.IMG.lz", "DSKA0089.IMG.lz", "DSKA0090.IMG.lz", "DSKA0091.IMG.lz", "DSKA0092.IMG.lz", - "DSKA0093.IMG.lz", "DSKA0094.IMG.lz", "DSKA0097.IMG.lz", "DSKA0098.IMG.lz", "DSKA0099.IMG.lz", - "DSKA0101.IMG.lz", "DSKA0103.IMG.lz", "DSKA0105.IMG.lz", "DSKA0106.IMG.lz", "DSKA0107.IMG.lz", - "DSKA0108.IMG.lz", "DSKA0109.IMG.lz", "DSKA0110.IMG.lz", "DSKA0111.IMG.lz", "DSKA0112.IMG.lz", - "DSKA0113.IMG.lz", "DSKA0114.IMG.lz", "DSKA0115.IMG.lz", "DSKA0116.IMG.lz", "DSKA0117.IMG.lz", - "DSKA0120.IMG.lz", "DSKA0121.IMG.lz", "DSKA0122.IMG.lz", "DSKA0123.IMG.lz", "DSKA0124.IMG.lz", - "DSKA0125.IMG.lz", "DSKA0126.IMG.lz", "DSKA0163.IMG.lz", "DSKA0164.IMG.lz", "DSKA0166.IMG.lz", - "DSKA0168.IMG.lz", "DSKA0169.IMG.lz", "DSKA0173.IMG.lz", "DSKA0174.IMG.lz", "DSKA0175.IMG.lz", - "DSKA0180.IMG.lz", "DSKA0181.IMG.lz", "DSKA0182.IMG.lz", "DSKA0183.IMG.lz", "DSKA0262.IMG.lz", - "DSKA0263.IMG.lz", "DSKA0264.IMG.lz", "DSKA0265.IMG.lz", "DSKA0266.IMG.lz", "DSKA0267.IMG.lz", - "DSKA0268.IMG.lz", "DSKA0269.IMG.lz", "DSKA0270.IMG.lz", "DSKA0271.IMG.lz", "DSKA0272.IMG.lz", - "DSKA0273.IMG.lz", "DSKA0280.IMG.lz", "DSKA0281.IMG.lz", "DSKA0282.IMG.lz", "DSKA0283.IMG.lz", - "DSKA0284.IMG.lz", "DSKA0285.IMG.lz", "DSKA0287.IMG.lz", "DSKA0288.IMG.lz", "DSKA0289.IMG.lz", - "DSKA0290.IMG.lz", "DSKA0291.IMG.lz", "DSKA0299.IMG.lz", "DSKA0300.IMG.lz", "DSKA0301.IMG.lz", - "DSKA0302.IMG.lz", "DSKA0303.IMG.lz", "DSKA0304.IMG.lz", "DSKA0305.IMG.lz", "DSKA0308.IMG.lz", - "DSKA0311.IMG.lz", "DSKA0314.IMG.lz", "DSKA0316.IMG.lz", "DSKA0317.IMG.lz", "DSKA0318.IMG.lz", - "DSKA0319.IMG.lz", "DSKA0320.IMG.lz", "DSKA0322.IMG.lz", "md1dd8.img.lz", "md1dd.img.lz", - "md2dd_2m_fast.img.lz", "md2dd_2m_max.img.lz", "md2dd8.img.lz", "md2dd_freedos_800s.img.lz", "md2dd.img.lz", - "md2dd_maxiform_1640s.img.lz", "md2dd_maxiform_840s.img.lz", "md2dd_qcopy_1476s.img.lz", - "md2dd_qcopy_1600s.img.lz", "md2dd_qcopy_1640s.img.lz", "md2hd_2m_fast.img.lz", "md2hd_2m_max.img.lz", - "md2hd.img.lz", "md2hd_maxiform_2788s.img.lz", "md2hd_nec.img.lz", "md2hd_xdf.img.lz", "mf2dd_2m.dsk.lz", - "mf2dd_2m_fast.img.lz", "mf2dd_2mgui.dsk.lz", "mf2dd_2m_max.dsk.lz", "mf2dd_2m_max.img.lz", "mf2dd.dsk.lz", - "mf2dd_fdformat_800.dsk.lz", "mf2dd_fdformat_820.dsk.lz", "mf2dd_freedos_1600s.img.lz", - "mf2dd_freedos.dsk.lz", "mf2dd.img.lz", "mf2dd_maxiform_1600s.img.lz", "mf2dd_qcopy_1494s.img.lz", - "mf2dd_qcopy_1600s.img.lz", "mf2dd_qcopy_1660s.img.lz", "mf2ed.img.lz", "mf2hd_2m.dsk.lz", - "mf2hd_2m_fast.img.lz", "mf2hd_2mgui.dsk.lz", "mf2hd_2m_max.dsk.lz", "mf2hd_2m_max.img.lz", - "mf2hd_dmf.img.lz", "mf2hd.dsk.lz", "mf2hd_fdformat_168.dsk.lz", "mf2hd_fdformat_172.dsk.lz", - "mf2hd_freedos_3360s.img.lz", "mf2hd_freedos_3486s.img.lz", "mf2hd.img.lz", "mf2hd_maxiform_3200s.img.lz", - "mf2hd_nec.img.lz", "mf2hd_qcopy_2460s.img.lz", "mf2hd_qcopy_2720s.img.lz", "mf2hd_qcopy_2788s.img.lz", - "mf2hd_qcopy_2880s.img.lz", "mf2hd_qcopy_2952s.img.lz", "mf2hd_qcopy_2988s.img.lz", - "mf2hd_qcopy_3200s.img.lz", "mf2hd_qcopy_3320s.img.lz", "mf2hd_qcopy_3360s.img.lz", - "mf2hd_qcopy_3486s.img.lz", "mf2hd_xdf.dsk.lz", "mf2hd_xdf.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DSKA0000.IMG.lz - 2880, - - // DSKA0001.IMG.lz - 1600, - - // DSKA0009.IMG.lz - 2880, - - // DSKA0010.IMG.lz - 1440, - - // DSKA0024.IMG.lz - 2880, - - // DSKA0025.IMG.lz - 640, - - // DSKA0030.IMG.lz - 1440, - - // DSKA0035.IMG.lz - 320, - - // DSKA0036.IMG.lz - 320, - - // DSKA0037.IMG.lz - 360, - - // DSKA0038.IMG.lz - 360, - - // DSKA0039.IMG.lz - 640, - - // DSKA0040.IMG.lz - 640, - - // DSKA0041.IMG.lz - 640, - - // DSKA0042.IMG.lz - 640, - - // DSKA0043.IMG.lz - 720, - - // DSKA0044.IMG.lz - 720, - - // DSKA0045.IMG.lz - 2400, - - // DSKA0046.IMG.lz - 2460, - - // DSKA0047.IMG.lz - 1280, - - // DSKA0048.IMG.lz - 1440, - - // DSKA0049.IMG.lz - 1476, - - // DSKA0050.IMG.lz - 1600, - - // DSKA0051.IMG.lz - 1640, - - // DSKA0052.IMG.lz - 2880, - - // DSKA0053.IMG.lz - 2952, - - // DSKA0054.IMG.lz - 3200, - - // DSKA0055.IMG.lz - 3280, - - // DSKA0056.IMG.lz - 3360, - - // DSKA0057.IMG.lz - 3444, - - // DSKA0058.IMG.lz - 3486, - - // DSKA0059.IMG.lz - 3528, - - // DSKA0060.IMG.lz - 3570, - - // DSKA0069.IMG.lz - 1440, - - // DSKA0073.IMG.lz - 320, - - // DSKA0074.IMG.lz - 360, - - // DSKA0075.IMG.lz - 640, - - // DSKA0076.IMG.lz - 720, - - // DSKA0077.IMG.lz - 800, - - // DSKA0078.IMG.lz - 2400, - - // DSKA0080.IMG.lz - 1440, - - // DSKA0081.IMG.lz - 1600, - - // DSKA0082.IMG.lz - 2880, - - // DSKA0083.IMG.lz - 2988, - - // DSKA0084.IMG.lz - 3360, - - // DSKA0085.IMG.lz - 3486, - - // DSKA0089.IMG.lz - 3040, - - // DSKA0090.IMG.lz - 3680, - - // DSKA0091.IMG.lz - 1640, - - // DSKA0092.IMG.lz - 1804, - - // DSKA0093.IMG.lz - 2952, - - // DSKA0094.IMG.lz - 3116, - - // DSKA0097.IMG.lz - 3608, - - // DSKA0098.IMG.lz - 3772, - - // DSKA0099.IMG.lz - 1952, - - // DSKA0101.IMG.lz - 3280, - - // DSKA0103.IMG.lz - 3944, - - // DSKA0105.IMG.lz - 400, - - // DSKA0106.IMG.lz - 410, - - // DSKA0107.IMG.lz - 800, - - // DSKA0108.IMG.lz - 820, - - // DSKA0109.IMG.lz - 1600, - - // DSKA0110.IMG.lz - 1640, - - // DSKA0111.IMG.lz - 2880, - - // DSKA0112.IMG.lz - 2952, - - // DSKA0113.IMG.lz - 1600, - - // DSKA0114.IMG.lz - 1640, - - // DSKA0115.IMG.lz - 2952, - - // DSKA0116.IMG.lz - 3200, - - // DSKA0117.IMG.lz - 3280, - - // DSKA0120.IMG.lz - 320, - - // DSKA0121.IMG.lz - 360, - - // DSKA0122.IMG.lz - 640, - - // DSKA0123.IMG.lz - 720, - - // DSKA0124.IMG.lz - 2400, - - // DSKA0125.IMG.lz - 1440, - - // DSKA0126.IMG.lz - 2880, - - // DSKA0163.IMG.lz - 720, - - // DSKA0164.IMG.lz - 820, - - // DSKA0166.IMG.lz - 1440, - - // DSKA0168.IMG.lz - 2400, - - // DSKA0169.IMG.lz - 2880, - - // DSKA0173.IMG.lz - 720, - - // DSKA0174.IMG.lz - 1440, - - // DSKA0175.IMG.lz - 1600, - - // DSKA0180.IMG.lz - 3200, - - // DSKA0181.IMG.lz - 3360, - - // DSKA0182.IMG.lz - 3444, - - // DSKA0183.IMG.lz - 3486, - - // DSKA0262.IMG.lz - 1440, - - // DSKA0263.IMG.lz - 1600, - - // DSKA0264.IMG.lz - 1640, - - // DSKA0265.IMG.lz - 1660, - - // DSKA0266.IMG.lz - 2880, - - // DSKA0267.IMG.lz - 3040, - - // DSKA0268.IMG.lz - 3200, - - // DSKA0269.IMG.lz - 3280, - - // DSKA0270.IMG.lz - 3320, - - // DSKA0271.IMG.lz - 3360, - - // DSKA0272.IMG.lz - 3444, - - // DSKA0273.IMG.lz - 3486, - - // DSKA0280.IMG.lz - 360, - - // DSKA0281.IMG.lz - 400, - - // DSKA0282.IMG.lz - 640, - - // DSKA0283.IMG.lz - 720, - - // DSKA0284.IMG.lz - 800, - - // DSKA0285.IMG.lz - 840, - - // DSKA0287.IMG.lz - 1440, - - // DSKA0288.IMG.lz - 1494, - - // DSKA0289.IMG.lz - 1600, - - // DSKA0290.IMG.lz - 1640, - - // DSKA0291.IMG.lz - 1660, - - // DSKA0299.IMG.lz - 320, - - // DSKA0300.IMG.lz - 360, - - // DSKA0301.IMG.lz - 640, - - // DSKA0302.IMG.lz - 720, - - // DSKA0303.IMG.lz - 2400, - - // DSKA0304.IMG.lz - 1440, - - // DSKA0305.IMG.lz - 2880, - - // DSKA0308.IMG.lz - 1600, - - // DSKA0311.IMG.lz - 3444, - - // DSKA0314.IMG.lz - 1440, - - // DSKA0316.IMG.lz - 2880, - - // DSKA0317.IMG.lz - 3360, - - // DSKA0318.IMG.lz - 3444, - - // DSKA0319.IMG.lz - 3360, - - // DSKA0320.IMG.lz - 3360, - - // DSKA0322.IMG.lz - 1386, - - // md1dd8.img.lz - 320, - - // md1dd.img.lz - 360, - - // md2dd_2m_fast.img.lz - 1640, - - // md2dd_2m_max.img.lz - 1804, - - // md2dd8.img.lz - 640, - - // md2dd_freedos_800s.img.lz - 800, - - // md2dd.img.lz - 720, - - // md2dd_maxiform_1640s.img.lz - 1640, - - // md2dd_maxiform_840s.img.lz - 840, - - // md2dd_qcopy_1476s.img.lz - 1476, - - // md2dd_qcopy_1600s.img.lz - 1600, - - // md2dd_qcopy_1640s.img.lz - 1640, - - // md2hd_2m_fast.img.lz - 2952, - - // md2hd_2m_max.img.lz - 3116, - - // md2hd.img.lz - 2400, - - // md2hd_maxiform_2788s.img.lz - 2788, - - // md2hd_nec.img.lz - 2464, - - // md2hd_xdf.img.lz - 3040, - - // mf2dd_2m.dsk.lz - 1968, - - // mf2dd_2m_fast.img.lz - 1968, - - // mf2dd_2mgui.dsk.lz - 9408, - - // mf2dd_2m_max.dsk.lz - 2132, - - // mf2dd_2m_max.img.lz - 2132, - - // mf2dd.dsk.lz - 1440, - - // mf2dd_fdformat_800.dsk.lz - 1600, - - // mf2dd_fdformat_820.dsk.lz - 1640, - - // mf2dd_freedos_1600s.img.lz - 1600, - - // mf2dd_freedos.dsk.lz - 1600, - - // mf2dd.img.lz - 1440, - - // mf2dd_maxiform_1600s.img.lz - 1600, - - // mf2dd_qcopy_1494s.img.lz - 1494, - - // mf2dd_qcopy_1600s.img.lz - 1600, - - // mf2dd_qcopy_1660s.img.lz - 1660, - - // mf2ed.img.lz - 5760, - - // mf2hd_2m.dsk.lz - 3608, - - // mf2hd_2m_fast.img.lz - 3608, - - // mf2hd_2mgui.dsk.lz - 15776, - - // mf2hd_2m_max.dsk.lz - 3772, - - // mf2hd_2m_max.img.lz - 3772, - - // mf2hd_dmf.img.lz - 3360, - - // mf2hd.dsk.lz - 2880, - - // mf2hd_fdformat_168.dsk.lz - 3360, - - // mf2hd_fdformat_172.dsk.lz - 3444, - - // mf2hd_freedos_3360s.img.lz - 3360, - - // mf2hd_freedos_3486s.img.lz - 3486, - - // mf2hd.img.lz - 2880, - - // mf2hd_maxiform_3200s.img.lz - 3200, - - // mf2hd_nec.img.lz - 2464, - - // mf2hd_qcopy_2460s.img.lz - 2460, - - // mf2hd_qcopy_2720s.img.lz - 2720, - - // mf2hd_qcopy_2788s.img.lz - 2788, - - // mf2hd_qcopy_2880s.img.lz - 2880, - - // mf2hd_qcopy_2952s.img.lz - 2952, - - // mf2hd_qcopy_2988s.img.lz - 2988, - - // mf2hd_qcopy_3200s.img.lz - 3200, - - // mf2hd_qcopy_3320s.img.lz - 3320, - - // mf2hd_qcopy_3360s.img.lz - 3360, - - // mf2hd_qcopy_3486s.img.lz - 3486, - - // mf2hd_xdf.dsk.lz - 3680, - - // mf2hd_xdf.img.lz - 3680 - }; - - public override uint[] _sectorSize => new uint[] - { - // DSKA0000.IMG.lz - 512, - - // DSKA0001.IMG.lz - 512, - - // DSKA0009.IMG.lz - 512, - - // DSKA0010.IMG.lz - 512, - - // DSKA0024.IMG.lz - 512, - - // DSKA0025.IMG.lz - 512, - - // DSKA0030.IMG.lz - 512, - - // DSKA0035.IMG.lz - 512, - - // DSKA0036.IMG.lz - 512, - - // DSKA0037.IMG.lz - 512, - - // DSKA0038.IMG.lz - 512, - - // DSKA0039.IMG.lz - 512, - - // DSKA0040.IMG.lz - 512, - - // DSKA0041.IMG.lz - 512, - - // DSKA0042.IMG.lz - 512, - - // DSKA0043.IMG.lz - 512, - - // DSKA0044.IMG.lz - 512, - - // DSKA0045.IMG.lz - 512, - - // DSKA0046.IMG.lz - 512, - - // DSKA0047.IMG.lz - 512, - - // DSKA0048.IMG.lz - 512, - - // DSKA0049.IMG.lz - 512, - - // DSKA0050.IMG.lz - 512, - - // DSKA0051.IMG.lz - 512, - - // DSKA0052.IMG.lz - 512, - - // DSKA0053.IMG.lz - 512, - - // DSKA0054.IMG.lz - 512, - - // DSKA0055.IMG.lz - 512, - - // DSKA0056.IMG.lz - 512, - - // DSKA0057.IMG.lz - 512, - - // DSKA0058.IMG.lz - 512, - - // DSKA0059.IMG.lz - 512, - - // DSKA0060.IMG.lz - 512, - - // DSKA0069.IMG.lz - 512, - - // DSKA0073.IMG.lz - 512, - - // DSKA0074.IMG.lz - 512, - - // DSKA0075.IMG.lz - 512, - - // DSKA0076.IMG.lz - 512, - - // DSKA0077.IMG.lz - 512, - - // DSKA0078.IMG.lz - 512, - - // DSKA0080.IMG.lz - 512, - - // DSKA0081.IMG.lz - 512, - - // DSKA0082.IMG.lz - 512, - - // DSKA0083.IMG.lz - 512, - - // DSKA0084.IMG.lz - 512, - - // DSKA0085.IMG.lz - 512, - - // DSKA0089.IMG.lz - 512, - - // DSKA0090.IMG.lz - 512, - - // DSKA0091.IMG.lz - 512, - - // DSKA0092.IMG.lz - 512, - - // DSKA0093.IMG.lz - 512, - - // DSKA0094.IMG.lz - 512, - - // DSKA0097.IMG.lz - 512, - - // DSKA0098.IMG.lz - 512, - - // DSKA0099.IMG.lz - 512, - - // DSKA0101.IMG.lz - 512, - - // DSKA0103.IMG.lz - 512, - - // DSKA0105.IMG.lz - 512, - - // DSKA0106.IMG.lz - 512, - - // DSKA0107.IMG.lz - 512, - - // DSKA0108.IMG.lz - 512, - - // DSKA0109.IMG.lz - 512, - - // DSKA0110.IMG.lz - 512, - - // DSKA0111.IMG.lz - 512, - - // DSKA0112.IMG.lz - 512, - - // DSKA0113.IMG.lz - 512, - - // DSKA0114.IMG.lz - 512, - - // DSKA0115.IMG.lz - 512, - - // DSKA0116.IMG.lz - 512, - - // DSKA0117.IMG.lz - 512, - - // DSKA0120.IMG.lz - 512, - - // DSKA0121.IMG.lz - 512, - - // DSKA0122.IMG.lz - 512, - - // DSKA0123.IMG.lz - 512, - - // DSKA0124.IMG.lz - 512, - - // DSKA0125.IMG.lz - 512, - - // DSKA0126.IMG.lz - 512, - - // DSKA0163.IMG.lz - 512, - - // DSKA0164.IMG.lz - 512, - - // DSKA0166.IMG.lz - 512, - - // DSKA0168.IMG.lz - 512, - - // DSKA0169.IMG.lz - 512, - - // DSKA0173.IMG.lz - 512, - - // DSKA0174.IMG.lz - 512, - - // DSKA0175.IMG.lz - 512, - - // DSKA0180.IMG.lz - 512, - - // DSKA0181.IMG.lz - 512, - - // DSKA0182.IMG.lz - 512, - - // DSKA0183.IMG.lz - 512, - - // DSKA0262.IMG.lz - 512, - - // DSKA0263.IMG.lz - 512, - - // DSKA0264.IMG.lz - 512, - - // DSKA0265.IMG.lz - 512, - - // DSKA0266.IMG.lz - 512, - - // DSKA0267.IMG.lz - 512, - - // DSKA0268.IMG.lz - 512, - - // DSKA0269.IMG.lz - 512, - - // DSKA0270.IMG.lz - 512, - - // DSKA0271.IMG.lz - 512, - - // DSKA0272.IMG.lz - 512, - - // DSKA0273.IMG.lz - 512, - - // DSKA0280.IMG.lz - 512, - - // DSKA0281.IMG.lz - 512, - - // DSKA0282.IMG.lz - 512, - - // DSKA0283.IMG.lz - 512, - - // DSKA0284.IMG.lz - 512, - - // DSKA0285.IMG.lz - 512, - - // DSKA0287.IMG.lz - 512, - - // DSKA0288.IMG.lz - 512, - - // DSKA0289.IMG.lz - 512, - - // DSKA0290.IMG.lz - 512, - - // DSKA0291.IMG.lz - 512, - - // DSKA0299.IMG.lz - 512, - - // DSKA0300.IMG.lz - 512, - - // DSKA0301.IMG.lz - 512, - - // DSKA0302.IMG.lz - 512, - - // DSKA0303.IMG.lz - 512, - - // DSKA0304.IMG.lz - 512, - - // DSKA0305.IMG.lz - 512, - - // DSKA0308.IMG.lz - 512, - - // DSKA0311.IMG.lz - 512, - - // DSKA0314.IMG.lz - 512, - - // DSKA0316.IMG.lz - 512, - - // DSKA0317.IMG.lz - 512, - - // DSKA0318.IMG.lz - 512, - - // DSKA0319.IMG.lz - 512, - - // DSKA0320.IMG.lz - 512, - - // DSKA0322.IMG.lz - 512, - - // md1dd8.img.lz - 512, - - // md1dd.img.lz - 512, - - // md2dd_2m_fast.img.lz - 512, - - // md2dd_2m_max.img.lz - 512, - - // md2dd8.img.lz - 512, - - // md2dd_freedos_800s.img.lz - 512, - - // md2dd.img.lz - 512, - - // md2dd_maxiform_1640s.img.lz - 512, - - // md2dd_maxiform_840s.img.lz - 512, - - // md2dd_qcopy_1476s.img.lz - 512, - - // md2dd_qcopy_1600s.img.lz - 512, - - // md2dd_qcopy_1640s.img.lz - 512, - - // md2hd_2m_fast.img.lz - 512, - - // md2hd_2m_max.img.lz - 512, - - // md2hd.img.lz - 512, - - // md2hd_maxiform_2788s.img.lz - 512, - - // md2hd_nec.img.lz - 1024, - - // md2hd_xdf.img.lz - 512, - - // mf2dd_2m.dsk.lz - 512, - - // mf2dd_2m_fast.img.lz - 512, - - // mf2dd_2mgui.dsk.lz - 128, - - // mf2dd_2m_max.dsk.lz - 512, - - // mf2dd_2m_max.img.lz - 512, - - // mf2dd.dsk.lz - 512, - - // mf2dd_fdformat_800.dsk.lz - 512, - - // mf2dd_fdformat_820.dsk.lz - 512, - - // mf2dd_freedos_1600s.img.lz - 512, - - // mf2dd_freedos.dsk.lz - 512, - - // mf2dd.img.lz - 512, - - // mf2dd_maxiform_1600s.img.lz - 512, - - // mf2dd_qcopy_1494s.img.lz - 512, - - // mf2dd_qcopy_1600s.img.lz - 512, - - // mf2dd_qcopy_1660s.img.lz - 512, - - // mf2ed.img.lz - 512, - - // mf2hd_2m.dsk.lz - 512, - - // mf2hd_2m_fast.img.lz - 512, - - // mf2hd_2mgui.dsk.lz - 128, - - // mf2hd_2m_max.dsk.lz - 512, - - // mf2hd_2m_max.img.lz - 512, - - // mf2hd_dmf.img.lz - 512, - - // mf2hd.dsk.lz - 512, - - // mf2hd_fdformat_168.dsk.lz - 512, - - // mf2hd_fdformat_172.dsk.lz - 512, - - // mf2hd_freedos_3360s.img.lz - 512, - - // mf2hd_freedos_3486s.img.lz - 512, - - // mf2hd.img.lz - 512, - - // mf2hd_maxiform_3200s.img.lz - 512, - - // mf2hd_nec.img.lz - 1024, - - // mf2hd_qcopy_2460s.img.lz - 512, - - // mf2hd_qcopy_2720s.img.lz - 512, - - // mf2hd_qcopy_2788s.img.lz - 512, - - // mf2hd_qcopy_2880s.img.lz - 512, - - // mf2hd_qcopy_2952s.img.lz - 512, - - // mf2hd_qcopy_2988s.img.lz - 512, - - // mf2hd_qcopy_3200s.img.lz - 512, - - // mf2hd_qcopy_3320s.img.lz - 512, - - // mf2hd_qcopy_3360s.img.lz - 512, - - // mf2hd_qcopy_3486s.img.lz - 512, - - // mf2hd_xdf.dsk.lz - 512, - - // mf2hd_xdf.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DSKA0000.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0001.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0009.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0010.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0024.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0025.IMG.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0030.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0035.IMG.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0036.IMG.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0037.IMG.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0038.IMG.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0039.IMG.lz - MediaType.DOS_35_SS_DD_8, - - // DSKA0040.IMG.lz - MediaType.DOS_35_SS_DD_8, - - // DSKA0041.IMG.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0042.IMG.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0043.IMG.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0044.IMG.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0045.IMG.lz - MediaType.DOS_525_HD, - - // DSKA0046.IMG.lz - MediaType.Unknown, - - // DSKA0047.IMG.lz - MediaType.DOS_35_DS_DD_8, - - // DSKA0048.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0049.IMG.lz - MediaType.Unknown, - - // DSKA0050.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0051.IMG.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0052.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0053.IMG.lz - MediaType.Unknown, - - // DSKA0054.IMG.lz - MediaType.Unknown, - - // DSKA0055.IMG.lz - MediaType.Unknown, - - // DSKA0056.IMG.lz - MediaType.DMF, - - // DSKA0057.IMG.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0058.IMG.lz - MediaType.Unknown, - - // DSKA0059.IMG.lz - MediaType.Unknown, - - // DSKA0060.IMG.lz - MediaType.Unknown, - - // DSKA0069.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0073.IMG.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0074.IMG.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0075.IMG.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0076.IMG.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0077.IMG.lz - MediaType.Unknown, - - // DSKA0078.IMG.lz - MediaType.DOS_525_HD, - - // DSKA0080.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0081.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0082.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0083.IMG.lz - MediaType.Unknown, - - // DSKA0084.IMG.lz - MediaType.DMF, - - // DSKA0085.IMG.lz - MediaType.Unknown, - - // DSKA0089.IMG.lz - MediaType.XDF_525, - - // DSKA0090.IMG.lz - MediaType.XDF_35, - - // DSKA0091.IMG.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0092.IMG.lz - MediaType.Unknown, - - // DSKA0093.IMG.lz - MediaType.Unknown, - - // DSKA0094.IMG.lz - MediaType.Unknown, - - // DSKA0097.IMG.lz - MediaType.Unknown, - - // DSKA0098.IMG.lz - MediaType.Unknown, - - // DSKA0099.IMG.lz - MediaType.Unknown, - - // DSKA0101.IMG.lz - MediaType.Unknown, - - // DSKA0103.IMG.lz - MediaType.Unknown, - - // DSKA0105.IMG.lz - MediaType.Unknown, - - // DSKA0106.IMG.lz - MediaType.Unknown, - - // DSKA0107.IMG.lz - MediaType.Unknown, - - // DSKA0108.IMG.lz - MediaType.Unknown, - - // DSKA0109.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0110.IMG.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0111.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0112.IMG.lz - MediaType.Unknown, - - // DSKA0113.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0114.IMG.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0115.IMG.lz - MediaType.Unknown, - - // DSKA0116.IMG.lz - MediaType.Unknown, - - // DSKA0117.IMG.lz - MediaType.Unknown, - - // DSKA0120.IMG.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0121.IMG.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0122.IMG.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0123.IMG.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0124.IMG.lz - MediaType.DOS_525_HD, - - // DSKA0125.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0126.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0163.IMG.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0164.IMG.lz - MediaType.Unknown, - - // DSKA0166.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0168.IMG.lz - MediaType.DOS_525_HD, - - // DSKA0169.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0173.IMG.lz - MediaType.DOS_35_SS_DD_9, - - // DSKA0174.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0175.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0180.IMG.lz - MediaType.Unknown, - - // DSKA0181.IMG.lz - MediaType.DMF, - - // DSKA0182.IMG.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0183.IMG.lz - MediaType.Unknown, - - // DSKA0262.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0263.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0264.IMG.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0265.IMG.lz - MediaType.Unknown, - - // DSKA0266.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0267.IMG.lz - MediaType.XDF_525, - - // DSKA0268.IMG.lz - MediaType.Unknown, - - // DSKA0269.IMG.lz - MediaType.Unknown, - - // DSKA0270.IMG.lz - MediaType.Unknown, - - // DSKA0271.IMG.lz - MediaType.DMF, - - // DSKA0272.IMG.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0273.IMG.lz - MediaType.Unknown, - - // DSKA0280.IMG.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0281.IMG.lz - MediaType.Unknown, - - // DSKA0282.IMG.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0283.IMG.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0284.IMG.lz - MediaType.Unknown, - - // DSKA0285.IMG.lz - MediaType.Unknown, - - // DSKA0287.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0288.IMG.lz - MediaType.Unknown, - - // DSKA0289.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0290.IMG.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0291.IMG.lz - MediaType.Unknown, - - // DSKA0299.IMG.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0300.IMG.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0301.IMG.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0302.IMG.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0303.IMG.lz - MediaType.DOS_525_HD, - - // DSKA0304.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0305.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0308.IMG.lz - MediaType.CBM_35_DD, - - // DSKA0311.IMG.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0314.IMG.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0316.IMG.lz - MediaType.DOS_35_HD, - - // DSKA0317.IMG.lz - MediaType.DMF, - - // DSKA0318.IMG.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0319.IMG.lz - MediaType.DMF, - - // DSKA0320.IMG.lz - MediaType.DMF, - - // DSKA0322.IMG.lz - MediaType.Unknown, - - // md1dd8.img.lz - MediaType.DOS_525_SS_DD_8, - - // md1dd.img.lz - MediaType.DOS_525_SS_DD_9, - - // md2dd_2m_fast.img.lz - MediaType.FDFORMAT_35_DD, - - // md2dd_2m_max.img.lz - MediaType.Unknown, - - // md2dd8.img.lz - MediaType.DOS_525_DS_DD_8, - - // md2dd_freedos_800s.img.lz - MediaType.Unknown, - - // md2dd.img.lz - MediaType.DOS_525_DS_DD_9, - - // md2dd_maxiform_1640s.img.lz - MediaType.FDFORMAT_35_DD, - - // md2dd_maxiform_840s.img.lz - MediaType.Unknown, - - // md2dd_qcopy_1476s.img.lz - MediaType.Unknown, - - // md2dd_qcopy_1600s.img.lz - MediaType.CBM_35_DD, - - // md2dd_qcopy_1640s.img.lz - MediaType.FDFORMAT_35_DD, - - // md2hd_2m_fast.img.lz - MediaType.Unknown, - - // md2hd_2m_max.img.lz - MediaType.Unknown, - - // md2hd.img.lz - MediaType.DOS_525_HD, - - // md2hd_maxiform_2788s.img.lz - MediaType.FDFORMAT_525_HD, - - // md2hd_nec.img.lz - MediaType.SHARP_525, - - // md2hd_xdf.img.lz - MediaType.XDF_525, - - // mf2dd_2m.dsk.lz - MediaType.Unknown, - - // mf2dd_2m_fast.img.lz - MediaType.Unknown, - - // mf2dd_2mgui.dsk.lz - MediaType.Unknown, - - // mf2dd_2m_max.dsk.lz - MediaType.Unknown, - - // mf2dd_2m_max.img.lz - MediaType.Unknown, - - // mf2dd.dsk.lz - MediaType.DOS_35_DS_DD_9, - - // mf2dd_fdformat_800.dsk.lz - MediaType.CBM_35_DD, - - // mf2dd_fdformat_820.dsk.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_freedos_1600s.img.lz - MediaType.CBM_35_DD, - - // mf2dd_freedos.dsk.lz - MediaType.CBM_35_DD, - - // mf2dd.img.lz - MediaType.DOS_35_DS_DD_9, - - // mf2dd_maxiform_1600s.img.lz - MediaType.CBM_35_DD, - - // mf2dd_qcopy_1494s.img.lz - MediaType.Unknown, - - // mf2dd_qcopy_1600s.img.lz - MediaType.CBM_35_DD, - - // mf2dd_qcopy_1660s.img.lz - MediaType.Unknown, - - // mf2ed.img.lz - MediaType.ECMA_147, - - // mf2hd_2m.dsk.lz - MediaType.Unknown, - - // mf2hd_2m_fast.img.lz - MediaType.Unknown, - - // mf2hd_2mgui.dsk.lz - MediaType.Unknown, - - // mf2hd_2m_max.dsk.lz - MediaType.Unknown, - - // mf2hd_2m_max.img.lz - MediaType.Unknown, - - // mf2hd_dmf.img.lz - MediaType.DMF, - - // mf2hd.dsk.lz - MediaType.DOS_35_HD, - - // mf2hd_fdformat_168.dsk.lz - MediaType.DMF, - - // mf2hd_fdformat_172.dsk.lz - MediaType.FDFORMAT_35_HD, - - // mf2hd_freedos_3360s.img.lz - MediaType.DMF, - - // mf2hd_freedos_3486s.img.lz - MediaType.Unknown, - - // mf2hd.img.lz - MediaType.DOS_35_HD, - - // mf2hd_maxiform_3200s.img.lz - MediaType.Unknown, - - // mf2hd_nec.img.lz - MediaType.SHARP_525, - - // mf2hd_qcopy_2460s.img.lz - MediaType.Unknown, - - // mf2hd_qcopy_2720s.img.lz - MediaType.Unknown, - - // mf2hd_qcopy_2788s.img.lz - MediaType.FDFORMAT_525_HD, - - // mf2hd_qcopy_2880s.img.lz - MediaType.DOS_35_HD, - - // mf2hd_qcopy_2952s.img.lz - MediaType.Unknown, - - // mf2hd_qcopy_2988s.img.lz - MediaType.Unknown, - - // mf2hd_qcopy_3200s.img.lz - MediaType.Unknown, - - // mf2hd_qcopy_3320s.img.lz - MediaType.Unknown, - - // mf2hd_qcopy_3360s.img.lz - MediaType.DMF, - - // mf2hd_qcopy_3486s.img.lz - MediaType.Unknown, - - // mf2hd_xdf.dsk.lz - MediaType.XDF_35, - - // mf2hd_xdf.img.lz - MediaType.XDF_35 - }; - - public override string[] _md5S => new[] - { - // DSKA0000.IMG.lz - "e8bbbd22db87181974e12ba0227ea011", - - // DSKA0001.IMG.lz - "9f5635f3df4d880a500910b0ad1ab535", - - // DSKA0009.IMG.lz - "95ea232f59e44db374b994cfe7f1c07f", - - // DSKA0010.IMG.lz - "9e2b01f4397db2a6c76e2bc267df37b3", - - // DSKA0024.IMG.lz - "2302991363cb3681cffdc4388915b51e", - - // DSKA0025.IMG.lz - "f7dd138edcab7bd328d7396d48aac395", - - // DSKA0030.IMG.lz - "af83d011608042d35021e39aa5e10b2f", - - // DSKA0035.IMG.lz - "6642c1a32d2c58e93481d664974fc202", - - // DSKA0036.IMG.lz - "846f01b8b60cb3c775bd66419e977926", - - // DSKA0037.IMG.lz - "5101f89850dc28efbcfb7622086a9ddf", - - // DSKA0038.IMG.lz - "8e570be2ed1f00ddea82e50a2d9c446a", - - // DSKA0039.IMG.lz - "abba2a1ddd60a649047a9c44d94bbeae", - - // DSKA0040.IMG.lz - "e3bc48bec81be5b35be73d41fdffd2ab", - - // DSKA0041.IMG.lz - "43b5068af9d016d1432eb2e12d2b802a", - - // DSKA0042.IMG.lz - "5bf2ad4dc300592604b6e32f8b8e2656", - - // DSKA0043.IMG.lz - "cb9a832ca6a4097b8ccc30d2108e1f7d", - - // DSKA0044.IMG.lz - "56d181a6bb8713e6b2854fe8887faab6", - - // DSKA0045.IMG.lz - "41aef7cff26aefda1add8d49c5b962c2", - - // DSKA0046.IMG.lz - "2437c5f089f1cba3866b36360b016f16", - - // DSKA0047.IMG.lz - "bdaa8f17373b265830fdf3a06b794367", - - // DSKA0048.IMG.lz - "629932c285478d0540ff7936aa008351", - - // DSKA0049.IMG.lz - "7a2abef5d4701e2e49abb05af8d4da50", - - // DSKA0050.IMG.lz - "e3507522c914264f44fb2c92c3170c09", - - // DSKA0051.IMG.lz - "824fe65dbb1a42b6b94f05405ef984f2", - - // DSKA0052.IMG.lz - "1a8c2e78e7132cf9ba5d6c2b75876be0", - - // DSKA0053.IMG.lz - "936b20bb0966fe693b4d5e2353e24846", - - // DSKA0054.IMG.lz - "803b01a0b440c2837d37c21308f30cd5", - - // DSKA0055.IMG.lz - "aa0d31f914760cc4cde75479779ebed6", - - // DSKA0056.IMG.lz - "31269ed6464302ae26d22b7c87bceb23", - - // DSKA0057.IMG.lz - "5e413433c54f48978d281c6e66d1106e", - - // DSKA0058.IMG.lz - "4fc28b0128543b2eb70f6432c4c8a980", - - // DSKA0059.IMG.lz - "24a7459d080cea3a60d131b8fd7dc5d1", - - // DSKA0060.IMG.lz - "2031b1e16ee2defc0d15f732f633df33", - - // DSKA0069.IMG.lz - "5fc19ca552b6db957061e9a1750394d2", - - // DSKA0073.IMG.lz - "a33b46f042b78fe3d0b3c5dbb3908a93", - - // DSKA0074.IMG.lz - "565d3c001cbb532154aa5d3c65b2439c", - - // DSKA0075.IMG.lz - "e60442c3ebd72c99bdd7545fdba59613", - - // DSKA0076.IMG.lz - "058a33a129539285c9b64010496af52f", - - // DSKA0077.IMG.lz - "0726ecbc38965d30a6222c3e74cd1aa3", - - // DSKA0078.IMG.lz - "c9a193837db7d8a5eb025eb41e8a76d7", - - // DSKA0080.IMG.lz - "c38d69ac88520f14fcc6d6ced22b065d", - - // DSKA0081.IMG.lz - "91d51964e1e64ef3f6f622fa19aa833c", - - // DSKA0082.IMG.lz - "db36d9651c952ff679ec33223c8db2d3", - - // DSKA0083.IMG.lz - "5f1d98806309aee7f81de72e51e6d386", - - // DSKA0084.IMG.lz - "1207a1cc7ff73d4f74c8984b4e7db33f", - - // DSKA0085.IMG.lz - "c97a3081fd25474b6b7945b8572d5ab8", - - // DSKA0089.IMG.lz - "0abf995856080e5292e63c63f7c97a45", - - // DSKA0090.IMG.lz - "8be2aaf6ecea213aee9fc82c8a85061e", - - // DSKA0091.IMG.lz - "0a432572a28d3b53a0cf2b5c211fe777", - - // DSKA0092.IMG.lz - "cd84fa2d62ac7c36783224c3ba0be664", - - // DSKA0093.IMG.lz - "63d29a9d867d924421c10793a0f22965", - - // DSKA0094.IMG.lz - "21778906886c0314f0f33c4b0040ba16", - - // DSKA0097.IMG.lz - "6b8e89b1d5117ba19c3e52544ffe041e", - - // DSKA0098.IMG.lz - "543fc539902eb66b5c312d7908ecf97a", - - // DSKA0099.IMG.lz - "b30709f798bfb8469d02a82c882f780c", - - // DSKA0101.IMG.lz - "0f3e923010b50b550591a89ea2dee62b", - - // DSKA0103.IMG.lz - "d5b927503abcd1978496bc679bb9c2f7", - - // DSKA0105.IMG.lz - "d40a99cb549fcfb26fcf9ef01b5dfca7", - - // DSKA0106.IMG.lz - "7b41dd9ca7eb32828960eb1417a6092a", - - // DSKA0107.IMG.lz - "126dfd25363c076727dfaab03955c931", - - // DSKA0108.IMG.lz - "e6492aac144f5f6f593b84c64680cf64", - - // DSKA0109.IMG.lz - "7973e569ed93beb1ece2e84a5ef3a8d1", - - // DSKA0110.IMG.lz - "a793047503af08e83361427b3e2806e0", - - // DSKA0111.IMG.lz - "f01541de322c8d6d7321084d7a245e7b", - - // DSKA0112.IMG.lz - "ba6ec1652ff41bcc687aaf9c4e32dc18", - - // DSKA0113.IMG.lz - "7973e569ed93beb1ece2e84a5ef3a8d1", - - // DSKA0114.IMG.lz - "a793047503af08e83361427b3e2806e0", - - // DSKA0115.IMG.lz - "ba6ec1652ff41bcc687aaf9c4e32dc18", - - // DSKA0116.IMG.lz - "6631b66fdfd89319323771c41334c7ba", - - // DSKA0117.IMG.lz - "56471a253f4d6803b634e2bbff6c0931", - - // DSKA0120.IMG.lz - "7d36aee5a3071ff75b979f3acb649c40", - - // DSKA0121.IMG.lz - "0ccb62039363ab544c69eca229a17fae", - - // DSKA0122.IMG.lz - "7851d31fad9302ff45d3ded4fba25387", - - // DSKA0123.IMG.lz - "915b08c82591e8488320e001b7303b6d", - - // DSKA0124.IMG.lz - "5e5ea6fe9adf842221fdc60e56630405", - - // DSKA0125.IMG.lz - "a22e254f7e3526ec30dc4915a19fcb52", - - // DSKA0126.IMG.lz - "ddc6c1200c60e9f7796280f50c2e5283", - - // DSKA0163.IMG.lz - "be05d1ff10ef8b2220546c4db962ac9e", - - // DSKA0164.IMG.lz - "32823b9009c99b6711e89336ad03ec7f", - - // DSKA0166.IMG.lz - "1c8b03a8550ed3e70e1c78316aa445aa", - - // DSKA0168.IMG.lz - "0bdf9130c07bb5d558a4705249f949d0", - - // DSKA0169.IMG.lz - "2dafeddaa99e7dc0db5ef69e128f9c8e", - - // DSKA0173.IMG.lz - "028769dc0abefab1740cc309432588b6", - - // DSKA0174.IMG.lz - "152023525154b45ab26687190bac94db", - - // DSKA0175.IMG.lz - "db38ecd93f28dd065927fed21917eed5", - - // DSKA0180.IMG.lz - "f206c0caa4e0eda37233ab6e89ab5493", - - // DSKA0181.IMG.lz - "554492a7b41f4cd9068a3a2b70eb0e5f", - - // DSKA0182.IMG.lz - "36dd03967a2a3369538cad29b8b74b71", - - // DSKA0183.IMG.lz - "4f5c02448e75bbc086e051c728414513", - - // DSKA0262.IMG.lz - "5ac0a9fc7337f761098f816359b0f6f7", - - // DSKA0263.IMG.lz - "1ea6ec8e663218b1372048f6e25795b5", - - // DSKA0264.IMG.lz - "77a1167b1b9043496e32b8578cde0ff0", - - // DSKA0265.IMG.lz - "4b07d760d65f3f0f8ffa5f2b81cee907", - - // DSKA0266.IMG.lz - "32c044c5c2b0bd13806149a759c14935", - - // DSKA0267.IMG.lz - "8752095abc13dba3f3467669da333891", - - // DSKA0268.IMG.lz - "aece7cd34bbba3e75307fa70404d9d30", - - // DSKA0269.IMG.lz - "5289afb16a6e4a33213e3bcca56c6230", - - // DSKA0270.IMG.lz - "1aef0a0ba233476db6567878c3c2b266", - - // DSKA0271.IMG.lz - "b96596711f4d2ee85dfda0fe3b9f26c3", - - // DSKA0272.IMG.lz - "a4f461af7fda5e93a7ab63fcbb7e7683", - - // DSKA0273.IMG.lz - "8f7f7099d4475f6631fcf0a79b031d61", - - // DSKA0280.IMG.lz - "4feeaf4b4ee5dad85db727fbbda4b6d1", - - // DSKA0281.IMG.lz - "3c77ca681df78e4cd7baa162aa9b0859", - - // DSKA0282.IMG.lz - "51da1f86c49657ffdb367bb2ddeb7990", - - // DSKA0283.IMG.lz - "b81a4987f89936630b8ebc62e4bbce6e", - - // DSKA0284.IMG.lz - "f76f92dd326c99c5efad5ee58daf72e1", - - // DSKA0285.IMG.lz - "b6f2c10e42908e334025bc4ffd81e771", - - // DSKA0287.IMG.lz - "f2f409ea2a62a7866fd2777cc4fc9739", - - // DSKA0288.IMG.lz - "3e441d69cec5c3169274e1379de4af4b", - - // DSKA0289.IMG.lz - "30a93f30dd4485c6fc037fe0775d3fc7", - - // DSKA0290.IMG.lz - "e0caf02cce5597c98313bcc480366ec7", - - // DSKA0291.IMG.lz - "4af4904d2b3c815da7bef7049209f5eb", - - // DSKA0299.IMG.lz - "39bf5a98bcb2185d855ac06378febcfa", - - // DSKA0300.IMG.lz - "dc20055b6e6fd6f8e1114d4be2effeed", - - // DSKA0301.IMG.lz - "56af9256cf71d5aac5fd5d363674bc49", - - // DSKA0302.IMG.lz - "bbba1e2d1418e05c3a4e7b4d585d160b", - - // DSKA0303.IMG.lz - "bca3a045e81617f7f5ebb5a8818eac47", - - // DSKA0304.IMG.lz - "a296663cb8e75e94603221352f29cfff", - - // DSKA0305.IMG.lz - "ecda36ebf0e1100233cb0ec722c18583", - - // DSKA0308.IMG.lz - "bbe58e26b8f8f822cd3edfd37a4e4924", - - // DSKA0311.IMG.lz - "b9b6ebdf711364c979de7cf70c3a438a", - - // DSKA0314.IMG.lz - "d37424f367f545acbb397f2bed766843", - - // DSKA0316.IMG.lz - "9963dd6f19ce6bd56eabeccdfbbd821a", - - // DSKA0317.IMG.lz - "acf6604559ae8217f7869823e2429024", - - // DSKA0318.IMG.lz - "23bf2139cdfdc4c16db058fd31ea6481", - - // DSKA0319.IMG.lz - "fa26adda0415f02057b113ad29c80c8d", - - // DSKA0320.IMG.lz - "4f2a8d036fefd6c6c88d99eda3aa12b7", - - // DSKA0322.IMG.lz - "e794a3ffa4069ea999fdf7146710fa9e", - - // md1dd8.img.lz - "d81f5cb64fd0b99f138eab34110bbc3c", - - // md1dd.img.lz - "a89006a75d13bee9202d1d6e52721ccb", - - // md2dd_2m_fast.img.lz - "319fa8bef964c2a63e34bdb48e77cc4e", - - // md2dd_2m_max.img.lz - "306a61469b4c3c83f3e5f9ae409d83cd", - - // md2dd8.img.lz - "beef1cdb004dc69391d6b3d508988b95", - - // md2dd_freedos_800s.img.lz - "29054ef703394ee3b35e849468a412ba", - - // md2dd.img.lz - "6213897b7dbf263f12abf76901d43862", - - // md2dd_maxiform_1640s.img.lz - "c91e852828c2aeee2fc94a6adbeed0ae", - - // md2dd_maxiform_840s.img.lz - "efb6cfe53a6770f0ae388cb2c7f46264", - - // md2dd_qcopy_1476s.img.lz - "6116f7c1397cadd55ba8d79c2aadc9dd", - - // md2dd_qcopy_1600s.img.lz - "93100f8d86e5d0d0e6340f59c52a5e0d", - - // md2dd_qcopy_1640s.img.lz - "cf7b7d43aa70863bedcc4a8432a5af67", - - // md2hd_2m_fast.img.lz - "215198cf2a336e718208fc207bb62c6d", - - // md2hd_2m_max.img.lz - "2c96964b5d91444302e21721c25ea120", - - // md2hd.img.lz - "02259cd5fbcc20f8484aa6bece7a37c6", - - // md2hd_maxiform_2788s.img.lz - "09ca721aa883d5bbaa422c7943b0782c", - - // md2hd_nec.img.lz - "84812b791fd2113b4aa00894f6894339", - - // md2hd_xdf.img.lz - "d78dc81491edeec99aa202d02f3daf00", - - // mf2dd_2m.dsk.lz - "9a8670fbaf6307b8d5f32aa10e1be435", - - // mf2dd_2m_fast.img.lz - "05d29642cdcddafa0dcaff91682f8fe0", - - // mf2dd_2mgui.dsk.lz - "beb782f6bc970e32ceef79cd112e2e48", - - // mf2dd_2m_max.dsk.lz - "a99603cd3219aab1299e66b2999f0e57", - - // mf2dd_2m_max.img.lz - "3da419125f45e1fe3b46f6fad3acc1c2", - - // mf2dd.dsk.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2dd_fdformat_800.dsk.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_fdformat_820.dsk.lz - "81d3bfec7b201f6a4503eb24c4394d4a", - - // mf2dd_freedos_1600s.img.lz - "d07f7ffaee89742c6477aaaf94eb5715", - - // mf2dd_freedos.dsk.lz - "1ff7649b679ba22ff20d39ff717dbec8", - - // mf2dd.img.lz - "9827ba1b3e9cac41263caabd862e78f9", - - // mf2dd_maxiform_1600s.img.lz - "56af87802a9852e6e01e08d544740816", - - // mf2dd_qcopy_1494s.img.lz - "fd7fb1ba11cdfe11db54af0322abf59d", - - // mf2dd_qcopy_1600s.img.lz - "d9db52d992a76bf3bbc626ff844215a5", - - // mf2dd_qcopy_1660s.img.lz - "5949d0be57ce8bffcda7c4be4d1348ee", - - // mf2ed.img.lz - "4aeafaf2a088d6a7406856dce8118567", - - // mf2hd_2m.dsk.lz - "2f6964d410b275c8e9f60fe2f24b361a", - - // mf2hd_2m_fast.img.lz - "967726aede85c68f66887672078f8856", - - // mf2hd_2mgui.dsk.lz - "0037b5497d5cb0c7721085f61e223b6a", - - // mf2hd_2m_max.dsk.lz - "3fa4f87d7058ba940b88e0d80f0d7ded", - - // mf2hd_2m_max.img.lz - "5a6d961ed5f089364f2816692bcbe685", - - // mf2hd_dmf.img.lz - "b042310181410227d0072fef1e98a989", - - // mf2hd.dsk.lz - "b4a602f67903c46eef62addb0780aa56", - - // mf2hd_fdformat_168.dsk.lz - "1e06f21a1c11ea3347212da115bca08f", - - // mf2hd_fdformat_172.dsk.lz - "3fc3a03d049416d81f81cc3b9ea8e5de", - - // mf2hd_freedos_3360s.img.lz - "2bfd2e0a81bad704f8fc7758358cfcca", - - // mf2hd_freedos_3486s.img.lz - "a79ec33c623697b4562dacaed31523b8", - - // mf2hd.img.lz - "00e61c06bf29f0c04a7eabe2dbd7efb6", - - // mf2hd_maxiform_3200s.img.lz - "3c4becd695ed25866d39966a9a93c2d9", - - // mf2hd_nec.img.lz - "626ec389d4f8968170401b3775181a2b", - - // mf2hd_qcopy_2460s.img.lz - "72282e11f7d91bf9c090b550fabfe80d", - - // mf2hd_qcopy_2720s.img.lz - "457c1126dc7f36bbbabe9e17e90372e3", - - // mf2hd_qcopy_2788s.img.lz - "852181d5913c6f290872c66bbe992314", - - // mf2hd_qcopy_2880s.img.lz - "2980cc32504c945598dc50f1db576994", - - // mf2hd_qcopy_2952s.img.lz - "c1c58d74fffb3656dd7f60f74ae8a629", - - // mf2hd_qcopy_2988s.img.lz - "097bb2fd34cee5ebde7b5641975ffd60", - - // mf2hd_qcopy_3200s.img.lz - "e45d41a61fbe48f328c995fcc10a5548", - - // mf2hd_qcopy_3320s.img.lz - "c25f2a57c71db1cd4fea2263598f544a", - - // mf2hd_qcopy_3360s.img.lz - "15f71b92bd72aba5d80bf70eca4d5b1e", - - // mf2hd_qcopy_3486s.img.lz - "d88c8d818e238c9e52b8588b5fd52efe", - - // mf2hd_xdf.dsk.lz - "3d5fcdaf627257ae9f50a06bdba26965", - - // mf2hd_xdf.img.lz - "4cb9398cf02ed9e08d0972c1ccba804b" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "DRI DISKCOPY"); public override IMediaImage _plugin => new DiscImages.DriDiskCopy(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DSKA0000.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "e8bbbd22db87181974e12ba0227ea011" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0001.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "9f5635f3df4d880a500910b0ad1ab535" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0009.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "95ea232f59e44db374b994cfe7f1c07f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0010.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "9e2b01f4397db2a6c76e2bc267df37b3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0024.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2302991363cb3681cffdc4388915b51e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0025.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "f7dd138edcab7bd328d7396d48aac395" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0030.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "af83d011608042d35021e39aa5e10b2f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0035.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6642c1a32d2c58e93481d664974fc202" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0036.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "846f01b8b60cb3c775bd66419e977926" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0037.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "5101f89850dc28efbcfb7622086a9ddf" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0038.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "8e570be2ed1f00ddea82e50a2d9c446a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0039.IMG.lz", + MediaType = MediaType.DOS_35_SS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "abba2a1ddd60a649047a9c44d94bbeae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0040.IMG.lz", + MediaType = MediaType.DOS_35_SS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "e3bc48bec81be5b35be73d41fdffd2ab" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0041.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "43b5068af9d016d1432eb2e12d2b802a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0042.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "5bf2ad4dc300592604b6e32f8b8e2656" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0043.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "cb9a832ca6a4097b8ccc30d2108e1f7d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0044.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "56d181a6bb8713e6b2854fe8887faab6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0045.IMG.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "41aef7cff26aefda1add8d49c5b962c2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0046.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "2437c5f089f1cba3866b36360b016f16" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0047.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_8, + Sectors = 1280, + SectorSize = 512, + MD5 = "bdaa8f17373b265830fdf3a06b794367" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0048.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "629932c285478d0540ff7936aa008351" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0049.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "7a2abef5d4701e2e49abb05af8d4da50" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0050.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "e3507522c914264f44fb2c92c3170c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0051.IMG.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "824fe65dbb1a42b6b94f05405ef984f2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0052.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "1a8c2e78e7132cf9ba5d6c2b75876be0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0053.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "936b20bb0966fe693b4d5e2353e24846" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0054.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "803b01a0b440c2837d37c21308f30cd5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0055.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "aa0d31f914760cc4cde75479779ebed6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0056.IMG.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "31269ed6464302ae26d22b7c87bceb23" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0057.IMG.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "5e413433c54f48978d281c6e66d1106e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0058.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "4fc28b0128543b2eb70f6432c4c8a980" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0059.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3528, + SectorSize = 512, + MD5 = "24a7459d080cea3a60d131b8fd7dc5d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0060.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3570, + SectorSize = 512, + MD5 = "2031b1e16ee2defc0d15f732f633df33" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0069.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "5fc19ca552b6db957061e9a1750394d2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0073.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "a33b46f042b78fe3d0b3c5dbb3908a93" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0074.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "565d3c001cbb532154aa5d3c65b2439c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0075.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "e60442c3ebd72c99bdd7545fdba59613" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0076.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "058a33a129539285c9b64010496af52f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0077.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "0726ecbc38965d30a6222c3e74cd1aa3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0078.IMG.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "c9a193837db7d8a5eb025eb41e8a76d7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0080.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c38d69ac88520f14fcc6d6ced22b065d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0081.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "91d51964e1e64ef3f6f622fa19aa833c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0082.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "db36d9651c952ff679ec33223c8db2d3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0083.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 2988, + SectorSize = 512, + MD5 = "5f1d98806309aee7f81de72e51e6d386" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0084.IMG.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "1207a1cc7ff73d4f74c8984b4e7db33f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0085.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "c97a3081fd25474b6b7945b8572d5ab8" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0089.IMG.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "0abf995856080e5292e63c63f7c97a45" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0090.IMG.lz", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "8be2aaf6ecea213aee9fc82c8a85061e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0091.IMG.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "0a432572a28d3b53a0cf2b5c211fe777" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0092.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 1804, + SectorSize = 512, + MD5 = "cd84fa2d62ac7c36783224c3ba0be664" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0093.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "63d29a9d867d924421c10793a0f22965" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0094.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3116, + SectorSize = 512, + MD5 = "21778906886c0314f0f33c4b0040ba16" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0097.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3608, + SectorSize = 512, + MD5 = "6b8e89b1d5117ba19c3e52544ffe041e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0098.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3772, + SectorSize = 512, + MD5 = "543fc539902eb66b5c312d7908ecf97a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0099.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 1952, + SectorSize = 512, + MD5 = "b30709f798bfb8469d02a82c882f780c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0101.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "0f3e923010b50b550591a89ea2dee62b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0103.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3944, + SectorSize = 512, + MD5 = "d5b927503abcd1978496bc679bb9c2f7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0105.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "d40a99cb549fcfb26fcf9ef01b5dfca7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0106.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 410, + SectorSize = 512, + MD5 = "7b41dd9ca7eb32828960eb1417a6092a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0107.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "126dfd25363c076727dfaab03955c931" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0108.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 820, + SectorSize = 512, + MD5 = "e6492aac144f5f6f593b84c64680cf64" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0109.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "7973e569ed93beb1ece2e84a5ef3a8d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0110.IMG.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a793047503af08e83361427b3e2806e0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0111.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "f01541de322c8d6d7321084d7a245e7b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0112.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "ba6ec1652ff41bcc687aaf9c4e32dc18" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0113.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "7973e569ed93beb1ece2e84a5ef3a8d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0114.IMG.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a793047503af08e83361427b3e2806e0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0115.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "ba6ec1652ff41bcc687aaf9c4e32dc18" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0116.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "6631b66fdfd89319323771c41334c7ba" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0117.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "56471a253f4d6803b634e2bbff6c0931" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0120.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "7d36aee5a3071ff75b979f3acb649c40" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0121.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "0ccb62039363ab544c69eca229a17fae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0122.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "7851d31fad9302ff45d3ded4fba25387" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0123.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "915b08c82591e8488320e001b7303b6d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0124.IMG.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "5e5ea6fe9adf842221fdc60e56630405" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0125.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "a22e254f7e3526ec30dc4915a19fcb52" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0126.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ddc6c1200c60e9f7796280f50c2e5283" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0163.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "be05d1ff10ef8b2220546c4db962ac9e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0164.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 820, + SectorSize = 512, + MD5 = "32823b9009c99b6711e89336ad03ec7f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0166.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1c8b03a8550ed3e70e1c78316aa445aa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0168.IMG.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "0bdf9130c07bb5d558a4705249f949d0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0169.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2dafeddaa99e7dc0db5ef69e128f9c8e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0173.IMG.lz", + MediaType = MediaType.DOS_35_SS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "028769dc0abefab1740cc309432588b6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0174.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "152023525154b45ab26687190bac94db" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0175.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "db38ecd93f28dd065927fed21917eed5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0180.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "f206c0caa4e0eda37233ab6e89ab5493" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0181.IMG.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "554492a7b41f4cd9068a3a2b70eb0e5f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0182.IMG.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "36dd03967a2a3369538cad29b8b74b71" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0183.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "4f5c02448e75bbc086e051c728414513" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0262.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "5ac0a9fc7337f761098f816359b0f6f7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0263.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1ea6ec8e663218b1372048f6e25795b5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0264.IMG.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "77a1167b1b9043496e32b8578cde0ff0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0265.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "4b07d760d65f3f0f8ffa5f2b81cee907" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0266.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "32c044c5c2b0bd13806149a759c14935" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0267.IMG.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "8752095abc13dba3f3467669da333891" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0268.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "aece7cd34bbba3e75307fa70404d9d30" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0269.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "5289afb16a6e4a33213e3bcca56c6230" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0270.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3320, + SectorSize = 512, + MD5 = "1aef0a0ba233476db6567878c3c2b266" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0271.IMG.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "b96596711f4d2ee85dfda0fe3b9f26c3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0272.IMG.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "a4f461af7fda5e93a7ab63fcbb7e7683" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0273.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "8f7f7099d4475f6631fcf0a79b031d61" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0280.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "4feeaf4b4ee5dad85db727fbbda4b6d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0281.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "3c77ca681df78e4cd7baa162aa9b0859" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0282.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "51da1f86c49657ffdb367bb2ddeb7990" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0283.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "b81a4987f89936630b8ebc62e4bbce6e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0284.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "f76f92dd326c99c5efad5ee58daf72e1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0285.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "b6f2c10e42908e334025bc4ffd81e771" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0287.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "f2f409ea2a62a7866fd2777cc4fc9739" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0288.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 1494, + SectorSize = 512, + MD5 = "3e441d69cec5c3169274e1379de4af4b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0289.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "30a93f30dd4485c6fc037fe0775d3fc7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0290.IMG.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "e0caf02cce5597c98313bcc480366ec7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0291.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "4af4904d2b3c815da7bef7049209f5eb" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0299.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "39bf5a98bcb2185d855ac06378febcfa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0300.IMG.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "dc20055b6e6fd6f8e1114d4be2effeed" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0301.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "56af9256cf71d5aac5fd5d363674bc49" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0302.IMG.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "bbba1e2d1418e05c3a4e7b4d585d160b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0303.IMG.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "bca3a045e81617f7f5ebb5a8818eac47" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0304.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "a296663cb8e75e94603221352f29cfff" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0305.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ecda36ebf0e1100233cb0ec722c18583" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0308.IMG.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "bbe58e26b8f8f822cd3edfd37a4e4924" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0311.IMG.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "b9b6ebdf711364c979de7cf70c3a438a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0314.IMG.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "d37424f367f545acbb397f2bed766843" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0316.IMG.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "9963dd6f19ce6bd56eabeccdfbbd821a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0317.IMG.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "acf6604559ae8217f7869823e2429024" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0318.IMG.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "23bf2139cdfdc4c16db058fd31ea6481" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0319.IMG.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "fa26adda0415f02057b113ad29c80c8d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0320.IMG.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "4f2a8d036fefd6c6c88d99eda3aa12b7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0322.IMG.lz", + MediaType = MediaType.Unknown, + Sectors = 1386, + SectorSize = 512, + MD5 = "e794a3ffa4069ea999fdf7146710fa9e" + }, + new BlockImageTestExpected + { + TestFile = "md1dd8.img.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "d81f5cb64fd0b99f138eab34110bbc3c" + }, + new BlockImageTestExpected + { + TestFile = "md1dd.img.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "a89006a75d13bee9202d1d6e52721ccb" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_2m_fast.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "319fa8bef964c2a63e34bdb48e77cc4e" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_2m_max.img.lz", + MediaType = MediaType.Unknown, + Sectors = 1804, + SectorSize = 512, + MD5 = "306a61469b4c3c83f3e5f9ae409d83cd" + }, + new BlockImageTestExpected + { + TestFile = "md2dd8.img.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "beef1cdb004dc69391d6b3d508988b95" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_freedos_800s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "29054ef703394ee3b35e849468a412ba" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.img.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "6213897b7dbf263f12abf76901d43862" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_maxiform_1640s.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "c91e852828c2aeee2fc94a6adbeed0ae" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_maxiform_840s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "efb6cfe53a6770f0ae388cb2c7f46264" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1476s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "6116f7c1397cadd55ba8d79c2aadc9dd" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1600s.img.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "93100f8d86e5d0d0e6340f59c52a5e0d" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1640s.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "cf7b7d43aa70863bedcc4a8432a5af67" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_2m_fast.img.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "215198cf2a336e718208fc207bb62c6d" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_2m_max.img.lz", + MediaType = MediaType.Unknown, + Sectors = 3116, + SectorSize = 512, + MD5 = "2c96964b5d91444302e21721c25ea120" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.img.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "02259cd5fbcc20f8484aa6bece7a37c6" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_maxiform_2788s.img.lz", + MediaType = MediaType.FDFORMAT_525_HD, + Sectors = 2788, + SectorSize = 512, + MD5 = "09ca721aa883d5bbaa422c7943b0782c" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_nec.img.lz", + MediaType = MediaType.SHARP_525, + Sectors = 2464, + SectorSize = 1024, + MD5 = "84812b791fd2113b4aa00894f6894339" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_xdf.img.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "d78dc81491edeec99aa202d02f3daf00" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2m.dsk.lz", + MediaType = MediaType.Unknown, + Sectors = 1968, + SectorSize = 512, + MD5 = "9a8670fbaf6307b8d5f32aa10e1be435" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2m_fast.img.lz", + MediaType = MediaType.Unknown, + Sectors = 1968, + SectorSize = 512, + MD5 = "05d29642cdcddafa0dcaff91682f8fe0" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2mgui.dsk.lz", + MediaType = MediaType.Unknown, + Sectors = 9408, + SectorSize = 128, + MD5 = "beb782f6bc970e32ceef79cd112e2e48" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2m_max.dsk.lz", + MediaType = MediaType.Unknown, + Sectors = 2132, + SectorSize = 512, + MD5 = "a99603cd3219aab1299e66b2999f0e57" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2m_max.img.lz", + MediaType = MediaType.Unknown, + Sectors = 2132, + SectorSize = 512, + MD5 = "3da419125f45e1fe3b46f6fad3acc1c2" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.dsk.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.dsk.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.dsk.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "81d3bfec7b201f6a4503eb24c4394d4a" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos_1600s.img.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "d07f7ffaee89742c6477aaaf94eb5715" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.dsk.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1ff7649b679ba22ff20d39ff717dbec8" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "9827ba1b3e9cac41263caabd862e78f9" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_maxiform_1600s.img.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "56af87802a9852e6e01e08d544740816" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1494s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 1494, + SectorSize = 512, + MD5 = "fd7fb1ba11cdfe11db54af0322abf59d" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1600s.img.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "d9db52d992a76bf3bbc626ff844215a5" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1660s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "5949d0be57ce8bffcda7c4be4d1348ee" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed.img.lz", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "4aeafaf2a088d6a7406856dce8118567" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.dsk.lz", + MediaType = MediaType.Unknown, + Sectors = 3608, + SectorSize = 512, + MD5 = "2f6964d410b275c8e9f60fe2f24b361a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_fast.img.lz", + MediaType = MediaType.Unknown, + Sectors = 3608, + SectorSize = 512, + MD5 = "967726aede85c68f66887672078f8856" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2mgui.dsk.lz", + MediaType = MediaType.Unknown, + Sectors = 15776, + SectorSize = 128, + MD5 = "0037b5497d5cb0c7721085f61e223b6a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.dsk.lz", + MediaType = MediaType.Unknown, + Sectors = 3772, + SectorSize = 512, + MD5 = "3fa4f87d7058ba940b88e0d80f0d7ded" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.img.lz", + MediaType = MediaType.Unknown, + Sectors = 3772, + SectorSize = 512, + MD5 = "5a6d961ed5f089364f2816692bcbe685" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_dmf.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "b042310181410227d0072fef1e98a989" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.dsk.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b4a602f67903c46eef62addb0780aa56" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.dsk.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "1e06f21a1c11ea3347212da115bca08f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.dsk.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "3fc3a03d049416d81f81cc3b9ea8e5de" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos_3360s.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "2bfd2e0a81bad704f8fc7758358cfcca" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos_3486s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "a79ec33c623697b4562dacaed31523b8" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "00e61c06bf29f0c04a7eabe2dbd7efb6" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_maxiform_3200s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "3c4becd695ed25866d39966a9a93c2d9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_nec.img.lz", + MediaType = MediaType.SHARP_525, + Sectors = 2464, + SectorSize = 1024, + MD5 = "626ec389d4f8968170401b3775181a2b" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2460s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "72282e11f7d91bf9c090b550fabfe80d" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2720s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 2720, + SectorSize = 512, + MD5 = "457c1126dc7f36bbbabe9e17e90372e3" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2788s.img.lz", + MediaType = MediaType.FDFORMAT_525_HD, + Sectors = 2788, + SectorSize = 512, + MD5 = "852181d5913c6f290872c66bbe992314" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2880s.img.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2980cc32504c945598dc50f1db576994" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2952s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "c1c58d74fffb3656dd7f60f74ae8a629" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2988s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 2988, + SectorSize = 512, + MD5 = "097bb2fd34cee5ebde7b5641975ffd60" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3200s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "e45d41a61fbe48f328c995fcc10a5548" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3320s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 3320, + SectorSize = 512, + MD5 = "c25f2a57c71db1cd4fea2263598f544a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3360s.img.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "15f71b92bd72aba5d80bf70eca4d5b1e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3486s.img.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "d88c8d818e238c9e52b8588b5fd52efe" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.dsk.lz", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "3d5fcdaf627257ae9f50a06bdba26965" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.img.lz", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "4cb9398cf02ed9e08d0972c1ccba804b" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/GameJack6.cs b/Aaru.Tests/Images/GameJack6.cs index 77b75991d..a9466f002 100644 --- a/Aaru.Tests/Images/GameJack6.cs +++ b/Aaru.Tests/Images/GameJack6.cs @@ -36,696 +36,275 @@ namespace Aaru.Tests.Images [TestFixture] public class GameJack6 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "report_cdrom_cooked_nodpm.xmd", "report_cdrom_cooked.xmd", "report_cdrom_nodpm.xmd", "report_cdrom.xmd", - "report_cdrw.xmd", "report_cdr.xmd", "report_dvdram_v1.xmd", "report_dvdram_v2.xmd", "report_dvd+r-dl.xmd", - "report_dvdrom.xmd", "report_dvd+rw.xmd", "report_dvd-rw.xmd", "report_dvd+r.xmd", "report_dvd-r.xmd" - }; - - public override ulong[] _sectors => new ulong[] - { - // report_cdrom_cooked_nodpm.xmd - 0, - - // report_cdrom_cooked.xmd - 0, - - // report_cdrom_nodpm.xmd - 0, - - // report_cdrom.xmd - 0, - - // report_cdrw.xmd - 0, - - // report_cdr.xmd - 0, - - // report_dvdram_v1.xmd - 0, - - // report_dvdram_v2.xmd - 0, - - // report_dvd+r-dl.xmd - 0, - - // report_dvdrom.xmd - 0, - - // report_dvd+rw.xmd - 0, - - // report_dvd-rw.xmd - 0, - - // report_dvd+r.xmd - 0, - - // report_dvd-r.xmd - 0 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // report_cdrom_cooked_nodpm.xmd - MediaType.CDROM, - - // report_cdrom_cooked.xmd - MediaType.CDROM, - - // report_cdrom_nodpm.xmd - MediaType.CDROM, - - // report_cdrom.xmd - MediaType.CDROM, - - // report_cdrw.xmd - MediaType.CDRW, - - // report_cdr.xmd - MediaType.CDR, - - // report_dvdram_v1.xmd - MediaType.DVDRAM, - - // report_dvdram_v2.xmd - MediaType.DVDRAM, - - // report_dvd+r-dl.xmd - MediaType.DVDPRDL, - - // report_dvdrom.xmd - MediaType.DVDROM, - - // report_dvd+rw.xmd - MediaType.DVDPRW, - - // report_dvd-rw.xmd - MediaType.DVDRW, - - // report_dvd+r.xmd - MediaType.DVDPR, - - // report_dvd-r.xmd - MediaType.DVDR - }; - - public override string[] _md5S => new[] - { - // report_cdrom_cooked_nodpm.xmd - "UNKNOWN", - - // report_cdrom_cooked.xmd - "UNKNOWN", - - // report_cdrom_nodpm.xmd - "UNKNOWN", - - // report_cdrom.xmd - "UNKNOWN", - - // report_cdrw.xmd - "UNKNOWN", - - // report_cdr.xmd - "UNKNOWN", - - // report_dvdram_v1.xmd - "UNKNOWN", - - // report_dvdram_v2.xmd - "UNKNOWN", - - // report_dvd+r-dl.xmd - "UNKNOWN", - - // report_dvdrom.xmd - "UNKNOWN", - - // report_dvd+rw.xmd - "UNKNOWN", - - // report_dvd-rw.xmd - "UNKNOWN", - - // report_dvd+r.xmd - "UNKNOWN", - - // report_dvd-r.xmd - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // report_cdrom_cooked_nodpm.xmd - "UNKNOWN", - - // report_cdrom_cooked.xmd - "UNKNOWN", - - // report_cdrom_nodpm.xmd - "UNKNOWN", - - // report_cdrom.xmd - "UNKNOWN", - - // report_cdrw.xmd - "UNKNOWN", - - // report_cdr.xmd - "UNKNOWN", - - // report_dvdram_v1.xmd - "UNKNOWN", - - // report_dvdram_v2.xmd - "UNKNOWN", - - // report_dvd+r-dl.xmd - "UNKNOWN", - - // report_dvdrom.xmd - "UNKNOWN", - - // report_dvd+rw.xmd - "UNKNOWN", - - // report_dvd-rw.xmd - "UNKNOWN", - - // report_dvd+r.xmd - "UNKNOWN", - - // report_dvd-r.xmd - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // report_cdrom_cooked_nodpm.xmd - "UNKNOWN", - - // report_cdrom_cooked.xmd - "UNKNOWN", - - // report_cdrom_nodpm.xmd - "UNKNOWN", - - // report_cdrom.xmd - "UNKNOWN", - - // report_cdrw.xmd - "UNKNOWN", - - // report_cdr.xmd - "UNKNOWN", - - // report_dvdram_v1.xmd - null, - - // report_dvdram_v2.xmd - null, - - // report_dvd+r-dl.xmd - null, - - // report_dvdrom.xmd - null, - - // report_dvd+rw.xmd - null, - - // report_dvd-rw.xmd - null, - - // report_dvd+r.xmd - null, - - // report_dvd-r.xmd - null - }; - - public override int[] _tracks => new[] - { - // report_cdrom_cooked_nodpm.xmd - 1, - - // report_cdrom_cooked.xmd - 1, - - // report_cdrom_nodpm.xmd - 1, - - // report_cdrom.xmd - 1, - - // report_cdrw.xmd - 1, - - // report_cdr.xmd - 1, - - // report_dvdram_v1.xmd - 1, - - // report_dvdram_v2.xmd - 1, - - // report_dvd+r-dl.xmd - 1, - - // report_dvdrom.xmd - 1, - - // report_dvd+rw.xmd - 1, - - // report_dvd-rw.xmd - 1, - - // report_dvd+r.xmd - 1, - - // report_dvd-r.xmd - 1 - }; - - public override int[][] _trackSessions => new[] - { - // report_cdrom_cooked_nodpm.xmd - new[] - { - 1 - }, - - // report_cdrom_cooked.xmd - new[] - { - 1 - }, - - // report_cdrom_nodpm.xmd - new[] - { - 1 - }, - - // report_cdrom.xmd - new[] - { - 1 - }, - - // report_cdrw.xmd - new[] - { - 1 - }, - - // report_cdr.xmd - new[] - { - 1 - }, - - // report_dvdram_v1.xmd - new[] - { - 1 - }, - - // report_dvdram_v2.xmd - new[] - { - 1 - }, - - // report_dvd+r-dl.xmd - new[] - { - 1 - }, - - // report_dvdrom.xmd - new[] - { - 1 - }, - - // report_dvd+rw.xmd - new[] - { - 1 - }, - - // report_dvd-rw.xmd - new[] - { - 1 - }, - - // report_dvd+r.xmd - new[] - { - 1 - }, - - // report_dvd-r.xmd - new[] - { - 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // report_cdrom_cooked_nodpm.xmd - new ulong[] - { - 0 - }, - - // report_cdrom_cooked.xmd - new ulong[] - { - 0 - }, - - // report_cdrom_nodpm.xmd - new ulong[] - { - 0 - }, - - // report_cdrom.xmd - new ulong[] - { - 0 - }, - - // report_cdrw.xmd - new ulong[] - { - 0 - }, - - // report_cdr.xmd - new ulong[] - { - 0 - }, - - // report_dvdram_v1.xmd - new ulong[] - { - 0 - }, - - // report_dvdram_v2.xmd - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.xmd - new ulong[] - { - 0 - }, - - // report_dvdrom.xmd - new ulong[] - { - 0 - }, - - // report_dvd+rw.xmd - new ulong[] - { - 0 - }, - - // report_dvd-rw.xmd - new ulong[] - { - 0 - }, - - // report_dvd+r.xmd - new ulong[] - { - 0 - }, - - // report_dvd-r.xmd - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // report_cdrom_cooked_nodpm.xmd - new ulong[] - { - 0 - }, - - // report_cdrom_cooked.xmd - new ulong[] - { - 0 - }, - - // report_cdrom_nodpm.xmd - new ulong[] - { - 0 - }, - - // report_cdrom.xmd - new ulong[] - { - 0 - }, - - // report_cdrw.xmd - new ulong[] - { - 0 - }, - - // report_cdr.xmd - new ulong[] - { - 0 - }, - - // report_dvdram_v1.xmd - new ulong[] - { - 0 - }, - - // report_dvdram_v2.xmd - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.xmd - new ulong[] - { - 0 - }, - - // report_dvdrom.xmd - new ulong[] - { - 0 - }, - - // report_dvd+rw.xmd - new ulong[] - { - 0 - }, - - // report_dvd-rw.xmd - new ulong[] - { - 0 - }, - - // report_dvd+r.xmd - new ulong[] - { - 0 - }, - - // report_dvd-r.xmd - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // report_cdrom_cooked_nodpm.xmd - new ulong[] - { - 0 - }, - - // report_cdrom_cooked.xmd - new ulong[] - { - 0 - }, - - // report_cdrom_nodpm.xmd - new ulong[] - { - 0 - }, - - // report_cdrom.xmd - new ulong[] - { - 0 - }, - - // report_cdrw.xmd - new ulong[] - { - 0 - }, - - // report_cdr.xmd - new ulong[] - { - 0 - }, - - // report_dvdram_v1.xmd - new ulong[] - { - 0 - }, - - // report_dvdram_v2.xmd - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.xmd - new ulong[] - { - 0 - }, - - // report_dvdrom.xmd - new ulong[] - { - 0 - }, - - // report_dvd+rw.xmd - new ulong[] - { - 0 - }, - - // report_dvd-rw.xmd - new ulong[] - { - 0 - }, - - // report_dvd+r.xmd - new ulong[] - { - 0 - }, - - // report_dvd-r.xmd - new ulong[] - { - 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // report_cdrom_cooked_nodpm.xmd - new byte[] - { - 0 - }, - - // report_cdrom_cooked.xmd - new byte[] - { - 0 - }, - - // report_cdrom_nodpm.xmd - new byte[] - { - 0 - }, - - // report_cdrom.xmd - new byte[] - { - 0 - }, - - // report_cdrw.xmd - new byte[] - { - 0 - }, - - // report_cdr.xmd - new byte[] - { - 0 - }, - - // report_dvdram_v1.xmd - null, - - // report_dvdram_v2.xmd - null, - - // report_dvd+r-dl.xmd - null, - - // report_dvdrom.xmd - null, - - // report_dvd+rw.xmd - null, - - // report_dvd-rw.xmd - null, - - // report_dvd+r.xmd - null, - - // report_dvd-r.xmd - null - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "HD-COPY"); public override IMediaImage _plugin => new DiscImages.Alcohol120(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "report_cdrom_cooked_nodpm.xmd", + MediaType = MediaType.CDROM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom_cooked.xmd", + MediaType = MediaType.CDROM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom_nodpm.xmd", + MediaType = MediaType.CDROM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.xmd", + MediaType = MediaType.CDROM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.xmd", + MediaType = MediaType.CDRW, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.xmd", + MediaType = MediaType.CDR, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v1.xmd", + MediaType = MediaType.DVDRAM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.xmd", + MediaType = MediaType.DVDRAM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r-dl.xmd", + MediaType = MediaType.DVDPRDL, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdrom.xmd", + MediaType = MediaType.DVDROM, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+rw.xmd", + MediaType = MediaType.DVDPRW, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-rw.xmd", + MediaType = MediaType.DVDRW, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r.xmd", + MediaType = MediaType.DVDPR, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-r.xmd", + MediaType = MediaType.DVDR, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/HDCopy.cs b/Aaru.Tests/Images/HDCopy.cs index 35adc9a1d..15fad0ecb 100644 --- a/Aaru.Tests/Images/HDCopy.cs +++ b/Aaru.Tests/Images/HDCopy.cs @@ -37,1109 +37,723 @@ namespace Aaru.Tests.Images [TestFixture] public class HDCopy : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DSKA0000.IMG.lz", "DSKA0001.IMG.lz", "DSKA0009.IMG.lz", "DSKA0010.IMG.lz", "DSKA0024.IMG.lz", - "DSKA0025.IMG.lz", "DSKA0030.IMG.lz", "DSKA0045.IMG.lz", "DSKA0046.IMG.lz", "DSKA0047.IMG.lz", - "DSKA0048.IMG.lz", "DSKA0049.IMG.lz", "DSKA0050.IMG.lz", "DSKA0051.IMG.lz", "DSKA0052.IMG.lz", - "DSKA0053.IMG.lz", "DSKA0054.IMG.lz", "DSKA0055.IMG.lz", "DSKA0056.IMG.lz", "DSKA0057.IMG.lz", - "DSKA0058.IMG.lz", "DSKA0059.IMG.lz", "DSKA0060.IMG.lz", "DSKA0069.IMG.lz", "DSKA0075.IMG.lz", - "DSKA0076.IMG.lz", "DSKA0078.IMG.lz", "DSKA0080.IMG.lz", "DSKA0082.IMG.lz", "DSKA0084.IMG.lz", - "DSKA0107.IMG.lz", "DSKA0108.IMG.lz", "DSKA0111.IMG.lz", "DSKA0112.IMG.lz", "DSKA0113.IMG.lz", - "DSKA0114.IMG.lz", "DSKA0115.IMG.lz", "DSKA0116.IMG.lz", "DSKA0117.IMG.lz", "DSKA0122.IMG.lz", - "DSKA0123.IMG.lz", "DSKA0124.IMG.lz", "DSKA0125.IMG.lz", "DSKA0126.IMG.lz", "DSKA0163.IMG.lz", - "DSKA0164.IMG.lz", "DSKA0168.IMG.lz", "DSKA0169.IMG.lz", "DSKA0170.IMG.lz", "DSKA0171.IMG.lz", - "DSKA0174.IMG.lz", "DSKA0175.IMG.lz", "DSKA0176.IMG.lz", "DSKA0177.IMG.lz", "DSKA0180.IMG.lz", - "DSKA0181.IMG.lz", "DSKA0182.IMG.lz", "DSKA0183.IMG.lz", "DSKA0262.IMG.lz", "DSKA0263.IMG.lz", - "DSKA0264.IMG.lz", "DSKA0265.IMG.lz", "DSKA0266.IMG.lz", "DSKA0267.IMG.lz", "DSKA0268.IMG.lz", - "DSKA0269.IMG.lz", "DSKA0270.IMG.lz", "DSKA0271.IMG.lz", "DSKA0272.IMG.lz", "DSKA0273.IMG.lz", - "DSKA0282.IMG.lz", "DSKA0283.IMG.lz", "DSKA0284.IMG.lz", "DSKA0285.IMG.lz", "DSKA0301.IMG.lz", - "DSKA0302.IMG.lz", "DSKA0303.IMG.lz", "DSKA0304.IMG.lz", "DSKA0305.IMG.lz", "DSKA0311.IMG.lz", - "DSKA0314.IMG.lz", "DSKA0316.IMG.lz", "DSKA0317.IMG.lz", "DSKA0318.IMG.lz", "DSKA0319.IMG.lz", - "DSKA0320.IMG.lz", "TFULL.IMG.lz", "TFULLPAS.IMG.lz", "TNORMAL.IMG.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DSKA0000.IMG.lz - 0, - - // DSKA0001.IMG.lz - 0, - - // DSKA0009.IMG.lz - 0, - - // DSKA0010.IMG.lz - 0, - - // DSKA0024.IMG.lz - 0, - - // DSKA0025.IMG.lz - 0, - - // DSKA0030.IMG.lz - 0, - - // DSKA0045.IMG.lz - 0, - - // DSKA0046.IMG.lz - 0, - - // DSKA0047.IMG.lz - 0, - - // DSKA0048.IMG.lz - 0, - - // DSKA0049.IMG.lz - 0, - - // DSKA0050.IMG.lz - 0, - - // DSKA0051.IMG.lz - 0, - - // DSKA0052.IMG.lz - 0, - - // DSKA0053.IMG.lz - 0, - - // DSKA0054.IMG.lz - 0, - - // DSKA0055.IMG.lz - 0, - - // DSKA0056.IMG.lz - 0, - - // DSKA0057.IMG.lz - 0, - - // DSKA0058.IMG.lz - 0, - - // DSKA0059.IMG.lz - 0, - - // DSKA0060.IMG.lz - 0, - - // DSKA0069.IMG.lz - 0, - - // DSKA0075.IMG.lz - 0, - - // DSKA0076.IMG.lz - 0, - - // DSKA0078.IMG.lz - 0, - - // DSKA0080.IMG.lz - 0, - - // DSKA0082.IMG.lz - 0, - - // DSKA0084.IMG.lz - 0, - - // DSKA0107.IMG.lz - 0, - - // DSKA0108.IMG.lz - 0, - - // DSKA0111.IMG.lz - 0, - - // DSKA0112.IMG.lz - 0, - - // DSKA0113.IMG.lz - 0, - - // DSKA0114.IMG.lz - 0, - - // DSKA0115.IMG.lz - 0, - - // DSKA0116.IMG.lz - 0, - - // DSKA0117.IMG.lz - 0, - - // DSKA0122.IMG.lz - 0, - - // DSKA0123.IMG.lz - 0, - - // DSKA0124.IMG.lz - 0, - - // DSKA0125.IMG.lz - 0, - - // DSKA0126.IMG.lz - 0, - - // DSKA0163.IMG.lz - 0, - - // DSKA0164.IMG.lz - 0, - - // DSKA0168.IMG.lz - 0, - - // DSKA0169.IMG.lz - 0, - - // DSKA0170.IMG.lz - 0, - - // DSKA0171.IMG.lz - 0, - - // DSKA0174.IMG.lz - 0, - - // DSKA0175.IMG.lz - 0, - - // DSKA0176.IMG.lz - 0, - - // DSKA0177.IMG.lz - 0, - - // DSKA0180.IMG.lz - 0, - - // DSKA0181.IMG.lz - 0, - - // DSKA0182.IMG.lz - 0, - - // DSKA0183.IMG.lz - 0, - - // DSKA0262.IMG.lz - 0, - - // DSKA0263.IMG.lz - 0, - - // DSKA0264.IMG.lz - 0, - - // DSKA0265.IMG.lz - 0, - - // DSKA0266.IMG.lz - 0, - - // DSKA0267.IMG.lz - 0, - - // DSKA0268.IMG.lz - 0, - - // DSKA0269.IMG.lz - 0, - - // DSKA0270.IMG.lz - 0, - - // DSKA0271.IMG.lz - 0, - - // DSKA0272.IMG.lz - 0, - - // DSKA0273.IMG.lz - 0, - - // DSKA0282.IMG.lz - 0, - - // DSKA0283.IMG.lz - 0, - - // DSKA0284.IMG.lz - 0, - - // DSKA0285.IMG.lz - 0, - - // DSKA0301.IMG.lz - 0, - - // DSKA0302.IMG.lz - 0, - - // DSKA0303.IMG.lz - 0, - - // DSKA0304.IMG.lz - 0, - - // DSKA0305.IMG.lz - 0, - - // DSKA0311.IMG.lz - 0, - - // DSKA0314.IMG.lz - 0, - - // DSKA0316.IMG.lz - 0, - - // DSKA0317.IMG.lz - 0, - - // DSKA0318.IMG.lz - 0, - - // DSKA0319.IMG.lz - 0, - - // DSKA0320.IMG.lz - 0, - - // TFULL.IMG.lz - 0, - - // TFULLPAS.IMG.lz - 0, - - // TNORMAL.IMG.lz - 0 - }; - - public override uint[] _sectorSize => new uint[] - { - // DSKA0000.IMG.lz - 0, - - // DSKA0001.IMG.lz - 0, - - // DSKA0009.IMG.lz - 0, - - // DSKA0010.IMG.lz - 0, - - // DSKA0024.IMG.lz - 0, - - // DSKA0025.IMG.lz - 0, - - // DSKA0030.IMG.lz - 0, - - // DSKA0045.IMG.lz - 0, - - // DSKA0046.IMG.lz - 0, - - // DSKA0047.IMG.lz - 0, - - // DSKA0048.IMG.lz - 0, - - // DSKA0049.IMG.lz - 0, - - // DSKA0050.IMG.lz - 0, - - // DSKA0051.IMG.lz - 0, - - // DSKA0052.IMG.lz - 0, - - // DSKA0053.IMG.lz - 0, - - // DSKA0054.IMG.lz - 0, - - // DSKA0055.IMG.lz - 0, - - // DSKA0056.IMG.lz - 0, - - // DSKA0057.IMG.lz - 0, - - // DSKA0058.IMG.lz - 0, - - // DSKA0059.IMG.lz - 0, - - // DSKA0060.IMG.lz - 0, - - // DSKA0069.IMG.lz - 0, - - // DSKA0075.IMG.lz - 0, - - // DSKA0076.IMG.lz - 0, - - // DSKA0078.IMG.lz - 0, - - // DSKA0080.IMG.lz - 0, - - // DSKA0082.IMG.lz - 0, - - // DSKA0084.IMG.lz - 0, - - // DSKA0107.IMG.lz - 0, - - // DSKA0108.IMG.lz - 0, - - // DSKA0111.IMG.lz - 0, - - // DSKA0112.IMG.lz - 0, - - // DSKA0113.IMG.lz - 0, - - // DSKA0114.IMG.lz - 0, - - // DSKA0115.IMG.lz - 0, - - // DSKA0116.IMG.lz - 0, - - // DSKA0117.IMG.lz - 0, - - // DSKA0122.IMG.lz - 0, - - // DSKA0123.IMG.lz - 0, - - // DSKA0124.IMG.lz - 0, - - // DSKA0125.IMG.lz - 0, - - // DSKA0126.IMG.lz - 0, - - // DSKA0163.IMG.lz - 0, - - // DSKA0164.IMG.lz - 0, - - // DSKA0168.IMG.lz - 0, - - // DSKA0169.IMG.lz - 0, - - // DSKA0170.IMG.lz - 0, - - // DSKA0171.IMG.lz - 0, - - // DSKA0174.IMG.lz - 0, - - // DSKA0175.IMG.lz - 0, - - // DSKA0176.IMG.lz - 0, - - // DSKA0177.IMG.lz - 0, - - // DSKA0180.IMG.lz - 0, - - // DSKA0181.IMG.lz - 0, - - // DSKA0182.IMG.lz - 0, - - // DSKA0183.IMG.lz - 0, - - // DSKA0262.IMG.lz - 0, - - // DSKA0263.IMG.lz - 0, - - // DSKA0264.IMG.lz - 0, - - // DSKA0265.IMG.lz - 0, - - // DSKA0266.IMG.lz - 0, - - // DSKA0267.IMG.lz - 0, - - // DSKA0268.IMG.lz - 0, - - // DSKA0269.IMG.lz - 0, - - // DSKA0270.IMG.lz - 0, - - // DSKA0271.IMG.lz - 0, - - // DSKA0272.IMG.lz - 0, - - // DSKA0273.IMG.lz - 0, - - // DSKA0282.IMG.lz - 0, - - // DSKA0283.IMG.lz - 0, - - // DSKA0284.IMG.lz - 0, - - // DSKA0285.IMG.lz - 0, - - // DSKA0301.IMG.lz - 0, - - // DSKA0302.IMG.lz - 0, - - // DSKA0303.IMG.lz - 0, - - // DSKA0304.IMG.lz - 0, - - // DSKA0305.IMG.lz - 0, - - // DSKA0311.IMG.lz - 0, - - // DSKA0314.IMG.lz - 0, - - // DSKA0316.IMG.lz - 0, - - // DSKA0317.IMG.lz - 0, - - // DSKA0318.IMG.lz - 0, - - // DSKA0319.IMG.lz - 0, - - // DSKA0320.IMG.lz - 0, - - // TFULL.IMG.lz - 0, - - // TFULLPAS.IMG.lz - 0, - - // TNORMAL.IMG.lz - 0 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DSKA0000.IMG.lz - MediaType.CD, - - // DSKA0001.IMG.lz - MediaType.CD, - - // DSKA0009.IMG.lz - MediaType.CD, - - // DSKA0010.IMG.lz - MediaType.CD, - - // DSKA0024.IMG.lz - MediaType.CD, - - // DSKA0025.IMG.lz - MediaType.CD, - - // DSKA0030.IMG.lz - MediaType.CD, - - // DSKA0045.IMG.lz - MediaType.CD, - - // DSKA0046.IMG.lz - MediaType.CD, - - // DSKA0047.IMG.lz - MediaType.CD, - - // DSKA0048.IMG.lz - MediaType.CD, - - // DSKA0049.IMG.lz - MediaType.CD, - - // DSKA0050.IMG.lz - MediaType.CD, - - // DSKA0051.IMG.lz - MediaType.CD, - - // DSKA0052.IMG.lz - MediaType.CD, - - // DSKA0053.IMG.lz - MediaType.CD, - - // DSKA0054.IMG.lz - MediaType.CD, - - // DSKA0055.IMG.lz - MediaType.CD, - - // DSKA0056.IMG.lz - MediaType.CD, - - // DSKA0057.IMG.lz - MediaType.CD, - - // DSKA0058.IMG.lz - MediaType.CD, - - // DSKA0059.IMG.lz - MediaType.CD, - - // DSKA0060.IMG.lz - MediaType.CD, - - // DSKA0069.IMG.lz - MediaType.CD, - - // DSKA0075.IMG.lz - MediaType.CD, - - // DSKA0076.IMG.lz - MediaType.CD, - - // DSKA0078.IMG.lz - MediaType.CD, - - // DSKA0080.IMG.lz - MediaType.CD, - - // DSKA0082.IMG.lz - MediaType.CD, - - // DSKA0084.IMG.lz - MediaType.CD, - - // DSKA0107.IMG.lz - MediaType.CD, - - // DSKA0108.IMG.lz - MediaType.CD, - - // DSKA0111.IMG.lz - MediaType.CD, - - // DSKA0112.IMG.lz - MediaType.CD, - - // DSKA0113.IMG.lz - MediaType.CD, - - // DSKA0114.IMG.lz - MediaType.CD, - - // DSKA0115.IMG.lz - MediaType.CD, - - // DSKA0116.IMG.lz - MediaType.CD, - - // DSKA0117.IMG.lz - MediaType.CD, - - // DSKA0122.IMG.lz - MediaType.CD, - - // DSKA0123.IMG.lz - MediaType.CD, - - // DSKA0124.IMG.lz - MediaType.CD, - - // DSKA0125.IMG.lz - MediaType.CD, - - // DSKA0126.IMG.lz - MediaType.CD, - - // DSKA0163.IMG.lz - MediaType.CD, - - // DSKA0164.IMG.lz - MediaType.CD, - - // DSKA0168.IMG.lz - MediaType.CD, - - // DSKA0169.IMG.lz - MediaType.CD, - - // DSKA0170.IMG.lz - MediaType.CD, - - // DSKA0171.IMG.lz - MediaType.CD, - - // DSKA0174.IMG.lz - MediaType.CD, - - // DSKA0175.IMG.lz - MediaType.CD, - - // DSKA0176.IMG.lz - MediaType.CD, - - // DSKA0177.IMG.lz - MediaType.CD, - - // DSKA0180.IMG.lz - MediaType.CD, - - // DSKA0181.IMG.lz - MediaType.CD, - - // DSKA0182.IMG.lz - MediaType.CD, - - // DSKA0183.IMG.lz - MediaType.CD, - - // DSKA0262.IMG.lz - MediaType.CD, - - // DSKA0263.IMG.lz - MediaType.CD, - - // DSKA0264.IMG.lz - MediaType.CD, - - // DSKA0265.IMG.lz - MediaType.CD, - - // DSKA0266.IMG.lz - MediaType.CD, - - // DSKA0267.IMG.lz - MediaType.CD, - - // DSKA0268.IMG.lz - MediaType.CD, - - // DSKA0269.IMG.lz - MediaType.CD, - - // DSKA0270.IMG.lz - MediaType.CD, - - // DSKA0271.IMG.lz - MediaType.CD, - - // DSKA0272.IMG.lz - MediaType.CD, - - // DSKA0273.IMG.lz - MediaType.CD, - - // DSKA0282.IMG.lz - MediaType.CD, - - // DSKA0283.IMG.lz - MediaType.CD, - - // DSKA0284.IMG.lz - MediaType.CD, - - // DSKA0285.IMG.lz - MediaType.CD, - - // DSKA0301.IMG.lz - MediaType.CD, - - // DSKA0302.IMG.lz - MediaType.CD, - - // DSKA0303.IMG.lz - MediaType.CD, - - // DSKA0304.IMG.lz - MediaType.CD, - - // DSKA0305.IMG.lz - MediaType.CD, - - // DSKA0311.IMG.lz - MediaType.CD, - - // DSKA0314.IMG.lz - MediaType.CD, - - // DSKA0316.IMG.lz - MediaType.CD, - - // DSKA0317.IMG.lz - MediaType.CD, - - // DSKA0318.IMG.lz - MediaType.CD, - - // DSKA0319.IMG.lz - MediaType.CD, - - // DSKA0320.IMG.lz - MediaType.CD, - - // TFULL.IMG.lz - MediaType.CD, - - // TFULLPAS.IMG.lz - MediaType.CD, - - // TNORMAL.IMG.lz - MediaType.CD - }; - - public override string[] _md5S => new[] - { - // DSKA0000.IMG.lz - "UNKNOWN", - - // DSKA0001.IMG.lz - "UNKNOWN", - - // DSKA0009.IMG.lz - "UNKNOWN", - - // DSKA0010.IMG.lz - "UNKNOWN", - - // DSKA0024.IMG.lz - "UNKNOWN", - - // DSKA0025.IMG.lz - "UNKNOWN", - - // DSKA0030.IMG.lz - "UNKNOWN", - - // DSKA0045.IMG.lz - "UNKNOWN", - - // DSKA0046.IMG.lz - "UNKNOWN", - - // DSKA0047.IMG.lz - "UNKNOWN", - - // DSKA0048.IMG.lz - "UNKNOWN", - - // DSKA0049.IMG.lz - "UNKNOWN", - - // DSKA0050.IMG.lz - "UNKNOWN", - - // DSKA0051.IMG.lz - "UNKNOWN", - - // DSKA0052.IMG.lz - "UNKNOWN", - - // DSKA0053.IMG.lz - "UNKNOWN", - - // DSKA0054.IMG.lz - "UNKNOWN", - - // DSKA0055.IMG.lz - "UNKNOWN", - - // DSKA0056.IMG.lz - "UNKNOWN", - - // DSKA0057.IMG.lz - "UNKNOWN", - - // DSKA0058.IMG.lz - "UNKNOWN", - - // DSKA0059.IMG.lz - "UNKNOWN", - - // DSKA0060.IMG.lz - "UNKNOWN", - - // DSKA0069.IMG.lz - "UNKNOWN", - - // DSKA0075.IMG.lz - "UNKNOWN", - - // DSKA0076.IMG.lz - "UNKNOWN", - - // DSKA0078.IMG.lz - "UNKNOWN", - - // DSKA0080.IMG.lz - "UNKNOWN", - - // DSKA0082.IMG.lz - "UNKNOWN", - - // DSKA0084.IMG.lz - "UNKNOWN", - - // DSKA0107.IMG.lz - "UNKNOWN", - - // DSKA0108.IMG.lz - "UNKNOWN", - - // DSKA0111.IMG.lz - "UNKNOWN", - - // DSKA0112.IMG.lz - "UNKNOWN", - - // DSKA0113.IMG.lz - "UNKNOWN", - - // DSKA0114.IMG.lz - "UNKNOWN", - - // DSKA0115.IMG.lz - "UNKNOWN", - - // DSKA0116.IMG.lz - "UNKNOWN", - - // DSKA0117.IMG.lz - "UNKNOWN", - - // DSKA0122.IMG.lz - "UNKNOWN", - - // DSKA0123.IMG.lz - "UNKNOWN", - - // DSKA0124.IMG.lz - "UNKNOWN", - - // DSKA0125.IMG.lz - "UNKNOWN", - - // DSKA0126.IMG.lz - "UNKNOWN", - - // DSKA0163.IMG.lz - "UNKNOWN", - - // DSKA0164.IMG.lz - "UNKNOWN", - - // DSKA0168.IMG.lz - "UNKNOWN", - - // DSKA0169.IMG.lz - "UNKNOWN", - - // DSKA0170.IMG.lz - "UNKNOWN", - - // DSKA0171.IMG.lz - "UNKNOWN", - - // DSKA0174.IMG.lz - "UNKNOWN", - - // DSKA0175.IMG.lz - "UNKNOWN", - - // DSKA0176.IMG.lz - "UNKNOWN", - - // DSKA0177.IMG.lz - "UNKNOWN", - - // DSKA0180.IMG.lz - "UNKNOWN", - - // DSKA0181.IMG.lz - "UNKNOWN", - - // DSKA0182.IMG.lz - "UNKNOWN", - - // DSKA0183.IMG.lz - "UNKNOWN", - - // DSKA0262.IMG.lz - "UNKNOWN", - - // DSKA0263.IMG.lz - "UNKNOWN", - - // DSKA0264.IMG.lz - "UNKNOWN", - - // DSKA0265.IMG.lz - "UNKNOWN", - - // DSKA0266.IMG.lz - "UNKNOWN", - - // DSKA0267.IMG.lz - "UNKNOWN", - - // DSKA0268.IMG.lz - "UNKNOWN", - - // DSKA0269.IMG.lz - "UNKNOWN", - - // DSKA0270.IMG.lz - "UNKNOWN", - - // DSKA0271.IMG.lz - "UNKNOWN", - - // DSKA0272.IMG.lz - "UNKNOWN", - - // DSKA0273.IMG.lz - "UNKNOWN", - - // DSKA0282.IMG.lz - "UNKNOWN", - - // DSKA0283.IMG.lz - "UNKNOWN", - - // DSKA0284.IMG.lz - "UNKNOWN", - - // DSKA0285.IMG.lz - "UNKNOWN", - - // DSKA0301.IMG.lz - "UNKNOWN", - - // DSKA0302.IMG.lz - "UNKNOWN", - - // DSKA0303.IMG.lz - "UNKNOWN", - - // DSKA0304.IMG.lz - "UNKNOWN", - - // DSKA0305.IMG.lz - "UNKNOWN", - - // DSKA0311.IMG.lz - "UNKNOWN", - - // DSKA0314.IMG.lz - "UNKNOWN", - - // DSKA0316.IMG.lz - "UNKNOWN", - - // DSKA0317.IMG.lz - "UNKNOWN", - - // DSKA0318.IMG.lz - "UNKNOWN", - - // DSKA0319.IMG.lz - "UNKNOWN", - - // DSKA0320.IMG.lz - "UNKNOWN", - - // TFULL.IMG.lz - "UNKNOWN", - - // TFULLPAS.IMG.lz - "UNKNOWN", - - // TNORMAL.IMG.lz - "UNKNOWN" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "HD-COPY"); public override IMediaImage _plugin => new HdCopy(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DSKA0000.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0001.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0009.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0010.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0024.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0025.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0030.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0045.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0046.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0047.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0048.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0049.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0050.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0051.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0052.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0053.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0054.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0055.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0056.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0057.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0058.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0059.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0060.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0069.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0075.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0076.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0078.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0080.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0082.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0084.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0107.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0108.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0111.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0112.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0113.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0114.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0115.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0116.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0117.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0122.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0123.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0124.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0125.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0126.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0163.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0164.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0168.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0169.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0170.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0171.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0174.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0175.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0176.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0177.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0180.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0181.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0182.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0183.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0262.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0263.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0264.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0265.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0266.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0267.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0268.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0269.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0270.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0271.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0272.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0273.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0282.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0283.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0284.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0285.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0301.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0302.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0303.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0304.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0305.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0311.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0314.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0316.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0317.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0318.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0319.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0320.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "TFULL.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "TFULLPAS.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "TNORMAL.IMG.lz", + MediaType = MediaType.CD, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/HxC/ImageDisk.cs b/Aaru.Tests/Images/HxC/ImageDisk.cs index d9dd428b7..90f0bed93 100644 --- a/Aaru.Tests/Images/HxC/ImageDisk.cs +++ b/Aaru.Tests/Images/HxC/ImageDisk.cs @@ -37,342 +37,220 @@ namespace Aaru.Tests.Images.HxC [TestFixture] public class ImageDisk : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "md1dd_8.imd.lz", "md1dd.imd.lz", "md2dd_8.imd.lz", "md2dd.imd.lz", "md2hd.imd.lz", "md2hd_nec.imd.lz", - "mf1dd_10.imd.lz", "mf1dd_11.imd.lz", "mf2dd_10.imd.lz", "mf2dd_11.imd.lz", "mf2dd_acorn.imd.lz", - "mf2dd_fdformat_800.imd.lz", "mf2dd_fdformat_820.imd.lz", "mf2dd_freedos.imd.lz", "mf2dd.imd.lz", - "mf2ed.imd.lz", "mf2hd_2m.imd.lz", "mf2hd_2m_max.imd.lz", "mf2hd_fdformat_168.imd.lz", - "mf2hd_fdformat_172.imd.lz", "mf2hd_freedos.imd.lz", "mf2hd.imd.lz", "rx01.imd.lz", "rx50.imd.lz", - "mf2hd_xdf.imd.lz", "mf2hd_xdf_teledisk.imd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // md1dd_8.imd.lz - 320, - - // md1dd.imd.lz - 360, - - // md2dd_8.imd.lz - 640, - - // md2dd.imd.lz - 720, - - // md2hd.imd.lz - 2400, - - // md2hd_nec.imd.lz - 1232, - - // mf1dd_10.imd.lz - 800, - - // mf1dd_11.imd.lz - 880, - - // mf2dd_10.imd.lz - 1600, - - // mf2dd_11.imd.lz - 1760, - - // mf2dd_acorn.imd.lz - 800, - - // mf2dd_fdformat_800.imd.lz - 1600, - - // mf2dd_fdformat_820.imd.lz - 1640, - - // mf2dd_freedos.imd.lz - 1640, - - // mf2dd.imd.lz - 1440, - - // mf2ed.imd.lz - 5760, - - // mf2hd_2m.imd.lz - 1812, - - // mf2hd_2m_max.imd.lz - 1160, - - // mf2hd_fdformat_168.imd.lz - 3372, - - // mf2hd_fdformat_172.imd.lz - 3444, - - // mf2hd_freedos.imd.lz - 3486, - - // mf2hd.imd.lz - 2882, - - // rx01.imd.lz - 2002, - - // rx50.imd.lz - 800, - - // mf2hd_xdf.imd.lz - 0, - - // mf2hd_xdf_teledisk.imd.lz - 0 - }; - - public override uint[] _sectorSize => new uint[] - { - // md1dd_8.imd.lz - 512, - - // md1dd.imd.lz - 512, - - // md2dd_8.imd.lz - 512, - - // md2dd.imd.lz - 512, - - // md2hd.imd.lz - 512, - - // md2hd_nec.imd.lz - 1024, - - // mf1dd_10.imd.lz - 512, - - // mf1dd_11.imd.lz - 512, - - // mf2dd_10.imd.lz - 512, - - // mf2dd_11.imd.lz - 512, - - // mf2dd_acorn.imd.lz - 1024, - - // mf2dd_fdformat_800.imd.lz - 512, - - // mf2dd_fdformat_820.imd.lz - 512, - - // mf2dd_freedos.imd.lz - 512, - - // mf2dd.imd.lz - 512, - - // mf2ed.imd.lz - 512, - - // mf2hd_2m.imd.lz - 1024, - - // mf2hd_2m_max.imd.lz - 2048, - - // mf2hd_fdformat_168.imd.lz - 512, - - // mf2hd_fdformat_172.imd.lz - 512, - - // mf2hd_freedos.imd.lz - 512, - - // mf2hd.imd.lz - 2048, - - // rx01.imd.lz - 128, - - // rx50.imd.lz - 512, - - // mf2hd_xdf.imd.lz - 0, - - // mf2hd_xdf_teledisk.imd.lz - 0 - }; - - public override MediaType[] _mediaTypes => new[] - { - // Media type: md1dd_8.imd.lz - MediaType.DOS_525_SS_DD_8, - - // Media type: md1dd.imd.lz - MediaType.DOS_525_SS_DD_9, - - // Media type: md2dd_8.imd.lz - MediaType.DOS_525_DS_DD_8, - - // Media type: md2dd.imd.lz - MediaType.DOS_525_DS_DD_9, - - // Media type: md2hd.imd.lz - MediaType.NEC_35_HD_15, - - // Media type: md2hd_nec.imd.lz - MediaType.NEC_35_HD_8, - - // Media type: mf1dd_10.imd.lz - MediaType.RX50, - - // Media type: mf1dd_11.imd.lz - MediaType.ATARI_35_SS_DD_11, - - // Media type: mf2dd_10.imd.lz - MediaType.CBM_35_DD, - - // Media type: mf2dd_11.imd.lz - MediaType.CBM_AMIGA_35_DD, - - // Media type: mf2dd_acorn.imd.lz - MediaType.Unknown, - - // Media type: mf2dd_fdformat_800.imd.lz - MediaType.CBM_35_DD, - - // Media type: mf2dd_fdformat_820.imd.lz - MediaType.Unknown, - - // Media type: mf2dd_freedos.imd.lz - MediaType.FDFORMAT_35_DD, - - // Media type: mf2dd.imd.lz - MediaType.DOS_35_DS_DD_9, - - // Media type: mf2ed.imd.lz - MediaType.ECMA_147, - - // Media type: mf2hd_2m.imd.lz - MediaType.Unknown, - - // Media type: mf2hd_2m_max.imd.lz - MediaType.Unknown, - - // Media type: mf2hd_fdformat_168.imd.lz - MediaType.Unknown, - - // Media type: mf2hd_fdformat_172.imd.lz - MediaType.Unknown, - - // Media type: mf2hd_freedos.imd.lz - MediaType.Unknown, - - // Media type: mf2hd.imd.lz - MediaType.Unknown, - - // Media type: rx01.imd.lz - MediaType.Unknown, - - // Media type: rx50.imd.lz - MediaType.RX50, - - // mf2hd_xdf.imd.lz - MediaType.XDF_35, - - // mf2hd_xdf_teledisk.imd.lz - MediaType.XDF_35 - }; - - public override string[] _md5S => new[] - { - // md1dd_8.imd.lz - "8308e749af855a3ded48d474eb7c305e", - - // md1dd.imd.lz - "b7b8a69b10ee4ec921aa8eea232fdd75", - - // md2dd_8.imd.lz - "f4a77a2d2a1868dc18e8b92032d02fd2", - - // md2dd.imd.lz - "099d95ac42d1a8010f914ac64ede7a70", - - // md2hd.imd.lz - "3df7cd10044af75d77e8936af0dbf9ff", - - // md2hd_nec.imd.lz - "fd54916f713d01b670c1a5df5e74a97f", - - // mf1dd_10.imd.lz - "d75d3e79d9c5051922d4c2226fa4a6ff", - - // mf1dd_11.imd.lz - "e16ed33a1a466826562c681d8bdf3e27", - - // mf2dd_10.imd.lz - "fd48b2c12097cbc646b4a93ef4f92259", - - // mf2dd_11.imd.lz - "512f7175e753e2e2ad620d448c42545d", - - // mf2dd_acorn.imd.lz - "2626f65b49ec085253c41fa2e2a9e788", - - // mf2dd_fdformat_800.imd.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_fdformat_820.imd.lz - "9d978dff1196b456b8372d78e6b17970", - - // mf2dd_freedos.imd.lz - "456390a9c6ab05cb458a03c47296de08", - - // mf2dd.imd.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2ed.imd.lz - "854d0d49a522b64af698e319a24cd68e", - - // mf2hd_2m.imd.lz - "7ee82cecd23b30cc9aa6f0ec59877851", - - // mf2hd_2m_max.imd.lz - "90a3c86eb9f8bdf6e4c15c445dff121e", - - // mf2hd_fdformat_168.imd.lz - "7f9164dc43bffc895db751ba1d9b55a9", - - // mf2hd_fdformat_172.imd.lz - "9dea1e119a73a21a38d134f36b2e5564", - - // mf2hd_freedos.imd.lz - "dbd52e9e684f97d9e2292811242bb24e", - - // mf2hd.imd.lz - "f5fff7704fb677ebf23d27cd937c9403", - - // rx01.imd.lz - "5b4e36d92b180c3845387391cb5a1c64", - - // rx50.imd.lz - "ccd4431139755c58f340681f63510642", - - // mf2hd_xdf.imd.lz - "UNKNOWN", - - // mf2hd_xdf_teledisk.imd.lz - "UNKNOWN" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "HxC", "ImageDisk"); public override IMediaImage _plugin => new Imd(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "md1dd_8.imd.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "8308e749af855a3ded48d474eb7c305e" + }, + new BlockImageTestExpected + { + TestFile = "md1dd.imd.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "b7b8a69b10ee4ec921aa8eea232fdd75" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_8.imd.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "f4a77a2d2a1868dc18e8b92032d02fd2" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.imd.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "099d95ac42d1a8010f914ac64ede7a70" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.imd.lz", + MediaType = MediaType.NEC_35_HD_15, + Sectors = 2400, + SectorSize = 512, + MD5 = "3df7cd10044af75d77e8936af0dbf9ff" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_nec.imd.lz", + MediaType = MediaType.NEC_35_HD_8, + Sectors = 1232, + SectorSize = 1024, + MD5 = "fd54916f713d01b670c1a5df5e74a97f" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_10.imd.lz", + MediaType = MediaType.RX50, + Sectors = 800, + SectorSize = 512, + MD5 = "d75d3e79d9c5051922d4c2226fa4a6ff" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_11.imd.lz", + MediaType = MediaType.ATARI_35_SS_DD_11, + Sectors = 880, + SectorSize = 512, + MD5 = "e16ed33a1a466826562c681d8bdf3e27" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_10.imd.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "fd48b2c12097cbc646b4a93ef4f92259" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_11.imd.lz", + MediaType = MediaType.CBM_AMIGA_35_DD, + Sectors = 1760, + SectorSize = 512, + MD5 = "512f7175e753e2e2ad620d448c42545d" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_acorn.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 1024, + MD5 = "2626f65b49ec085253c41fa2e2a9e788" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.imd.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 1640, + SectorSize = 512, + MD5 = "9d978dff1196b456b8372d78e6b17970" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.imd.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "456390a9c6ab05cb458a03c47296de08" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.imd.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed.imd.lz", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "854d0d49a522b64af698e319a24cd68e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 1812, + SectorSize = 1024, + MD5 = "7ee82cecd23b30cc9aa6f0ec59877851" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 1160, + SectorSize = 2048, + MD5 = "90a3c86eb9f8bdf6e4c15c445dff121e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 3372, + SectorSize = 512, + MD5 = "7f9164dc43bffc895db751ba1d9b55a9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 3444, + SectorSize = 512, + MD5 = "9dea1e119a73a21a38d134f36b2e5564" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "dbd52e9e684f97d9e2292811242bb24e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 2882, + SectorSize = 2048, + MD5 = "f5fff7704fb677ebf23d27cd937c9403" + }, + new BlockImageTestExpected + { + TestFile = "rx01.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 2002, + SectorSize = 128, + MD5 = "5b4e36d92b180c3845387391cb5a1c64" + }, + new BlockImageTestExpected + { + TestFile = "rx50.imd.lz", + MediaType = MediaType.RX50, + Sectors = 800, + SectorSize = 512, + MD5 = "ccd4431139755c58f340681f63510642" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.imd.lz", + MediaType = MediaType.XDF_35, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_teledisk.imd.lz", + MediaType = MediaType.XDF_35, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/HxC/Raw.cs b/Aaru.Tests/Images/HxC/Raw.cs index d473aafdc..7a233d4ac 100644 --- a/Aaru.Tests/Images/HxC/Raw.cs +++ b/Aaru.Tests/Images/HxC/Raw.cs @@ -37,353 +37,227 @@ namespace Aaru.Tests.Images.HxC [TestFixture] public class Raw : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "md1dd_8.img.lz", "md1dd.img.lz", "md2dd_8.img.lz", "md2dd.img.lz", "md2hd.img.lz", "md2hd_nec.img.lz", - "mf1dd_10.img.lz", "mf1dd_11.img.lz", "mf2dd_10.img.lz", "mf2dd_11.img.lz", "mf2dd_acorn.img.lz", - "mf2dd_amiga.img.lz", "mf2dd_fdformat_800.img.lz", "mf2dd_fdformat_820.img.lz", "mf2dd_freedos.img.lz", - "mf2dd.img.lz", "mf2ed.img.lz", "mf2hd_2m.img.lz", "mf2hd_2m_max.img.lz", "mf2hd_fdformat_168.img.lz", - "mf2hd_fdformat_172.img.lz", "mf2hd_freedos.img.lz", "mf2hd.img.lz", "rx01.img.lz", "rx50.img.lz", - "mf2hd_xdf.img.lz", "mf2hd_xdf_teledisk.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // md1dd_8.img.lz - 320, - - // md1dd.img.lz - 360, - - // md2dd_8.img.lz - 640, - - // md2dd.img.lz - 720, - - // md2hd.img.lz - 2400, - - // md2hd_nec.img.lz - 1232, - - // mf1dd_10.img.lz - 800, - - // mf1dd_11.img.lz - 880, - - // mf2dd_10.img.lz - 1600, - - // mf2dd_11.img.lz - 1760, - - // mf2dd_acorn.img.lz - 1600, - - // mf2dd_amiga.img.lz - 1760, - - // mf2dd_fdformat_800.img.lz - 1600, - - // mf2dd_fdformat_820.img.lz - 1640, - - // mf2dd_freedos.img.lz - 1640, - - // mf2dd.img.lz - 1440, - - // mf2ed.img.lz - 5760, - - // mf2hd_2m.img.lz - 3605, - - // mf2hd_2m_max.img.lz - 3768, - - // mf2hd_fdformat_168.img.lz - 3372, - - // mf2hd_fdformat_172.img.lz - 3444, - - // mf2hd_freedos.img.lz - 3486, - - // mf2hd.img.lz - 2888, - - // rx01.img.lz - 2002, - - // rx50.img.lz - 800, - - // mf2hd_xdf.img.lz - 0, - - // mf2hd_xdf_teledisk.img.lz - 0 - }; - - public override uint[] _sectorSize => new uint[] - { - // md1dd_8.img.lz - 512, - - // md1dd.img.lz - 512, - - // md2dd_8.img.lz - 512, - - // md2dd.img.lz - 512, - - // md2hd.img.lz - 512, - - // md2hd_nec.img.lz - 1024, - - // mf1dd_10.img.lz - 512, - - // mf1dd_11.img.lz - 512, - - // mf2dd_10.img.lz - 512, - - // mf2dd_11.img.lz - 512, - - // mf2dd_acorn.img.lz - 512, - - // mf2dd_amiga.img.lz - 512, - - // mf2dd_fdformat_800.img.lz - 512, - - // mf2dd_fdformat_820.img.lz - 512, - - // mf2dd_freedos.img.lz - 512, - - // mf2dd.img.lz - 512, - - // mf2ed.img.lz - 512, - - // mf2hd_2m.img.lz - 512, - - // mf2hd_2m_max.img.lz - 512, - - // mf2hd_fdformat_168.img.lz - 512, - - // mf2hd_fdformat_172.img.lz - 512, - - // mf2hd_freedos.img.lz - 512, - - // mf2hd.img.lz - 512, - - // rx01.img.lz - 128, - - // rx50.img.lz - 512, - - // mf2hd_xdf.img.lz - 0, - - // mf2hd_xdf_teledisk.img.lz - 0 - }; - - public override MediaType[] _mediaTypes => new[] - { - // md1dd_8.img.lz - MediaType.DOS_525_SS_DD_8, - - // md1dd.img.lz - MediaType.DOS_525_SS_DD_9, - - // md2dd_8.img.lz - MediaType.DOS_525_DS_DD_8, - - // md2dd.img.lz - MediaType.DOS_525_DS_DD_9, - - // md2hd.img.lz - MediaType.DOS_525_HD, - - // md2hd_nec.img.lz - MediaType.SHARP_525, - - // mf1dd_10.img.lz - MediaType.AppleSonySS, - - // mf1dd_11.img.lz - MediaType.ATARI_35_SS_DD_11, - - // mf2dd_10.img.lz - MediaType.AppleSonyDS, - - // mf2dd_11.img.lz - MediaType.CBM_AMIGA_35_DD, - - // mf2dd_acorn.img.lz - MediaType.AppleSonyDS, - - // mf2dd_amiga.img.lz - MediaType.CBM_AMIGA_35_DD, - - // mf2dd_fdformat_800.img.lz - MediaType.AppleSonyDS, - - // mf2dd_fdformat_820.img.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_freedos.img.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd.img.lz - MediaType.DOS_35_DS_DD_9, - - // mf2ed.img.lz - MediaType.ECMA_147, - - // mf2hd_2m.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_2m_max.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_fdformat_168.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_fdformat_172.img.lz - MediaType.FDFORMAT_35_HD, - - // mf2hd_freedos.img.lz - MediaType.GENERIC_HDD, - - // mf2hd.img.lz - MediaType.GENERIC_HDD, - - // rx01.img.lz - MediaType.ECMA_54, - - // rx50.img.lz - MediaType.AppleSonySS, - - // mf2hd_xdf.img.lz - MediaType.XDF_35, - - // mf2hd_xdf_teledisk.img.lz - MediaType.XDF_35 - }; - - public override string[] _md5S => new[] - { - // md1dd_8.img.lz - "8308e749af855a3ded48d474eb7c305e", - - // md1dd.img.lz - "b7b8a69b10ee4ec921aa8eea232fdd75", - - // md2dd_8.img.lz - "f4a77a2d2a1868dc18e8b92032d02fd2", - - // md2dd.img.lz - "099d95ac42d1a8010f914ac64ede7a70", - - // md2hd.img.lz - "3df7cd10044af75d77e8936af0dbf9ff", - - // md2hd_nec.img.lz - "fd54916f713d01b670c1a5df5e74a97f", - - // mf1dd_10.img.lz - "d75d3e79d9c5051922d4c2226fa4a6ff", - - // mf1dd_11.img.lz - "e16ed33a1a466826562c681d8bdf3e27", - - // mf2dd_10.img.lz - "fd48b2c12097cbc646b4a93ef4f92259", - - // mf2dd_11.img.lz - "512f7175e753e2e2ad620d448c42545d", - - // mf2dd_acorn.img.lz - "2626f65b49ec085253c41fa2e2a9e788", - - // mf2dd_amiga.img.lz - "7db6730656efb22695cdf0a49e2674c9", - - // mf2dd_fdformat_800.img.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_fdformat_820.img.lz - "9d978dff1196b456b8372d78e6b17970", - - // mf2dd_freedos.img.lz - "456390a9c6ab05cb458a03c47296de08", - - // mf2dd.img.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2ed.img.lz - "854d0d49a522b64af698e319a24cd68e", - - // mf2hd_2m.img.lz - "7ee82cecd23b30cc9aa6f0ec59877851", - - // mf2hd_2m_max.img.lz - "c96c0be31797a0e6c9f23aad8ae38555", - - // mf2hd_fdformat_168.img.lz - "7f9164dc43bffc895db751ba1d9b55a9", - - // mf2hd_fdformat_172.img.lz - "9dea1e119a73a21a38d134f36b2e5564", - - // mf2hd_freedos.img.lz - "dbd52e9e684f97d9e2292811242bb24e", - - // mf2hd.img.lz - "f5fff7704fb677ebf23d27cd937c9403", - - // rx01.img.lz - "5b4e36d92b180c3845387391cb5a1c64", - - // rx50.img.lz - "ccd4431139755c58f340681f63510642", - - // mf2hd_xdf.img.lz - "UNKNOWN", - - // mf2hd_xdf_teledisk.img.lz - "UNKNOWN" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "HxC", "raw"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "md1dd_8.img.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "8308e749af855a3ded48d474eb7c305e" + }, + new BlockImageTestExpected + { + TestFile = "md1dd.img.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "b7b8a69b10ee4ec921aa8eea232fdd75" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_8.img.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "f4a77a2d2a1868dc18e8b92032d02fd2" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.img.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "099d95ac42d1a8010f914ac64ede7a70" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.img.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "3df7cd10044af75d77e8936af0dbf9ff" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_nec.img.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "fd54916f713d01b670c1a5df5e74a97f" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_10.img.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "d75d3e79d9c5051922d4c2226fa4a6ff" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_11.img.lz", + MediaType = MediaType.ATARI_35_SS_DD_11, + Sectors = 880, + SectorSize = 512, + MD5 = "e16ed33a1a466826562c681d8bdf3e27" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_10.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "fd48b2c12097cbc646b4a93ef4f92259" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_11.img.lz", + MediaType = MediaType.CBM_AMIGA_35_DD, + Sectors = 1760, + SectorSize = 512, + MD5 = "512f7175e753e2e2ad620d448c42545d" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_acorn.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "2626f65b49ec085253c41fa2e2a9e788" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_amiga.img.lz", + MediaType = MediaType.CBM_AMIGA_35_DD, + Sectors = 1760, + SectorSize = 512, + MD5 = "7db6730656efb22695cdf0a49e2674c9" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "9d978dff1196b456b8372d78e6b17970" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "456390a9c6ab05cb458a03c47296de08" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed.img.lz", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "854d0d49a522b64af698e319a24cd68e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3605, + SectorSize = 512, + MD5 = "7ee82cecd23b30cc9aa6f0ec59877851" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3768, + SectorSize = 512, + MD5 = "c96c0be31797a0e6c9f23aad8ae38555" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3372, + SectorSize = 512, + MD5 = "7f9164dc43bffc895db751ba1d9b55a9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.img.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "9dea1e119a73a21a38d134f36b2e5564" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3486, + SectorSize = 512, + MD5 = "dbd52e9e684f97d9e2292811242bb24e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2888, + SectorSize = 512, + MD5 = "f5fff7704fb677ebf23d27cd937c9403" + }, + new BlockImageTestExpected + { + TestFile = "rx01.img.lz", + MediaType = MediaType.ECMA_54, + Sectors = 2002, + SectorSize = 128, + MD5 = "5b4e36d92b180c3845387391cb5a1c64" + }, + new BlockImageTestExpected + { + TestFile = "rx50.img.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "ccd4431139755c58f340681f63510642" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.img.lz", + MediaType = MediaType.XDF_35, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_teledisk.img.lz", + MediaType = MediaType.XDF_35, + Sectors = 0, + SectorSize = 0, + MD5 = "UNKNOWN" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/HyperV.cs b/Aaru.Tests/Images/HyperV.cs index ce1d9e731..3e4edfe3e 100644 --- a/Aaru.Tests/Images/HyperV.cs +++ b/Aaru.Tests/Images/HyperV.cs @@ -37,121 +37,75 @@ namespace Aaru.Tests.Images [TestFixture] public class HyperV : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "dynamic_exfat.vhdx.lz", "dynamic_fat32.vhdx.lz", "dynamic_ntfs.vhdx.lz", "dynamic_udf.vhdx.lz", - "fixed_exfat.vhdx.lz", "fixed_fat32.vhdx.lz", "fixed_ntfs.vhdx.lz", "fixed_udf.vhdx.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // dynamic_exfat.vhdx.lz - 409600, - - // dynamic_fat32.vhdx.lz - 409600, - - // dynamic_ntfs.vhdx.lz - 409600, - - // dynamic_udf.vhdx.lz - 409600, - - // fixed_exfat.vhdx.lz - 409600, - - // fixed_fat32.vhdx.lz - 409600, - - // fixed_ntfs.vhdx.lz - 409600, - - // fixed_udf.vhdx.lz - 409600 - }; - - public override uint[] _sectorSize => new uint[] - { - // dynamic_exfat.vhdx.lz - 512, - - // dynamic_fat32.vhdx.lz - 512, - - // dynamic_ntfs.vhdx.lz - 512, - - // dynamic_udf.vhdx.lz - 512, - - // fixed_exfat.vhdx.lz - 512, - - // fixed_fat32.vhdx.lz - 512, - - // fixed_ntfs.vhdx.lz - 512, - - // fixed_udf.vhdx.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // dynamic_exfat.vhdx.lz - MediaType.GENERIC_HDD, - - // dynamic_fat32.vhdx.lz - MediaType.GENERIC_HDD, - - // dynamic_ntfs.vhdx.lz - MediaType.GENERIC_HDD, - - // dynamic_udf.vhdx.lz - MediaType.GENERIC_HDD, - - // fixed_exfat.vhdx.lz - MediaType.GENERIC_HDD, - - // fixed_fat32.vhdx.lz - MediaType.GENERIC_HDD, - - // fixed_ntfs.vhdx.lz - MediaType.GENERIC_HDD, - - // fixed_udf.vhdx.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // dynamic_exfat.vhdx.lz - "b3b3e6b89763ef45f6863d7fd1195778", - - // dynamic_fat32.vhdx.lz - "f2a720176adb4cf70c04c56b58339024", - - // dynamic_ntfs.vhdx.lz - "bc6be23bbb139bd6fcd928f212205ce1", - - // dynamic_udf.vhdx.lz - "cfc501f3bcc12a00aa08db30e80c25ae", - - // fixed_exfat.vhdx.lz - "06e97867ff89301fef7e9451ad7aa4ed", - - // fixed_fat32.vhdx.lz - "d544a96ac1bd4431b884e244717d3dca", - - // fixed_ntfs.vhdx.lz - "b10ed3ac22d882f7080b6f9859d1e646", - - // fixed_udf.vhdx.lz - "338ba2043d7f9cb2693c35e3194e6c9c" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Hyper-V"); public override IMediaImage _plugin => new Vhdx(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "dynamic_exfat.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 409600, + SectorSize = 512, + MD5 = "b3b3e6b89763ef45f6863d7fd1195778" + }, + new BlockImageTestExpected + { + TestFile = "dynamic_fat32.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 409600, + SectorSize = 512, + MD5 = "f2a720176adb4cf70c04c56b58339024" + }, + new BlockImageTestExpected + { + TestFile = "dynamic_ntfs.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 409600, + SectorSize = 512, + MD5 = "bc6be23bbb139bd6fcd928f212205ce1" + }, + new BlockImageTestExpected + { + TestFile = "dynamic_udf.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 409600, + SectorSize = 512, + MD5 = "cfc501f3bcc12a00aa08db30e80c25ae" + }, + new BlockImageTestExpected + { + TestFile = "fixed_exfat.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 409600, + SectorSize = 512, + MD5 = "06e97867ff89301fef7e9451ad7aa4ed" + }, + new BlockImageTestExpected + { + TestFile = "fixed_fat32.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 409600, + SectorSize = 512, + MD5 = "d544a96ac1bd4431b884e244717d3dca" + }, + new BlockImageTestExpected + { + TestFile = "fixed_ntfs.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 409600, + SectorSize = 512, + MD5 = "b10ed3ac22d882f7080b6f9859d1e646" + }, + new BlockImageTestExpected + { + TestFile = "fixed_udf.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 409600, + SectorSize = 512, + MD5 = "338ba2043d7f9cb2693c35e3194e6c9c" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/ImageDisk.cs b/Aaru.Tests/Images/ImageDisk.cs index 963653ee1..ec4031252 100644 --- a/Aaru.Tests/Images/ImageDisk.cs +++ b/Aaru.Tests/Images/ImageDisk.cs @@ -37,3123 +37,2043 @@ namespace Aaru.Tests.Images [TestFixture] public class ImageDisk : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "CPM1_ALL.IMD.lz", "DSKA0000.IMD.lz", "DSKA0001.IMD.lz", "DSKA0002.IMD.lz", "DSKA0003.IMD.lz", - "DSKA0004.IMD.lz", "DSKA0006.IMD.lz", "DSKA0009.IMD.lz", "DSKA0010.IMD.lz", "DSKA0011.IMD.lz", - "DSKA0012.IMD.lz", "DSKA0013.IMD.lz", "DSKA0017.IMD.lz", "DSKA0018.IMD.lz", "DSKA0019.IMD.lz", - "DSKA0020.IMD.lz", "DSKA0021.IMD.lz", "DSKA0022.IMD.lz", "DSKA0023.IMD.lz", "DSKA0024.IMD.lz", - "DSKA0025.IMD.lz", "DSKA0026.IMD.lz", "DSKA0027.IMD.lz", "DSKA0028.IMD.lz", "DSKA0029.IMD.lz", - "DSKA0030.IMD.lz", "DSKA0031.IMD.lz", "DSKA0032.IMD.lz", "DSKA0033.IMD.lz", "DSKA0034.IMD.lz", - "DSKA0035.IMD.lz", "DSKA0036.IMD.lz", "DSKA0037.IMD.lz", "DSKA0038.IMD.lz", "DSKA0039.IMD.lz", - "DSKA0040.IMD.lz", "DSKA0041.IMD.lz", "DSKA0042.IMD.lz", "DSKA0043.IMD.lz", "DSKA0044.IMD.lz", - "DSKA0045.IMD.lz", "DSKA0046.IMD.lz", "DSKA0047.IMD.lz", "DSKA0048.IMD.lz", "DSKA0049.IMD.lz", - "DSKA0050.IMD.lz", "DSKA0051.IMD.lz", "DSKA0052.IMD.lz", "DSKA0053.IMD.lz", "DSKA0054.IMD.lz", - "DSKA0055.IMD.lz", "DSKA0057.IMD.lz", "DSKA0058.IMD.lz", "DSKA0059.IMD.lz", "DSKA0060.IMD.lz", - "DSKA0061.IMD.lz", "DSKA0063.IMD.lz", "DSKA0064.IMD.lz", "DSKA0065.IMD.lz", "DSKA0066.IMD.lz", - "DSKA0067.IMD.lz", "DSKA0068.IMD.lz", "DSKA0069.IMD.lz", "DSKA0070.IMD.lz", "DSKA0073.IMD.lz", - "DSKA0074.IMD.lz", "DSKA0075.IMD.lz", "DSKA0076.IMD.lz", "DSKA0077.IMD.lz", "DSKA0078.IMD.lz", - "DSKA0080.IMD.lz", "DSKA0081.IMD.lz", "DSKA0082.IMD.lz", "DSKA0083.IMD.lz", "DSKA0084.IMD.lz", - "DSKA0085.IMD.lz", "DSKA0086.IMD.lz", "DSKA0089.IMD.lz", "DSKA0090.IMD.lz", "DSKA0091.IMD.lz", - "DSKA0092.IMD.lz", "DSKA0093.IMD.lz", "DSKA0094.IMD.lz", "DSKA0097.IMD.lz", "DSKA0098.IMD.lz", - "DSKA0099.IMD.lz", "DSKA0101.IMD.lz", "DSKA0103.IMD.lz", "DSKA0105.IMD.lz", "DSKA0106.IMD.lz", - "DSKA0107.IMD.lz", "DSKA0108.IMD.lz", "DSKA0109.IMD.lz", "DSKA0110.IMD.lz", "DSKA0111.IMD.lz", - "DSKA0112.IMD.lz", "DSKA0113.IMD.lz", "DSKA0114.IMD.lz", "DSKA0115.IMD.lz", "DSKA0116.IMD.lz", - "DSKA0117.IMD.lz", "DSKA0120.IMD.lz", "DSKA0121.IMD.lz", "DSKA0122.IMD.lz", "DSKA0123.IMD.lz", - "DSKA0124.IMD.lz", "DSKA0125.IMD.lz", "DSKA0126.IMD.lz", "DSKA0147.IMD.lz", "DSKA0148.IMD.lz", - "DSKA0149.IMD.lz", "DSKA0150.IMD.lz", "DSKA0151.IMD.lz", "DSKA0153.IMD.lz", "DSKA0154.IMD.lz", - "DSKA0155.IMD.lz", "DSKA0157.IMD.lz", "DSKA0158.IMD.lz", "DSKA0159.IMD.lz", "DSKA0160.IMD.lz", - "DSKA0162.IMD.lz", "DSKA0163.IMD.lz", "DSKA0164.IMD.lz", "DSKA0166.IMD.lz", "DSKA0167.IMD.lz", - "DSKA0168.IMD.lz", "DSKA0169.IMD.lz", "DSKA0170.IMD.lz", "DSKA0171.IMD.lz", "DSKA0173.IMD.lz", - "DSKA0174.IMD.lz", "DSKA0175.IMD.lz", "DSKA0176.IMD.lz", "DSKA0177.IMD.lz", "DSKA0180.IMD.lz", - "DSKA0181.IMD.lz", "DSKA0182.IMD.lz", "DSKA0183.IMD.lz", "DSKA0184.IMD.lz", "DSKA0185.IMD.lz", - "DSKA0186.IMD.lz", "DSKA0191.IMD.lz", "DSKA0192.IMD.lz", "DSKA0194.IMD.lz", "DSKA0196.IMD.lz", - "DSKA0197.IMD.lz", "DSKA0198.IMD.lz", "DSKA0199.IMD.lz", "DSKA0200.IMD.lz", "DSKA0201.IMD.lz", - "DSKA0202.IMD.lz", "DSKA0203.IMD.lz", "DSKA0204.IMD.lz", "DSKA0205.IMD.lz", "DSKA0206.IMD.lz", - "DSKA0207.IMD.lz", "DSKA0208.IMD.lz", "DSKA0209.IMD.lz", "DSKA0210.IMD.lz", "DSKA0211.IMD.lz", - "DSKA0212.IMD.lz", "DSKA0213.IMD.lz", "DSKA0214.IMD.lz", "DSKA0215.IMD.lz", "DSKA0216.IMD.lz", - "DSKA0218.IMD.lz", "DSKA0219.IMD.lz", "DSKA0220.IMD.lz", "DSKA0221.IMD.lz", "DSKA0222.IMD.lz", - "DSKA0223.IMD.lz", "DSKA0224.IMD.lz", "DSKA0225.IMD.lz", "DSKA0226.IMD.lz", "DSKA0227.IMD.lz", - "DSKA0228.IMD.lz", "DSKA0232.IMD.lz", "DSKA0233.IMD.lz", "DSKA0234.IMD.lz", "DSKA0235.IMD.lz", - "DSKA0236.IMD.lz", "DSKA0238.IMD.lz", "DSKA0240.IMD.lz", "DSKA0241.IMD.lz", "DSKA0242.IMD.lz", - "DSKA0243.IMD.lz", "DSKA0244.IMD.lz", "DSKA0245.IMD.lz", "DSKA0246.IMD.lz", "DSKA0247.IMD.lz", - "DSKA0248.IMD.lz", "DSKA0250.IMD.lz", "DSKA0251.IMD.lz", "DSKA0252.IMD.lz", "DSKA0253.IMD.lz", - "DSKA0254.IMD.lz", "DSKA0255.IMD.lz", "DSKA0258.IMD.lz", "DSKA0262.IMD.lz", "DSKA0263.IMD.lz", - "DSKA0264.IMD.lz", "DSKA0265.IMD.lz", "DSKA0266.IMD.lz", "DSKA0267.IMD.lz", "DSKA0268.IMD.lz", - "DSKA0269.IMD.lz", "DSKA0270.IMD.lz", "DSKA0271.IMD.lz", "DSKA0272.IMD.lz", "DSKA0273.IMD.lz", - "DSKA0280.IMD.lz", "DSKA0281.IMD.lz", "DSKA0282.IMD.lz", "DSKA0283.IMD.lz", "DSKA0284.IMD.lz", - "DSKA0285.IMD.lz", "DSKA0287.IMD.lz", "DSKA0288.IMD.lz", "DSKA0289.IMD.lz", "DSKA0290.IMD.lz", - "DSKA0291.IMD.lz", "DSKA0299.IMD.lz", "DSKA0300.IMD.lz", "DSKA0301.IMD.lz", "DSKA0302.IMD.lz", - "DSKA0303.IMD.lz", "DSKA0304.IMD.lz", "DSKA0305.IMD.lz", "DSKA0307.IMD.lz", "DSKA0308.IMD.lz", - "DSKA0311.IMD.lz", "DSKA0314.IMD.lz", "DSKA0316.IMD.lz", "DSKA0317.IMD.lz", "DSKA0318.IMD.lz", - "DSKA0319.IMD.lz", "DSKA0320.IMD.lz", "DSKA0322.IMD.lz", "md1dd_rx01.imd.lz", "md1qd_rx50.imd.lz", - "md2hd_nec.imd.lz", "mf2dd_2mgui.imd.lz", "mf2dd_2m.imd.lz", "mf2dd_fdformat_800.imd.lz", - "mf2dd_fdformat_820.imd.lz", "mf2dd_freedos.imd.lz", "mf2dd.imd.lz", "mf2hd_2mgui.imd.lz", - "mf2hd_2m.imd.lz", "mf2hd_fdformat_168.imd.lz", "mf2hd_fdformat_172.imd.lz", "mf2hd_freedos.imd.lz", - "mf2hd.imd.lz", "mf2hd_xdf.imd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // CPM1_ALL.IMD.lz - 1280, - - // DSKA0000.IMD.lz - 2880, - - // DSKA0001.IMD.lz - 1600, - - // DSKA0002.IMD.lz - 1600, - - // DSKA0003.IMD.lz - 800, - - // DSKA0004.IMD.lz - 1600, - - // DSKA0006.IMD.lz - 360, - - // DSKA0009.IMD.lz - 2880, - - // DSKA0010.IMD.lz - 1440, - - // DSKA0011.IMD.lz - 1280, - - // DSKA0012.IMD.lz - 1600, - - // DSKA0013.IMD.lz - 1600, - - // DSKA0017.IMD.lz - 3200, - - // DSKA0018.IMD.lz - 1600, - - // DSKA0019.IMD.lz - 90, - - // DSKA0020.IMD.lz - 1600, - - // DSKA0021.IMD.lz - 3200, - - // DSKA0022.IMD.lz - 2560, - - // DSKA0023.IMD.lz - 1600, - - // DSKA0024.IMD.lz - 2880, - - // DSKA0025.IMD.lz - 1440, - - // DSKA0026.IMD.lz - 800, - - // DSKA0027.IMD.lz - 960, - - // DSKA0028.IMD.lz - 1440, - - // DSKA0029.IMD.lz - 960, - - // DSKA0030.IMD.lz - 1440, - - // DSKA0031.IMD.lz - 640, - - // DSKA0032.IMD.lz - 640, - - // DSKA0033.IMD.lz - 1280, - - // DSKA0034.IMD.lz - 1280, - - // DSKA0035.IMD.lz - 320, - - // DSKA0036.IMD.lz - 320, - - // DSKA0037.IMD.lz - 360, - - // DSKA0038.IMD.lz - 360, - - // DSKA0039.IMD.lz - 640, - - // DSKA0040.IMD.lz - 640, - - // DSKA0041.IMD.lz - 640, - - // DSKA0042.IMD.lz - 640, - - // DSKA0043.IMD.lz - 720, - - // DSKA0044.IMD.lz - 720, - - // DSKA0045.IMD.lz - 2400, - - // DSKA0046.IMD.lz - 2460, - - // DSKA0047.IMD.lz - 1280, - - // DSKA0048.IMD.lz - 1440, - - // DSKA0049.IMD.lz - 1476, - - // DSKA0050.IMD.lz - 1600, - - // DSKA0051.IMD.lz - 1640, - - // DSKA0052.IMD.lz - 2880, - - // DSKA0053.IMD.lz - 2952, - - // DSKA0054.IMD.lz - 3200, - - // DSKA0055.IMD.lz - 3280, - - // DSKA0057.IMD.lz - 3444, - - // DSKA0058.IMD.lz - 3486, - - // DSKA0059.IMD.lz - 3528, - - // DSKA0060.IMD.lz - 3570, - - // DSKA0061.IMD.lz - 5100, - - // DSKA0063.IMD.lz - 6604, - - // DSKA0064.IMD.lz - 9180, - - // DSKA0065.IMD.lz - 10710, - - // DSKA0066.IMD.lz - 10710, - - // DSKA0067.IMD.lz - 13770, - - // DSKA0068.IMD.lz - 1440, - - // DSKA0069.IMD.lz - 1440, - - // DSKA0070.IMD.lz - 1640, - - // DSKA0073.IMD.lz - 320, - - // DSKA0074.IMD.lz - 360, - - // DSKA0075.IMD.lz - 640, - - // DSKA0076.IMD.lz - 720, - - // DSKA0077.IMD.lz - 800, - - // DSKA0078.IMD.lz - 2400, - - // DSKA0080.IMD.lz - 1440, - - // DSKA0081.IMD.lz - 1600, - - // DSKA0082.IMD.lz - 2880, - - // DSKA0083.IMD.lz - 2988, - - // DSKA0084.IMD.lz - 3360, - - // DSKA0085.IMD.lz - 3486, - - // DSKA0086.IMD.lz - 3360, - - // DSKA0089.IMD.lz - 664, - - // DSKA0090.IMD.lz - 670, - - // DSKA0091.IMD.lz - 824, - - // DSKA0092.IMD.lz - 824, - - // DSKA0093.IMD.lz - 1483, - - // DSKA0094.IMD.lz - 995, - - // DSKA0097.IMD.lz - 1812, - - // DSKA0098.IMD.lz - 1160, - - // DSKA0099.IMD.lz - 164, - - // DSKA0101.IMD.lz - 164, - - // DSKA0103.IMD.lz - 164, - - // DSKA0105.IMD.lz - 400, - - // DSKA0106.IMD.lz - 410, - - // DSKA0107.IMD.lz - 800, - - // DSKA0108.IMD.lz - 820, - - // DSKA0109.IMD.lz - 1600, - - // DSKA0110.IMD.lz - 1640, - - // DSKA0111.IMD.lz - 2880, - - // DSKA0112.IMD.lz - 2952, - - // DSKA0113.IMD.lz - 1600, - - // DSKA0114.IMD.lz - 1640, - - // DSKA0115.IMD.lz - 2952, - - // DSKA0116.IMD.lz - 3200, - - // DSKA0117.IMD.lz - 3240, - - // DSKA0120.IMD.lz - 320, - - // DSKA0121.IMD.lz - 360, - - // DSKA0122.IMD.lz - 640, - - // DSKA0123.IMD.lz - 720, - - // DSKA0124.IMD.lz - 2400, - - // DSKA0125.IMD.lz - 1440, - - // DSKA0126.IMD.lz - 2880, - - // DSKA0147.IMD.lz - 320, - - // DSKA0148.IMD.lz - 640, - - // DSKA0149.IMD.lz - 200, - - // DSKA0150.IMD.lz - 400, - - // DSKA0151.IMD.lz - 400, - - // DSKA0153.IMD.lz - 360, - - // DSKA0154.IMD.lz - 800, - - // DSKA0155.IMD.lz - 848, - - // DSKA0157.IMD.lz - 1440, - - // DSKA0158.IMD.lz - 1280, - - // DSKA0159.IMD.lz - 640, - - // DSKA0160.IMD.lz - 1280, - - // DSKA0162.IMD.lz - 320, - - // DSKA0163.IMD.lz - 720, - - // DSKA0164.IMD.lz - 820, - - // DSKA0166.IMD.lz - 1440, - - // DSKA0167.IMD.lz - 960, - - // DSKA0168.IMD.lz - 2400, - - // DSKA0169.IMD.lz - 2880, - - // DSKA0170.IMD.lz - 2952, - - // DSKA0171.IMD.lz - 2988, - - // DSKA0173.IMD.lz - 720, - - // DSKA0174.IMD.lz - 1440, - - // DSKA0175.IMD.lz - 1600, - - // DSKA0176.IMD.lz - 1640, - - // DSKA0177.IMD.lz - 1660, - - // DSKA0180.IMD.lz - 3200, - - // DSKA0181.IMD.lz - 3360, - - // DSKA0182.IMD.lz - 3402, - - // DSKA0183.IMD.lz - 3444, - - // DSKA0184.IMD.lz - 1760, - - // DSKA0185.IMD.lz - 1120, - - // DSKA0186.IMD.lz - 320, - - // DSKA0191.IMD.lz - 626, - - // DSKA0192.IMD.lz - 670, - - // DSKA0194.IMD.lz - 356, - - // DSKA0196.IMD.lz - 960, - - // DSKA0197.IMD.lz - 640, - - // DSKA0198.IMD.lz - 1280, - - // DSKA0199.IMD.lz - 2560, - - // DSKA0200.IMD.lz - 1600, - - // DSKA0201.IMD.lz - 800, - - // DSKA0202.IMD.lz - 1600, - - // DSKA0203.IMD.lz - 1280, - - // DSKA0204.IMD.lz - 360, - - // DSKA0205.IMD.lz - 1476, - - // DSKA0206.IMD.lz - 1600, - - // DSKA0207.IMD.lz - 3200, - - // DSKA0208.IMD.lz - 480, - - // DSKA0209.IMD.lz - 1600, - - // DSKA0210.IMD.lz - 1600, - - // DSKA0211.IMD.lz - 1440, - - // DSKA0212.IMD.lz - 1440, - - // DSKA0213.IMD.lz - 800, - - // DSKA0214.IMD.lz - 1600, - - // DSKA0215.IMD.lz - 1600, - - // DSKA0216.IMD.lz - 2880, - - // DSKA0218.IMD.lz - 5100, - - // DSKA0219.IMD.lz - 9180, - - // DSKA0220.IMD.lz - 13770, - - // DSKA0221.IMD.lz - 5120, - - // DSKA0222.IMD.lz - 1600, - - // DSKA0223.IMD.lz - 1600, - - // DSKA0224.IMD.lz - 1152, - - // DSKA0225.IMD.lz - 1056, - - // DSKA0226.IMD.lz - 2560, - - // DSKA0227.IMD.lz - 5120, - - // DSKA0228.IMD.lz - 1120, - - // DSKA0232.IMD.lz - 621, - - // DSKA0233.IMD.lz - 720, - - // DSKA0234.IMD.lz - 2560, - - // DSKA0235.IMD.lz - 1600, - - // DSKA0236.IMD.lz - 800, - - // DSKA0238.IMD.lz - 1600, - - // DSKA0240.IMD.lz - 720, - - // DSKA0241.IMD.lz - 714, - - // DSKA0242.IMD.lz - 1232, - - // DSKA0243.IMD.lz - 1280, - - // DSKA0244.IMD.lz - 1280, - - // DSKA0245.IMD.lz - 1600, - - // DSKA0246.IMD.lz - 1600, - - // DSKA0247.IMD.lz - 1280, - - // DSKA0248.IMD.lz - 1280, - - // DSKA0250.IMD.lz - 800, - - // DSKA0251.IMD.lz - 2560, - - // DSKA0252.IMD.lz - 1280, - - // DSKA0253.IMD.lz - 800, - - // DSKA0254.IMD.lz - 360, - - // DSKA0255.IMD.lz - 2544, - - // DSKA0258.IMD.lz - 1232, - - // DSKA0262.IMD.lz - 1440, - - // DSKA0263.IMD.lz - 1600, - - // DSKA0264.IMD.lz - 1640, - - // DSKA0265.IMD.lz - 1660, - - // DSKA0266.IMD.lz - 2880, - - // DSKA0267.IMD.lz - 3040, - - // DSKA0268.IMD.lz - 3200, - - // DSKA0269.IMD.lz - 3280, - - // DSKA0270.IMD.lz - 3320, - - // DSKA0271.IMD.lz - 3360, - - // DSKA0272.IMD.lz - 3444, - - // DSKA0273.IMD.lz - 3486, - - // DSKA0280.IMD.lz - 360, - - // DSKA0281.IMD.lz - 400, - - // DSKA0282.IMD.lz - 640, - - // DSKA0283.IMD.lz - 720, - - // DSKA0284.IMD.lz - 800, - - // DSKA0285.IMD.lz - 840, - - // DSKA0287.IMD.lz - 1440, - - // DSKA0288.IMD.lz - 1494, - - // DSKA0289.IMD.lz - 1600, - - // DSKA0290.IMD.lz - 1640, - - // DSKA0291.IMD.lz - 1660, - - // DSKA0299.IMD.lz - 320, - - // DSKA0300.IMD.lz - 360, - - // DSKA0301.IMD.lz - 640, - - // DSKA0302.IMD.lz - 720, - - // DSKA0303.IMD.lz - 2400, - - // DSKA0304.IMD.lz - 1440, - - // DSKA0305.IMD.lz - 2880, - - // DSKA0307.IMD.lz - 840, - - // DSKA0308.IMD.lz - 1600, - - // DSKA0311.IMD.lz - 3444, - - // DSKA0314.IMD.lz - 1440, - - // DSKA0316.IMD.lz - 2880, - - // DSKA0317.IMD.lz - 3360, - - // DSKA0318.IMD.lz - 3444, - - // DSKA0319.IMD.lz - 3360, - - // DSKA0320.IMD.lz - 3360, - - // DSKA0322.IMD.lz - 1386, - - // md1dd_rx01.imd.lz - 2002, - - // md1qd_rx50.imd.lz - 800, - - // md2hd_nec.imd.lz - 1232, - - // mf2dd_2mgui.imd.lz - 164, - - // mf2dd_2m.imd.lz - 987, - - // mf2dd_fdformat_800.imd.lz - 1600, - - // mf2dd_fdformat_820.imd.lz - 1640, - - // mf2dd_freedos.imd.lz - 1600, - - // mf2dd.imd.lz - 1440, - - // mf2hd_2mgui.imd.lz - 164, - - // mf2hd_2m.imd.lz - 1812, - - // mf2hd_fdformat_168.imd.lz - 3360, - - // mf2hd_fdformat_172.imd.lz - 3444, - - // mf2hd_freedos.imd.lz - 3486, - - // mf2hd.imd.lz - 2880, - - // mf2hd_xdf.imd.lz - 670 - }; - - public override uint[] _sectorSize => new uint[] - { - // CPM1_ALL.IMD.lz - 512, - - // DSKA0000.IMD.lz - 512, - - // DSKA0001.IMD.lz - 512, - - // DSKA0002.IMD.lz - 1024, - - // DSKA0003.IMD.lz - 1024, - - // DSKA0004.IMD.lz - 1024, - - // DSKA0006.IMD.lz - 512, - - // DSKA0009.IMD.lz - 512, - - // DSKA0010.IMD.lz - 512, - - // DSKA0011.IMD.lz - 1024, - - // DSKA0012.IMD.lz - 512, - - // DSKA0013.IMD.lz - 512, - - // DSKA0017.IMD.lz - 512, - - // DSKA0018.IMD.lz - 512, - - // DSKA0019.IMD.lz - 512, - - // DSKA0020.IMD.lz - 512, - - // DSKA0021.IMD.lz - 512, - - // DSKA0022.IMD.lz - 256, - - // DSKA0023.IMD.lz - 1024, - - // DSKA0024.IMD.lz - 512, - - // DSKA0025.IMD.lz - 512, - - // DSKA0026.IMD.lz - 1024, - - // DSKA0027.IMD.lz - 1024, - - // DSKA0028.IMD.lz - 512, - - // DSKA0029.IMD.lz - 1024, - - // DSKA0030.IMD.lz - 512, - - // DSKA0031.IMD.lz - 256, - - // DSKA0032.IMD.lz - 256, - - // DSKA0033.IMD.lz - 256, - - // DSKA0034.IMD.lz - 256, - - // DSKA0035.IMD.lz - 512, - - // DSKA0036.IMD.lz - 512, - - // DSKA0037.IMD.lz - 512, - - // DSKA0038.IMD.lz - 512, - - // DSKA0039.IMD.lz - 512, - - // DSKA0040.IMD.lz - 512, - - // DSKA0041.IMD.lz - 512, - - // DSKA0042.IMD.lz - 512, - - // DSKA0043.IMD.lz - 512, - - // DSKA0044.IMD.lz - 512, - - // DSKA0045.IMD.lz - 512, - - // DSKA0046.IMD.lz - 512, - - // DSKA0047.IMD.lz - 512, - - // DSKA0048.IMD.lz - 512, - - // DSKA0049.IMD.lz - 512, - - // DSKA0050.IMD.lz - 512, - - // DSKA0051.IMD.lz - 512, - - // DSKA0052.IMD.lz - 512, - - // DSKA0053.IMD.lz - 512, - - // DSKA0054.IMD.lz - 512, - - // DSKA0055.IMD.lz - 512, - - // DSKA0057.IMD.lz - 512, - - // DSKA0058.IMD.lz - 512, - - // DSKA0059.IMD.lz - 512, - - // DSKA0060.IMD.lz - 512, - - // DSKA0061.IMD.lz - 512, - - // DSKA0063.IMD.lz - 512, - - // DSKA0064.IMD.lz - 512, - - // DSKA0065.IMD.lz - 512, - - // DSKA0066.IMD.lz - 512, - - // DSKA0067.IMD.lz - 512, - - // DSKA0068.IMD.lz - 512, - - // DSKA0069.IMD.lz - 512, - - // DSKA0070.IMD.lz - 512, - - // DSKA0073.IMD.lz - 512, - - // DSKA0074.IMD.lz - 512, - - // DSKA0075.IMD.lz - 512, - - // DSKA0076.IMD.lz - 512, - - // DSKA0077.IMD.lz - 512, - - // DSKA0078.IMD.lz - 512, - - // DSKA0080.IMD.lz - 512, - - // DSKA0081.IMD.lz - 512, - - // DSKA0082.IMD.lz - 512, - - // DSKA0083.IMD.lz - 512, - - // DSKA0084.IMD.lz - 512, - - // DSKA0085.IMD.lz - 512, - - // DSKA0086.IMD.lz - 512, - - // DSKA0089.IMD.lz - 512, - - // DSKA0090.IMD.lz - 2048, - - // DSKA0091.IMD.lz - 1024, - - // DSKA0092.IMD.lz - 2048, - - // DSKA0093.IMD.lz - 1024, - - // DSKA0094.IMD.lz - 2048, - - // DSKA0097.IMD.lz - 1024, - - // DSKA0098.IMD.lz - 2048, - - // DSKA0099.IMD.lz - 16384, - - // DSKA0101.IMD.lz - 16384, - - // DSKA0103.IMD.lz - 16384, - - // DSKA0105.IMD.lz - 512, - - // DSKA0106.IMD.lz - 512, - - // DSKA0107.IMD.lz - 512, - - // DSKA0108.IMD.lz - 512, - - // DSKA0109.IMD.lz - 512, - - // DSKA0110.IMD.lz - 512, - - // DSKA0111.IMD.lz - 512, - - // DSKA0112.IMD.lz - 512, - - // DSKA0113.IMD.lz - 512, - - // DSKA0114.IMD.lz - 512, - - // DSKA0115.IMD.lz - 512, - - // DSKA0116.IMD.lz - 512, - - // DSKA0117.IMD.lz - 512, - - // DSKA0120.IMD.lz - 512, - - // DSKA0121.IMD.lz - 512, - - // DSKA0122.IMD.lz - 512, - - // DSKA0123.IMD.lz - 512, - - // DSKA0124.IMD.lz - 512, - - // DSKA0125.IMD.lz - 512, - - // DSKA0126.IMD.lz - 512, - - // DSKA0147.IMD.lz - 512, - - // DSKA0148.IMD.lz - 512, - - // DSKA0149.IMD.lz - 1024, - - // DSKA0150.IMD.lz - 1024, - - // DSKA0151.IMD.lz - 512, - - // DSKA0153.IMD.lz - 512, - - // DSKA0154.IMD.lz - 512, - - // DSKA0155.IMD.lz - 512, - - // DSKA0157.IMD.lz - 512, - - // DSKA0158.IMD.lz - 256, - - // DSKA0159.IMD.lz - 256, - - // DSKA0160.IMD.lz - 256, - - // DSKA0162.IMD.lz - 512, - - // DSKA0163.IMD.lz - 512, - - // DSKA0164.IMD.lz - 512, - - // DSKA0166.IMD.lz - 512, - - // DSKA0167.IMD.lz - 1024, - - // DSKA0168.IMD.lz - 512, - - // DSKA0169.IMD.lz - 512, - - // DSKA0170.IMD.lz - 512, - - // DSKA0171.IMD.lz - 512, - - // DSKA0173.IMD.lz - 512, - - // DSKA0174.IMD.lz - 512, - - // DSKA0175.IMD.lz - 512, - - // DSKA0176.IMD.lz - 512, - - // DSKA0177.IMD.lz - 512, - - // DSKA0180.IMD.lz - 512, - - // DSKA0181.IMD.lz - 512, - - // DSKA0182.IMD.lz - 512, - - // DSKA0183.IMD.lz - 512, - - // DSKA0184.IMD.lz - 1024, - - // DSKA0185.IMD.lz - 2048, - - // DSKA0186.IMD.lz - 4096, - - // DSKA0191.IMD.lz - 1024, - - // DSKA0192.IMD.lz - 2048, - - // DSKA0194.IMD.lz - 4096, - - // DSKA0196.IMD.lz - 1024, - - // DSKA0197.IMD.lz - 256, - - // DSKA0198.IMD.lz - 256, - - // DSKA0199.IMD.lz - 256, - - // DSKA0200.IMD.lz - 1024, - - // DSKA0201.IMD.lz - 1024, - - // DSKA0202.IMD.lz - 1024, - - // DSKA0203.IMD.lz - 1024, - - // DSKA0204.IMD.lz - 512, - - // DSKA0205.IMD.lz - 512, - - // DSKA0206.IMD.lz - 512, - - // DSKA0207.IMD.lz - 512, - - // DSKA0208.IMD.lz - 1024, - - // DSKA0209.IMD.lz - 512, - - // DSKA0210.IMD.lz - 512, - - // DSKA0211.IMD.lz - 512, - - // DSKA0212.IMD.lz - 512, - - // DSKA0213.IMD.lz - 1024, - - // DSKA0214.IMD.lz - 1024, - - // DSKA0215.IMD.lz - 1024, - - // DSKA0216.IMD.lz - 512, - - // DSKA0218.IMD.lz - 512, - - // DSKA0219.IMD.lz - 512, - - // DSKA0220.IMD.lz - 512, - - // DSKA0221.IMD.lz - 256, - - // DSKA0222.IMD.lz - 512, - - // DSKA0223.IMD.lz - 256, - - // DSKA0224.IMD.lz - 256, - - // DSKA0225.IMD.lz - 256, - - // DSKA0226.IMD.lz - 256, - - // DSKA0227.IMD.lz - 256, - - // DSKA0228.IMD.lz - 256, - - // DSKA0232.IMD.lz - 512, - - // DSKA0233.IMD.lz - 128, - - // DSKA0234.IMD.lz - 256, - - // DSKA0235.IMD.lz - 256, - - // DSKA0236.IMD.lz - 256, - - // DSKA0238.IMD.lz - 512, - - // DSKA0240.IMD.lz - 256, - - // DSKA0241.IMD.lz - 256, - - // DSKA0242.IMD.lz - 1024, - - // DSKA0243.IMD.lz - 256, - - // DSKA0244.IMD.lz - 256, - - // DSKA0245.IMD.lz - 512, - - // DSKA0246.IMD.lz - 512, - - // DSKA0247.IMD.lz - 256, - - // DSKA0248.IMD.lz - 256, - - // DSKA0250.IMD.lz - 1024, - - // DSKA0251.IMD.lz - 256, - - // DSKA0252.IMD.lz - 256, - - // DSKA0253.IMD.lz - 1024, - - // DSKA0254.IMD.lz - 512, - - // DSKA0255.IMD.lz - 256, - - // DSKA0258.IMD.lz - 1024, - - // DSKA0262.IMD.lz - 512, - - // DSKA0263.IMD.lz - 512, - - // DSKA0264.IMD.lz - 512, - - // DSKA0265.IMD.lz - 512, - - // DSKA0266.IMD.lz - 512, - - // DSKA0267.IMD.lz - 512, - - // DSKA0268.IMD.lz - 512, - - // DSKA0269.IMD.lz - 512, - - // DSKA0270.IMD.lz - 512, - - // DSKA0271.IMD.lz - 512, - - // DSKA0272.IMD.lz - 512, - - // DSKA0273.IMD.lz - 512, - - // DSKA0280.IMD.lz - 512, - - // DSKA0281.IMD.lz - 512, - - // DSKA0282.IMD.lz - 512, - - // DSKA0283.IMD.lz - 512, - - // DSKA0284.IMD.lz - 512, - - // DSKA0285.IMD.lz - 512, - - // DSKA0287.IMD.lz - 512, - - // DSKA0288.IMD.lz - 512, - - // DSKA0289.IMD.lz - 512, - - // DSKA0290.IMD.lz - 512, - - // DSKA0291.IMD.lz - 512, - - // DSKA0299.IMD.lz - 512, - - // DSKA0300.IMD.lz - 512, - - // DSKA0301.IMD.lz - 512, - - // DSKA0302.IMD.lz - 512, - - // DSKA0303.IMD.lz - 512, - - // DSKA0304.IMD.lz - 512, - - // DSKA0305.IMD.lz - 512, - - // DSKA0307.IMD.lz - 512, - - // DSKA0308.IMD.lz - 512, - - // DSKA0311.IMD.lz - 512, - - // DSKA0314.IMD.lz - 512, - - // DSKA0316.IMD.lz - 512, - - // DSKA0317.IMD.lz - 512, - - // DSKA0318.IMD.lz - 512, - - // DSKA0319.IMD.lz - 512, - - // DSKA0320.IMD.lz - 512, - - // DSKA0322.IMD.lz - 512, - - // md1dd_rx01.imd.lz - 128, - - // md1qd_rx50.imd.lz - 512, - - // md2hd_nec.imd.lz - 1024, - - // mf2dd_2mgui.imd.lz - 16384, - - // mf2dd_2m.imd.lz - 1024, - - // mf2dd_fdformat_800.imd.lz - 512, - - // mf2dd_fdformat_820.imd.lz - 512, - - // mf2dd_freedos.imd.lz - 512, - - // mf2dd.imd.lz - 512, - - // mf2hd_2mgui.imd.lz - 16384, - - // mf2hd_2m.imd.lz - 1024, - - // mf2hd_fdformat_168.imd.lz - 512, - - // mf2hd_fdformat_172.imd.lz - 512, - - // mf2hd_freedos.imd.lz - 512, - - // mf2hd.imd.lz - 512, - - // mf2hd_xdf.imd.lz - 2048 - }; - - public override MediaType[] _mediaTypes => new[] - { - // CPM1_ALL.IMD.lz - MediaType.DOS_35_DS_DD_8, - - // DSKA0000.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0001.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0002.IMD.lz - MediaType.ACORN_35_DS_HD, - - // DSKA0003.IMD.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0004.IMD.lz - MediaType.ACORN_35_DS_HD, - - // DSKA0006.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0009.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0010.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0011.IMD.lz - MediaType.Unknown, - - // DSKA0012.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0013.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0017.IMD.lz - MediaType.Unknown, - - // DSKA0018.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0019.IMD.lz - MediaType.Unknown, - - // DSKA0020.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0021.IMD.lz - MediaType.Unknown, - - // DSKA0022.IMD.lz - MediaType.ACORN_525_DS_DD, - - // DSKA0023.IMD.lz - MediaType.ACORN_35_DS_HD, - - // DSKA0024.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0025.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0026.IMD.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0027.IMD.lz - MediaType.Unknown, - - // DSKA0028.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0029.IMD.lz - MediaType.Unknown, - - // DSKA0030.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0031.IMD.lz - MediaType.ACORN_525_SS_DD_40, - - // DSKA0032.IMD.lz - MediaType.ACORN_525_SS_DD_40, - - // DSKA0033.IMD.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0034.IMD.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0035.IMD.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0036.IMD.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0037.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0038.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0039.IMD.lz - MediaType.DOS_35_SS_DD_8, - - // DSKA0040.IMD.lz - MediaType.DOS_35_SS_DD_8, - - // DSKA0041.IMD.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0042.IMD.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0043.IMD.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0044.IMD.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0045.IMD.lz - MediaType.NEC_35_HD_15, - - // DSKA0046.IMD.lz - MediaType.Unknown, - - // DSKA0047.IMD.lz - MediaType.DOS_35_DS_DD_8, - - // DSKA0048.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0049.IMD.lz - MediaType.Unknown, - - // DSKA0050.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0051.IMD.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0052.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0053.IMD.lz - MediaType.Unknown, - - // DSKA0054.IMD.lz - MediaType.Unknown, - - // DSKA0055.IMD.lz - MediaType.Unknown, - - // DSKA0057.IMD.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0058.IMD.lz - MediaType.Unknown, - - // DSKA0059.IMD.lz - MediaType.Unknown, - - // DSKA0060.IMD.lz - MediaType.Unknown, - - // DSKA0061.IMD.lz - MediaType.Unknown, - - // DSKA0063.IMD.lz - MediaType.Unknown, - - // DSKA0064.IMD.lz - MediaType.Unknown, - - // DSKA0065.IMD.lz - MediaType.Unknown, - - // DSKA0066.IMD.lz - MediaType.Unknown, - - // DSKA0067.IMD.lz - MediaType.Unknown, - - // DSKA0068.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0069.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0070.IMD.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0073.IMD.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0074.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0075.IMD.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0076.IMD.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0077.IMD.lz - MediaType.Unknown, - - // DSKA0078.IMD.lz - MediaType.NEC_35_HD_15, - - // DSKA0080.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0081.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0082.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0083.IMD.lz - MediaType.Unknown, - - // DSKA0084.IMD.lz - MediaType.DMF, - - // DSKA0085.IMD.lz - MediaType.Unknown, - - // DSKA0086.IMD.lz - MediaType.DMF, - - // DSKA0089.IMD.lz - MediaType.Unknown, - - // DSKA0090.IMD.lz - MediaType.Unknown, - - // DSKA0091.IMD.lz - MediaType.Unknown, - - // DSKA0092.IMD.lz - MediaType.Unknown, - - // DSKA0093.IMD.lz - MediaType.Unknown, - - // DSKA0094.IMD.lz - MediaType.Unknown, - - // DSKA0097.IMD.lz - MediaType.Unknown, - - // DSKA0098.IMD.lz - MediaType.Unknown, - - // DSKA0099.IMD.lz - MediaType.Unknown, - - // DSKA0101.IMD.lz - MediaType.Unknown, - - // DSKA0103.IMD.lz - MediaType.Unknown, - - // DSKA0105.IMD.lz - MediaType.Unknown, - - // DSKA0106.IMD.lz - MediaType.Unknown, - - // DSKA0107.IMD.lz - MediaType.Unknown, - - // DSKA0108.IMD.lz - MediaType.Unknown, - - // DSKA0109.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0110.IMD.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0111.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0112.IMD.lz - MediaType.Unknown, - - // DSKA0113.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0114.IMD.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0115.IMD.lz - MediaType.Unknown, - - // DSKA0116.IMD.lz - MediaType.Unknown, - - // DSKA0117.IMD.lz - MediaType.Unknown, - - // DSKA0120.IMD.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0121.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0122.IMD.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0123.IMD.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0124.IMD.lz - MediaType.NEC_35_HD_15, - - // DSKA0125.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0126.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0147.IMD.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0148.IMD.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0149.IMD.lz - MediaType.Unknown, - - // DSKA0150.IMD.lz - MediaType.Unknown, - - // DSKA0151.IMD.lz - MediaType.Unknown, - - // DSKA0153.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0154.IMD.lz - MediaType.RX50, - - // DSKA0155.IMD.lz - MediaType.Unknown, - - // DSKA0157.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0158.IMD.lz - MediaType.Unknown, - - // DSKA0159.IMD.lz - MediaType.ACORN_525_SS_DD_40, - - // DSKA0160.IMD.lz - MediaType.Unknown, - - // DSKA0162.IMD.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0163.IMD.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0164.IMD.lz - MediaType.Unknown, - - // DSKA0166.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0167.IMD.lz - MediaType.Unknown, - - // DSKA0168.IMD.lz - MediaType.NEC_35_HD_15, - - // DSKA0169.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0170.IMD.lz - MediaType.Unknown, - - // DSKA0171.IMD.lz - MediaType.Unknown, - - // DSKA0173.IMD.lz - MediaType.DOS_35_SS_DD_9, - - // DSKA0174.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0175.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0176.IMD.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0177.IMD.lz - MediaType.Unknown, - - // DSKA0180.IMD.lz - MediaType.Unknown, - - // DSKA0181.IMD.lz - MediaType.DMF, - - // DSKA0182.IMD.lz - MediaType.Unknown, - - // DSKA0183.IMD.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0184.IMD.lz - MediaType.Unknown, - - // DSKA0185.IMD.lz - MediaType.Unknown, - - // DSKA0186.IMD.lz - MediaType.Unknown, - - // DSKA0191.IMD.lz - MediaType.Unknown, - - // DSKA0192.IMD.lz - MediaType.Unknown, - - // DSKA0194.IMD.lz - MediaType.Unknown, - - // DSKA0196.IMD.lz - MediaType.Unknown, - - // DSKA0197.IMD.lz - MediaType.ACORN_525_SS_DD_40, - - // DSKA0198.IMD.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0199.IMD.lz - MediaType.ACORN_525_DS_DD, - - // DSKA0200.IMD.lz - MediaType.ACORN_35_DS_HD, - - // DSKA0201.IMD.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0202.IMD.lz - MediaType.ACORN_35_DS_HD, - - // DSKA0203.IMD.lz - MediaType.Unknown, - - // DSKA0204.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0205.IMD.lz - MediaType.Unknown, - - // DSKA0206.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0207.IMD.lz - MediaType.Unknown, - - // DSKA0208.IMD.lz - MediaType.Unknown, - - // DSKA0209.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0210.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0211.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0212.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0213.IMD.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0214.IMD.lz - MediaType.ACORN_35_DS_HD, - - // DSKA0215.IMD.lz - MediaType.ACORN_35_DS_HD, - - // DSKA0216.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0218.IMD.lz - MediaType.Unknown, - - // DSKA0219.IMD.lz - MediaType.Unknown, - - // DSKA0220.IMD.lz - MediaType.Unknown, - - // DSKA0221.IMD.lz - MediaType.Unknown, - - // DSKA0222.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0223.IMD.lz - MediaType.Unknown, - - // DSKA0224.IMD.lz - MediaType.Unknown, - - // DSKA0225.IMD.lz - MediaType.Unknown, - - // DSKA0226.IMD.lz - MediaType.ACORN_525_DS_DD, - - // DSKA0227.IMD.lz - MediaType.Unknown, - - // DSKA0228.IMD.lz - MediaType.Unknown, - - // DSKA0232.IMD.lz - MediaType.Unknown, - - // DSKA0233.IMD.lz - MediaType.ATARI_525_SD, - - // DSKA0234.IMD.lz - MediaType.ACORN_525_DS_DD, - - // DSKA0235.IMD.lz - MediaType.Unknown, - - // DSKA0236.IMD.lz - MediaType.ACORN_525_SS_SD_80, - - // DSKA0238.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0240.IMD.lz - MediaType.ATARI_525_DD, - - // DSKA0241.IMD.lz - MediaType.Unknown, - - // DSKA0242.IMD.lz - MediaType.NEC_35_HD_8, - - // DSKA0243.IMD.lz - MediaType.Unknown, - - // DSKA0244.IMD.lz - MediaType.Unknown, - - // DSKA0245.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0246.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0247.IMD.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0248.IMD.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0250.IMD.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0251.IMD.lz - MediaType.ACORN_525_DS_DD, - - // DSKA0252.IMD.lz - MediaType.ACORN_525_SS_DD_80, - - // DSKA0253.IMD.lz - MediaType.ACORN_35_DS_DD, - - // DSKA0254.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0255.IMD.lz - MediaType.ACORN_525_DS_DD, - - // DSKA0258.IMD.lz - MediaType.NEC_35_HD_8, - - // DSKA0262.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0263.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0264.IMD.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0265.IMD.lz - MediaType.Unknown, - - // DSKA0266.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0267.IMD.lz - MediaType.XDF_525, - - // DSKA0268.IMD.lz - MediaType.Unknown, - - // DSKA0269.IMD.lz - MediaType.Unknown, - - // DSKA0270.IMD.lz - MediaType.Unknown, - - // DSKA0271.IMD.lz - MediaType.DMF, - - // DSKA0272.IMD.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0273.IMD.lz - MediaType.Unknown, - - // DSKA0280.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0281.IMD.lz - MediaType.Unknown, - - // DSKA0282.IMD.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0283.IMD.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0284.IMD.lz - MediaType.Unknown, - - // DSKA0285.IMD.lz - MediaType.Unknown, - - // DSKA0287.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0288.IMD.lz - MediaType.Unknown, - - // DSKA0289.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0290.IMD.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0291.IMD.lz - MediaType.Unknown, - - // DSKA0299.IMD.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0300.IMD.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0301.IMD.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0302.IMD.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0303.IMD.lz - MediaType.NEC_35_HD_15, - - // DSKA0304.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0305.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0307.IMD.lz - MediaType.Unknown, - - // DSKA0308.IMD.lz - MediaType.CBM_35_DD, - - // DSKA0311.IMD.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0314.IMD.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0316.IMD.lz - MediaType.DOS_35_HD, - - // DSKA0317.IMD.lz - MediaType.DMF, - - // DSKA0318.IMD.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0319.IMD.lz - MediaType.DMF, - - // DSKA0320.IMD.lz - MediaType.DMF, - - // DSKA0322.IMD.lz - MediaType.Unknown, - - // md1dd_rx01.imd.lz - MediaType.RX01, - - // md1qd_rx50.imd.lz - MediaType.RX50, - - // md2hd_nec.imd.lz - MediaType.NEC_35_HD_8, - - // mf2dd_2mgui.imd.lz - MediaType.Unknown, - - // mf2dd_2m.imd.lz - MediaType.Unknown, - - // mf2dd_fdformat_800.imd.lz - MediaType.CBM_35_DD, - - // mf2dd_fdformat_820.imd.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_freedos.imd.lz - MediaType.CBM_35_DD, - - // mf2dd.imd.lz - MediaType.DOS_35_DS_DD_9, - - // mf2hd_2mgui.imd.lz - MediaType.Unknown, - - // mf2hd_2m.imd.lz - MediaType.Unknown, - - // mf2hd_fdformat_168.imd.lz - MediaType.DMF, - - // mf2hd_fdformat_172.imd.lz - MediaType.FDFORMAT_35_HD, - - // mf2hd_freedos.imd.lz - MediaType.Unknown, - - // mf2hd.imd.lz - MediaType.DOS_35_HD, - - // mf2hd_xdf.imd.lz - MediaType.Unknown - }; - - public override string[] _md5S => new[] - { - // CPM1_ALL.IMD.lz - "b5ab1915fc3d7fceecfcd7fda82f6b0d", - - // DSKA0000.IMD.lz - "e8bbbd22db87181974e12ba0227ea011", - - // DSKA0001.IMD.lz - "9f5635f3df4d880a500910b0ad1ab535", - - // DSKA0002.IMD.lz - "3bad4b4db8f5e2f991637fccf7a25740", - - // DSKA0003.IMD.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0004.IMD.lz - "a481bd5a8281dad089edbef390c136ed", - - // DSKA0006.IMD.lz - "46fce47baf08c6f093f2c355a603543d", - - // DSKA0009.IMD.lz - "95ea232f59e44db374b994cfe7f1c07f", - - // DSKA0010.IMD.lz - "9e2b01f4397db2a6c76e2bc267df37b3", - - // DSKA0011.IMD.lz - "dbbf55398d930e14c2b0a035dd1277b9", - - // DSKA0012.IMD.lz - "656002e6e620cb3b73c27f4c21d32edb", - - // DSKA0013.IMD.lz - "1244cc2c101c66e6bb4ad5183b356b19", - - // DSKA0017.IMD.lz - "a817a56036f591a5cff11857b7d466be", - - // DSKA0018.IMD.lz - "439b2b76e154f3ce7e86bf1377282d5f", - - // DSKA0019.IMD.lz - "3c21d11e2b4ca108de3ec8ffface814d", - - // DSKA0020.IMD.lz - "c2e64e8a388b4401719f06d6a868dd1b", - - // DSKA0021.IMD.lz - "6fc7f2233f094af7ae0d454668976858", - - // DSKA0022.IMD.lz - "ad6c3e6910457a53572695401efda4ab", - - // DSKA0023.IMD.lz - "5e41fe3201ab32f25873faf8d3f79a02", - - // DSKA0024.IMD.lz - "2302991363cb3681cffdc4388915b51e", - - // DSKA0025.IMD.lz - "4e4cafed1cc22ea72201169427e5e1b6", - - // DSKA0026.IMD.lz - "a579b349a5a24218d59a44e36bdb1333", - - // DSKA0027.IMD.lz - "669b2155d5e4d7849d662729717a68d8", - - // DSKA0028.IMD.lz - "1a4c7487382c98b7bc74623ddfb488e6", - - // DSKA0029.IMD.lz - "23f5700ea3bfe076c88dd399a8026a1e", - - // DSKA0030.IMD.lz - "af83d011608042d35021e39aa5e10b2f", - - // DSKA0031.IMD.lz - "e640835966327f3f662e1db8e0575510", - - // DSKA0032.IMD.lz - "ff3534234d1d2dd88bf6e83be23d9227", - - // DSKA0033.IMD.lz - "dfaff34a6556b515642f1e54f839b02e", - - // DSKA0034.IMD.lz - "ca8f5c7f9ed161b03ccb166eb9d62146", - - // DSKA0035.IMD.lz - "6642c1a32d2c58e93481d664974fc202", - - // DSKA0036.IMD.lz - "6642c1a32d2c58e93481d664974fc202", - - // DSKA0037.IMD.lz - "5101f89850dc28efbcfb7622086a9ddf", - - // DSKA0038.IMD.lz - "8e570be2ed1f00ddea82e50a2d9c446a", - - // DSKA0039.IMD.lz - "abba2a1ddd60a649047a9c44d94bbeae", - - // DSKA0040.IMD.lz - "e3bc48bec81be5b35be73d41fdffd2ab", - - // DSKA0041.IMD.lz - "43b5068af9d016d1432eb2e12d2b802a", - - // DSKA0042.IMD.lz - "5bf2ad4dc300592604b6e32f8b8e2656", - - // DSKA0043.IMD.lz - "cb9a832ca6a4097b8ccc30d2108e1f7d", - - // DSKA0044.IMD.lz - "56d181a6bb8713e6b2854fe8887faab6", - - // DSKA0045.IMD.lz - "41aef7cff26aefda1add8d49c5b962c2", - - // DSKA0046.IMD.lz - "2437c5f089f1cba3866b36360b016f16", - - // DSKA0047.IMD.lz - "bdaa8f17373b265830fdf3a06b794367", - - // DSKA0048.IMD.lz - "629932c285478d0540ff7936aa008351", - - // DSKA0049.IMD.lz - "7a2abef5d4701e2e49abb05af8d4da50", - - // DSKA0050.IMD.lz - "e3507522c914264f44fb2c92c3170c09", - - // DSKA0051.IMD.lz - "824fe65dbb1a42b6b94f05405ef984f2", - - // DSKA0052.IMD.lz - "1a8c2e78e7132cf9ba5d6c2b75876be0", - - // DSKA0053.IMD.lz - "936b20bb0966fe693b4d5e2353e24846", - - // DSKA0054.IMD.lz - "803b01a0b440c2837d37c21308f30cd5", - - // DSKA0055.IMD.lz - "aa0d31f914760cc4cde75479779ebed6", - - // DSKA0057.IMD.lz - "5e413433c54f48978d281c6e66d1106e", - - // DSKA0058.IMD.lz - "4fc28b0128543b2eb70f6432c4c8a980", - - // DSKA0059.IMD.lz - "24a7459d080cea3a60d131b8fd7dc5d1", - - // DSKA0060.IMD.lz - "2031b1e16ee2defc0d15f732f633df33", - - // DSKA0061.IMD.lz - "79e5f1fbd63b87c087d85904d45964e6", - - // DSKA0063.IMD.lz - "1b2495a8f2274852b6fae80ae6fbff2f", - - // DSKA0064.IMD.lz - "3a70851950ad06c20e3063ad6f128eef", - - // DSKA0065.IMD.lz - "98a91bbdbe8454cf64e20d0ec5c35017", - - // DSKA0066.IMD.lz - "666706f299a1362cb30f34a3a7f555be", - - // DSKA0067.IMD.lz - "2fa1eedb57fac492d6f6b71e2c0a079c", - - // DSKA0068.IMD.lz - "3152c8e3544bbfaceff14b7522faf5af", - - // DSKA0069.IMD.lz - "5fc19ca552b6db957061e9a1750394d2", - - // DSKA0070.IMD.lz - "d1e978b679c63a218c3f77a7ca2c7206", - - // DSKA0073.IMD.lz - "a33b46f042b78fe3d0b3c5dbb3908a93", - - // DSKA0074.IMD.lz - "565d3c001cbb532154aa5d3c65b2439c", - - // DSKA0075.IMD.lz - "e60442c3ebd72c99bdd7545fdba59613", - - // DSKA0076.IMD.lz - "058a33a129539285c9b64010496af52f", - - // DSKA0077.IMD.lz - "0726ecbc38965d30a6222c3e74cd1aa3", - - // DSKA0078.IMD.lz - "c9a193837db7d8a5eb025eb41e8a76d7", - - // DSKA0080.IMD.lz - "c38d69ac88520f14fcc6d6ced22b065d", - - // DSKA0081.IMD.lz - "91d51964e1e64ef3f6f622fa19aa833c", - - // DSKA0082.IMD.lz - "db36d9651c952ff679ec33223c8db2d3", - - // DSKA0083.IMD.lz - "5f1d98806309aee7f81de72e51e6d386", - - // DSKA0084.IMD.lz - "1207a1cc7ff73d4f74c8984b4e7db33f", - - // DSKA0085.IMD.lz - "c97a3081fd25474b6b7945b8572d5ab8", - - // DSKA0086.IMD.lz - "31269ed6464302ae26d22b7c87bceb23", - - // DSKA0089.IMD.lz - "8b31e5865611dbe01cc25b5ba2fbdf25", - - // DSKA0090.IMD.lz - "be278c00c3ec906756e7c8d544d8833d", - - // DSKA0091.IMD.lz - "8e7fb60151e0002e8bae2fb2abe13a69", - - // DSKA0092.IMD.lz - "45e0b2a2925a95bbdcb43a914d70f91b", - - // DSKA0093.IMD.lz - "082d7eda62eead1e20fd5a060997ff0f", - - // DSKA0094.IMD.lz - "9b75a2fb671d1e7fa27434038b375e5e", - - // DSKA0097.IMD.lz - "97c4f895d64ba196f19a3179e68ef693", - - // DSKA0098.IMD.lz - "c838233a380973de386e66ee0e0cbcc2", - - // DSKA0099.IMD.lz - "dea88f91ca0f6d90626b4029286cb01f", - - // DSKA0101.IMD.lz - "db82b15389e2ffa9a20f7251cc5cce5b", - - // DSKA0103.IMD.lz - "638b56d7061a8156ee87166c78f06111", - - // DSKA0105.IMD.lz - "d40a99cb549fcfb26fcf9ef01b5dfca7", - - // DSKA0106.IMD.lz - "7b41dd9ca7eb32828960eb1417a6092a", - - // DSKA0107.IMD.lz - "126dfd25363c076727dfaab03955c931", - - // DSKA0108.IMD.lz - "e6492aac144f5f6f593b84c64680cf64", - - // DSKA0109.IMD.lz - "7973e569ed93beb1ece2e84a5ef3a8d1", - - // DSKA0110.IMD.lz - "a793047503af08e83361427b3e2806e0", - - // DSKA0111.IMD.lz - "f01541de322c8d6d7321084d7a245e7b", - - // DSKA0112.IMD.lz - "ba6ec1652ff41bcc687aaf9c4e32dc18", - - // DSKA0113.IMD.lz - "7973e569ed93beb1ece2e84a5ef3a8d1", - - // DSKA0114.IMD.lz - "a793047503af08e83361427b3e2806e0", - - // DSKA0115.IMD.lz - "ba6ec1652ff41bcc687aaf9c4e32dc18", - - // DSKA0116.IMD.lz - "6631b66fdfd89319323771c41334c7ba", - - // DSKA0117.IMD.lz - "4b5e2c9599bb7861b3b52bec00d81278", - - // DSKA0120.IMD.lz - "7d36aee5a3071ff75b979f3acb649c40", - - // DSKA0121.IMD.lz - "0ccb62039363ab544c69eca229a17fae", - - // DSKA0122.IMD.lz - "7851d31fad9302ff45d3ded4fba25387", - - // DSKA0123.IMD.lz - "915b08c82591e8488320e001b7303b6d", - - // DSKA0124.IMD.lz - "5e5ea6fe9adf842221fdc60e56630405", - - // DSKA0125.IMD.lz - "a22e254f7e3526ec30dc4915a19fcb52", - - // DSKA0126.IMD.lz - "ddc6c1200c60e9f7796280f50c2e5283", - - // DSKA0147.IMD.lz - "6efa72a33021d5051546c3e0dd4c3c09", - - // DSKA0148.IMD.lz - "8b5acfd14818ff9556d3d81361ce4862", - - // DSKA0149.IMD.lz - "cf42d08469548a31caf2649a1d08a85f", - - // DSKA0150.IMD.lz - "62745e10683cf2ec1dac177535459891", - - // DSKA0151.IMD.lz - "cf42d08469548a31caf2649a1d08a85f", - - // DSKA0153.IMD.lz - "298c377de52947c472a85d281b6d3d4d", - - // DSKA0154.IMD.lz - "387373301cf6c15d61eec9bab18d9b6a", - - // DSKA0155.IMD.lz - "83b66a88d92cbf2715343016e4108211", - - // DSKA0157.IMD.lz - "20e047061b6ca4059288deed8c9dd247", - - // DSKA0158.IMD.lz - "8b5acfd14818ff9556d3d81361ce4862", - - // DSKA0159.IMD.lz - "6efa72a33021d5051546c3e0dd4c3c09", - - // DSKA0160.IMD.lz - "8b5acfd14818ff9556d3d81361ce4862", - - // DSKA0162.IMD.lz - "e63014a4299f52f22e6e2c9609f51979", - - // DSKA0163.IMD.lz - "be05d1ff10ef8b2220546c4db962ac9e", - - // DSKA0164.IMD.lz - "32823b9009c99b6711e89336ad03ec7f", - - // DSKA0166.IMD.lz - "1c8b03a8550ed3e70e1c78316aa445aa", - - // DSKA0167.IMD.lz - "efbc62e2ecddc15241aa0779e078d478", - - // DSKA0168.IMD.lz - "0bdf9130c07bb5d558a4705249f949d0", - - // DSKA0169.IMD.lz - "2dafeddaa99e7dc0db5ef69e128f9c8e", - - // DSKA0170.IMD.lz - "589ae671a19e78ffcba5032092c4c0d5", - - // DSKA0171.IMD.lz - "cf0c71b65b56cb6b617d29525bd719dd", - - // DSKA0173.IMD.lz - "028769dc0abefab1740cc309432588b6", - - // DSKA0174.IMD.lz - "152023525154b45ab26687190bac94db", - - // DSKA0175.IMD.lz - "db38ecd93f28dd065927fed21917eed5", - - // DSKA0176.IMD.lz - "716262401bc69f2f440a9c156c21c9e9", - - // DSKA0177.IMD.lz - "83213865ca6a40c289b22324a32a2608", - - // DSKA0180.IMD.lz - "f206c0caa4e0eda37233ab6e89ab5493", - - // DSKA0181.IMD.lz - "554492a7b41f4cd9068a3a2b70eb0e5f", - - // DSKA0182.IMD.lz - "865ad9072cb6c7458f7d86d7e9368622", - - // DSKA0183.IMD.lz - "2461e458438f0033bc5811fd6958ad02", - - // DSKA0184.IMD.lz - "be75996696aa70ee9338297137556d83", - - // DSKA0185.IMD.lz - "5a0f2bad567464288ec7ce935672870a", - - // DSKA0186.IMD.lz - "69f9f0b5c1fc00a8f398151df9d93ab5", - - // DSKA0191.IMD.lz - "fb144f79239f6f5f113b417700c2d278", - - // DSKA0192.IMD.lz - "6a936d2ecb771e37b856bdad16822c32", - - // DSKA0194.IMD.lz - "e283af9d280efaf059c816b6a2c9206b", - - // DSKA0196.IMD.lz - "e4625838148a4b7c6580c697cd47362c", - - // DSKA0197.IMD.lz - "74f71ef3978fefce64689e8be18359ba", - - // DSKA0198.IMD.lz - "5c4e555b29a264f2a81f8a2b58bfc442", - - // DSKA0199.IMD.lz - "64ae73ac812bbf473a5d443de4d5dfbf", - - // DSKA0200.IMD.lz - "a481bd5a8281dad089edbef390c136ed", - - // DSKA0201.IMD.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0202.IMD.lz - "a481bd5a8281dad089edbef390c136ed", - - // DSKA0203.IMD.lz - "8a16a3008739516fc3ba4c878868d056", - - // DSKA0204.IMD.lz - "46fce47baf08c6f093f2c355a603543d", - - // DSKA0205.IMD.lz - "ee73a5d5c8dfac236baf7b99811696f9", - - // DSKA0206.IMD.lz - "b3bdbc62fb96e3893dac3bccbde59ab0", - - // DSKA0207.IMD.lz - "02942b9dc9d3b1bc9335b73c99e6da2e", - - // DSKA0208.IMD.lz - "dfc9e8c7bd3d50f404d6f0b6ada20b0c", - - // DSKA0209.IMD.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0210.IMD.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0211.IMD.lz - "647f14749f59be471aac04a71a079a64", - - // DSKA0212.IMD.lz - "517cdd5e42a4673f733d1aedfb46770f", - - // DSKA0213.IMD.lz - "6ad92e9522e4ba902c01beecb5943bb1", - - // DSKA0214.IMD.lz - "9a1a7d8f53fcfad7603fe585c6c7214c", - - // DSKA0215.IMD.lz - "2a7a9b48551fd4d8b166bcfcbe1ca132", - - // DSKA0216.IMD.lz - "40199611e6e75bbc37ad6c52a5b77eae", - - // DSKA0218.IMD.lz - "8fa0ffd7481a94b9e7c4006599329250", - - // DSKA0219.IMD.lz - "3fa51592c5a65b7e4915a8e22d523ced", - - // DSKA0220.IMD.lz - "2153339750c119627bab75bd0bf7a193", - - // DSKA0221.IMD.lz - "f92b2e52259531d50bfb403dc1274ab1", - - // DSKA0222.IMD.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0223.IMD.lz - "a5dc382d75ec46434b313e289c281d8c", - - // DSKA0224.IMD.lz - "8335b175c352352e19f9008ad67d1375", - - // DSKA0225.IMD.lz - "447efa963c19474508c503d037a3b429", - - // DSKA0226.IMD.lz - "b7669fa76ecf5634313675b001bb7fa2", - - // DSKA0227.IMD.lz - "676f1bc7764899912ab6ad8257c63a16", - - // DSKA0228.IMD.lz - "d72e86324d4d518996f6671751614800", - - // DSKA0232.IMD.lz - "b76bd117ce24d933cdefe09b1de2164a", - - // DSKA0233.IMD.lz - "a769b7642a222d97a56c46f53833fafa", - - // DSKA0234.IMD.lz - "dfa733d034bb1f83d694dfa217910081", - - // DSKA0235.IMD.lz - "8260ee01a245aec2de162ee0d85f4b7f", - - // DSKA0236.IMD.lz - "261c7a5a4298e9f050928dd770097c77", - - // DSKA0238.IMD.lz - "a47068ff73dfbea58c25daa5b9132a9e", - - // DSKA0240.IMD.lz - "d1ab955f0961ab94e6cf69f78134a84b", - - // DSKA0241.IMD.lz - "8b62738f15bcc916a668eaa67eec86e7", - - // DSKA0242.IMD.lz - "87a432496cb23b5c2299545500df3553", - - // DSKA0243.IMD.lz - "9866ab8e58fa4be25010184aec4ad3aa", - - // DSKA0244.IMD.lz - "9dab329ae098b29889ab08278de38f95", - - // DSKA0245.IMD.lz - "0d71b4952dadbfb1061acc1f4640c787", - - // DSKA0246.IMD.lz - "af7ac6b5b9d2d57dad22dbb64ef7de38", - - // DSKA0247.IMD.lz - "f8f81f945aaad6fbfe7e2db1905302c1", - - // DSKA0248.IMD.lz - "f6f81c75b5ba45d91c1886c6dda9caee", - - // DSKA0250.IMD.lz - "d4809467b321991a9c772ad87fc8aa19", - - // DSKA0251.IMD.lz - "d075e50705f4ddca7ba4dbc981ec1176", - - // DSKA0252.IMD.lz - "9f86480c86bae33a5b444e4a7ed55048", - - // DSKA0253.IMD.lz - "629971775d902d1cc2658fc76f57e072", - - // DSKA0254.IMD.lz - "5dc0d482a773043d8683a84c8220df95", - - // DSKA0255.IMD.lz - "1718d8acd18fce3c5c1a7a074ed8ac29", - - // DSKA0258.IMD.lz - "855943f9caecdcce9b06f0098d773c6b", - - // DSKA0262.IMD.lz - "5ac0a9fc7337f761098f816359b0f6f7", - - // DSKA0263.IMD.lz - "1ea6ec8e663218b1372048f6e25795b5", - - // DSKA0264.IMD.lz - "77a1167b1b9043496e32b8578cde0ff0", - - // DSKA0265.IMD.lz - "4b07d760d65f3f0f8ffa5f2b81cee907", - - // DSKA0266.IMD.lz - "32c044c5c2b0bd13806149a759c14935", - - // DSKA0267.IMD.lz - "8752095abc13dba3f3467669da333891", - - // DSKA0268.IMD.lz - "aece7cd34bbba3e75307fa70404d9d30", - - // DSKA0269.IMD.lz - "5289afb16a6e4a33213e3bcca56c6230", - - // DSKA0270.IMD.lz - "1aef0a0ba233476db6567878c3c2b266", - - // DSKA0271.IMD.lz - "b96596711f4d2ee85dfda0fe3b9f26c3", - - // DSKA0272.IMD.lz - "a4f461af7fda5e93a7ab63fcbb7e7683", - - // DSKA0273.IMD.lz - "8f7f7099d4475f6631fcf0a79b031d61", - - // DSKA0280.IMD.lz - "4feeaf4b4ee5dad85db727fbbda4b6d1", - - // DSKA0281.IMD.lz - "3c77ca681df78e4cd7baa162aa9b0859", - - // DSKA0282.IMD.lz - "51da1f86c49657ffdb367bb2ddeb7990", - - // DSKA0283.IMD.lz - "b81a4987f89936630b8ebc62e4bbce6e", - - // DSKA0284.IMD.lz - "f76f92dd326c99c5efad5ee58daf72e1", - - // DSKA0285.IMD.lz - "b6f2c10e42908e334025bc4ffd81e771", - - // DSKA0287.IMD.lz - "f2f409ea2a62a7866fd2777cc4fc9739", - - // DSKA0288.IMD.lz - "3e441d69cec5c3169274e1379de4af4b", - - // DSKA0289.IMD.lz - "30a93f30dd4485c6fc037fe0775d3fc7", - - // DSKA0290.IMD.lz - "e0caf02cce5597c98313bcc480366ec7", - - // DSKA0291.IMD.lz - "4af4904d2b3c815da7bef7049209f5eb", - - // DSKA0299.IMD.lz - "39bf5a98bcb2185d855ac06378febcfa", - - // DSKA0300.IMD.lz - "dc20055b6e6fd6f8e1114d4be2effeed", - - // DSKA0301.IMD.lz - "56af9256cf71d5aac5fd5d363674bc49", - - // DSKA0302.IMD.lz - "bbba1e2d1418e05c3a4e7b4d585d160b", - - // DSKA0303.IMD.lz - "bca3a045e81617f7f5ebb5a8818eac47", - - // DSKA0304.IMD.lz - "a296663cb8e75e94603221352f29cfff", - - // DSKA0305.IMD.lz - "ecda36ebf0e1100233cb0ec722c18583", - - // DSKA0307.IMD.lz - "cef2f4fe9b1a32d5c0544f814e634264", - - // DSKA0308.IMD.lz - "bbe58e26b8f8f822cd3edfd37a4e4924", - - // DSKA0311.IMD.lz - "b9b6ebdf711364c979de7cf70c3a438a", - - // DSKA0314.IMD.lz - "d37424f367f545acbb397f2bed766843", - - // DSKA0316.IMD.lz - "9963dd6f19ce6bd56eabeccdfbbd821a", - - // DSKA0317.IMD.lz - "acf6604559ae8217f7869823e2429024", - - // DSKA0318.IMD.lz - "23bf2139cdfdc4c16db058fd31ea6481", - - // DSKA0319.IMD.lz - "fa26adda0415f02057b113ad29c80c8d", - - // DSKA0320.IMD.lz - "4f2a8d036fefd6c6c88d99eda3aa12b7", - - // DSKA0322.IMD.lz - "e794a3ffa4069ea999fdf7146710fa9e", - - // md1dd_rx01.imd.lz - "5b4e36d92b180c3845387391cb5a1c64", - - // md1qd_rx50.imd.lz - "ccd4431139755c58f340681f63510642", - - // md2hd_nec.imd.lz - "fd54916f713d01b670c1a5df5e74a97f", - - // mf2dd_2mgui.imd.lz - "623b224f63d65ae3b6c3ddadadf3b836", - - // mf2dd_2m.imd.lz - "08b530d8c25d785b20c93a1a7a6468a0", - - // mf2dd_fdformat_800.imd.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_fdformat_820.imd.lz - "db9cfb6eea18820b7a7e0b5b45594471", - - // mf2dd_freedos.imd.lz - "1ff7649b679ba22ff20d39ff717dbec8", - - // mf2dd.imd.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2hd_2mgui.imd.lz - "adafed1fac3d1a181380bdb590249385", - - // mf2hd_2m.imd.lz - "c741c78eecd673f8fc49e77459871940", - - // mf2hd_fdformat_168.imd.lz - "03c2af6a8ebf4bd6f530335de34ae5dd", - - // mf2hd_fdformat_172.imd.lz - "9dea1e119a73a21a38d134f36b2e5564", - - // mf2hd_freedos.imd.lz - "dbd52e9e684f97d9e2292811242bb24e", - - // mf2hd.imd.lz - "b4a602f67903c46eef62addb0780aa56", - - // mf2hd_xdf.imd.lz - "71194f8dba31d29780bd0a6ecee5ab2b" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "ImageDisk"); public override IMediaImage _plugin => new Imd(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "CPM1_ALL.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_8, + Sectors = 1280, + SectorSize = 512, + MD5 = "b5ab1915fc3d7fceecfcd7fda82f6b0d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0000.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "e8bbbd22db87181974e12ba0227ea011" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0001.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "9f5635f3df4d880a500910b0ad1ab535" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0002.IMD.lz", + MediaType = MediaType.ACORN_35_DS_HD, + Sectors = 1600, + SectorSize = 1024, + MD5 = "3bad4b4db8f5e2f991637fccf7a25740" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0003.IMD.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0004.IMD.lz", + MediaType = MediaType.ACORN_35_DS_HD, + Sectors = 1600, + SectorSize = 1024, + MD5 = "a481bd5a8281dad089edbef390c136ed" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0006.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "46fce47baf08c6f093f2c355a603543d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0009.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "95ea232f59e44db374b994cfe7f1c07f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0010.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "9e2b01f4397db2a6c76e2bc267df37b3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0011.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "dbbf55398d930e14c2b0a035dd1277b9" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0012.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "656002e6e620cb3b73c27f4c21d32edb" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0013.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1244cc2c101c66e6bb4ad5183b356b19" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0017.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "a817a56036f591a5cff11857b7d466be" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0018.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "439b2b76e154f3ce7e86bf1377282d5f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0019.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 90, + SectorSize = 512, + MD5 = "3c21d11e2b4ca108de3ec8ffface814d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0020.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "c2e64e8a388b4401719f06d6a868dd1b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0021.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "6fc7f2233f094af7ae0d454668976858" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0022.IMD.lz", + MediaType = MediaType.ACORN_525_DS_DD, + Sectors = 2560, + SectorSize = 256, + MD5 = "ad6c3e6910457a53572695401efda4ab" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0023.IMD.lz", + MediaType = MediaType.ACORN_35_DS_HD, + Sectors = 1600, + SectorSize = 1024, + MD5 = "5e41fe3201ab32f25873faf8d3f79a02" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0024.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2302991363cb3681cffdc4388915b51e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0025.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "4e4cafed1cc22ea72201169427e5e1b6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0026.IMD.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "a579b349a5a24218d59a44e36bdb1333" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0027.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 960, + SectorSize = 1024, + MD5 = "669b2155d5e4d7849d662729717a68d8" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0028.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1a4c7487382c98b7bc74623ddfb488e6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0029.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 960, + SectorSize = 1024, + MD5 = "23f5700ea3bfe076c88dd399a8026a1e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0030.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "af83d011608042d35021e39aa5e10b2f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0031.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_40, + Sectors = 640, + SectorSize = 256, + MD5 = "e640835966327f3f662e1db8e0575510" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0032.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_40, + Sectors = 640, + SectorSize = 256, + MD5 = "ff3534234d1d2dd88bf6e83be23d9227" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0033.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "dfaff34a6556b515642f1e54f839b02e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0034.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "ca8f5c7f9ed161b03ccb166eb9d62146" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0035.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6642c1a32d2c58e93481d664974fc202" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0036.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6642c1a32d2c58e93481d664974fc202" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0037.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "5101f89850dc28efbcfb7622086a9ddf" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0038.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "8e570be2ed1f00ddea82e50a2d9c446a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0039.IMD.lz", + MediaType = MediaType.DOS_35_SS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "abba2a1ddd60a649047a9c44d94bbeae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0040.IMD.lz", + MediaType = MediaType.DOS_35_SS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "e3bc48bec81be5b35be73d41fdffd2ab" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0041.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "43b5068af9d016d1432eb2e12d2b802a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0042.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "5bf2ad4dc300592604b6e32f8b8e2656" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0043.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "cb9a832ca6a4097b8ccc30d2108e1f7d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0044.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "56d181a6bb8713e6b2854fe8887faab6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0045.IMD.lz", + MediaType = MediaType.NEC_35_HD_15, + Sectors = 2400, + SectorSize = 512, + MD5 = "41aef7cff26aefda1add8d49c5b962c2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0046.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "2437c5f089f1cba3866b36360b016f16" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0047.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_8, + Sectors = 1280, + SectorSize = 512, + MD5 = "bdaa8f17373b265830fdf3a06b794367" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0048.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "629932c285478d0540ff7936aa008351" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0049.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "7a2abef5d4701e2e49abb05af8d4da50" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0050.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "e3507522c914264f44fb2c92c3170c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0051.IMD.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "824fe65dbb1a42b6b94f05405ef984f2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0052.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "1a8c2e78e7132cf9ba5d6c2b75876be0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0053.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "936b20bb0966fe693b4d5e2353e24846" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0054.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "803b01a0b440c2837d37c21308f30cd5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0055.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "aa0d31f914760cc4cde75479779ebed6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0057.IMD.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "5e413433c54f48978d281c6e66d1106e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0058.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "4fc28b0128543b2eb70f6432c4c8a980" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0059.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3528, + SectorSize = 512, + MD5 = "24a7459d080cea3a60d131b8fd7dc5d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0060.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3570, + SectorSize = 512, + MD5 = "2031b1e16ee2defc0d15f732f633df33" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0061.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 5100, + SectorSize = 512, + MD5 = "79e5f1fbd63b87c087d85904d45964e6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0063.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 6604, + SectorSize = 512, + MD5 = "1b2495a8f2274852b6fae80ae6fbff2f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0064.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 9180, + SectorSize = 512, + MD5 = "3a70851950ad06c20e3063ad6f128eef" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0065.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 10710, + SectorSize = 512, + MD5 = "98a91bbdbe8454cf64e20d0ec5c35017" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0066.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 10710, + SectorSize = 512, + MD5 = "666706f299a1362cb30f34a3a7f555be" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0067.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 13770, + SectorSize = 512, + MD5 = "2fa1eedb57fac492d6f6b71e2c0a079c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0068.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "3152c8e3544bbfaceff14b7522faf5af" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0069.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "5fc19ca552b6db957061e9a1750394d2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0070.IMD.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "d1e978b679c63a218c3f77a7ca2c7206" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0073.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "a33b46f042b78fe3d0b3c5dbb3908a93" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0074.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "565d3c001cbb532154aa5d3c65b2439c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0075.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "e60442c3ebd72c99bdd7545fdba59613" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0076.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "058a33a129539285c9b64010496af52f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0077.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "0726ecbc38965d30a6222c3e74cd1aa3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0078.IMD.lz", + MediaType = MediaType.NEC_35_HD_15, + Sectors = 2400, + SectorSize = 512, + MD5 = "c9a193837db7d8a5eb025eb41e8a76d7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0080.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c38d69ac88520f14fcc6d6ced22b065d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0081.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "91d51964e1e64ef3f6f622fa19aa833c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0082.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "db36d9651c952ff679ec33223c8db2d3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0083.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 2988, + SectorSize = 512, + MD5 = "5f1d98806309aee7f81de72e51e6d386" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0084.IMD.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "1207a1cc7ff73d4f74c8984b4e7db33f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0085.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "c97a3081fd25474b6b7945b8572d5ab8" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0086.IMD.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "31269ed6464302ae26d22b7c87bceb23" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0089.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 664, + SectorSize = 512, + MD5 = "8b31e5865611dbe01cc25b5ba2fbdf25" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0090.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 670, + SectorSize = 2048, + MD5 = "be278c00c3ec906756e7c8d544d8833d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0091.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 824, + SectorSize = 1024, + MD5 = "8e7fb60151e0002e8bae2fb2abe13a69" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0092.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 824, + SectorSize = 2048, + MD5 = "45e0b2a2925a95bbdcb43a914d70f91b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0093.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1483, + SectorSize = 1024, + MD5 = "082d7eda62eead1e20fd5a060997ff0f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0094.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 995, + SectorSize = 2048, + MD5 = "9b75a2fb671d1e7fa27434038b375e5e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0097.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1812, + SectorSize = 1024, + MD5 = "97c4f895d64ba196f19a3179e68ef693" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0098.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1160, + SectorSize = 2048, + MD5 = "c838233a380973de386e66ee0e0cbcc2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0099.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 164, + SectorSize = 16384, + MD5 = "dea88f91ca0f6d90626b4029286cb01f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0101.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 164, + SectorSize = 16384, + MD5 = "db82b15389e2ffa9a20f7251cc5cce5b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0103.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 164, + SectorSize = 16384, + MD5 = "638b56d7061a8156ee87166c78f06111" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0105.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "d40a99cb549fcfb26fcf9ef01b5dfca7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0106.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 410, + SectorSize = 512, + MD5 = "7b41dd9ca7eb32828960eb1417a6092a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0107.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "126dfd25363c076727dfaab03955c931" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0108.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 820, + SectorSize = 512, + MD5 = "e6492aac144f5f6f593b84c64680cf64" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0109.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "7973e569ed93beb1ece2e84a5ef3a8d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0110.IMD.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a793047503af08e83361427b3e2806e0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0111.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "f01541de322c8d6d7321084d7a245e7b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0112.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "ba6ec1652ff41bcc687aaf9c4e32dc18" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0113.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "7973e569ed93beb1ece2e84a5ef3a8d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0114.IMD.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a793047503af08e83361427b3e2806e0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0115.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "ba6ec1652ff41bcc687aaf9c4e32dc18" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0116.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "6631b66fdfd89319323771c41334c7ba" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0117.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3240, + SectorSize = 512, + MD5 = "4b5e2c9599bb7861b3b52bec00d81278" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0120.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "7d36aee5a3071ff75b979f3acb649c40" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0121.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "0ccb62039363ab544c69eca229a17fae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0122.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "7851d31fad9302ff45d3ded4fba25387" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0123.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "915b08c82591e8488320e001b7303b6d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0124.IMD.lz", + MediaType = MediaType.NEC_35_HD_15, + Sectors = 2400, + SectorSize = 512, + MD5 = "5e5ea6fe9adf842221fdc60e56630405" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0125.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "a22e254f7e3526ec30dc4915a19fcb52" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0126.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ddc6c1200c60e9f7796280f50c2e5283" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0147.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6efa72a33021d5051546c3e0dd4c3c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0148.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "8b5acfd14818ff9556d3d81361ce4862" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0149.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 200, + SectorSize = 1024, + MD5 = "cf42d08469548a31caf2649a1d08a85f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0150.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 1024, + MD5 = "62745e10683cf2ec1dac177535459891" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0151.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "cf42d08469548a31caf2649a1d08a85f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0153.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "298c377de52947c472a85d281b6d3d4d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0154.IMD.lz", + MediaType = MediaType.RX50, + Sectors = 800, + SectorSize = 512, + MD5 = "387373301cf6c15d61eec9bab18d9b6a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0155.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 848, + SectorSize = 512, + MD5 = "83b66a88d92cbf2715343016e4108211" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0157.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "20e047061b6ca4059288deed8c9dd247" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0158.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 256, + MD5 = "8b5acfd14818ff9556d3d81361ce4862" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0159.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_40, + Sectors = 640, + SectorSize = 256, + MD5 = "6efa72a33021d5051546c3e0dd4c3c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0160.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 256, + MD5 = "8b5acfd14818ff9556d3d81361ce4862" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0162.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "e63014a4299f52f22e6e2c9609f51979" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0163.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "be05d1ff10ef8b2220546c4db962ac9e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0164.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 820, + SectorSize = 512, + MD5 = "32823b9009c99b6711e89336ad03ec7f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0166.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1c8b03a8550ed3e70e1c78316aa445aa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0167.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 960, + SectorSize = 1024, + MD5 = "efbc62e2ecddc15241aa0779e078d478" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0168.IMD.lz", + MediaType = MediaType.NEC_35_HD_15, + Sectors = 2400, + SectorSize = 512, + MD5 = "0bdf9130c07bb5d558a4705249f949d0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0169.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2dafeddaa99e7dc0db5ef69e128f9c8e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0170.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "589ae671a19e78ffcba5032092c4c0d5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0171.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 2988, + SectorSize = 512, + MD5 = "cf0c71b65b56cb6b617d29525bd719dd" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0173.IMD.lz", + MediaType = MediaType.DOS_35_SS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "028769dc0abefab1740cc309432588b6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0174.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "152023525154b45ab26687190bac94db" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0175.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "db38ecd93f28dd065927fed21917eed5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0176.IMD.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "716262401bc69f2f440a9c156c21c9e9" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0177.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "83213865ca6a40c289b22324a32a2608" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0180.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "f206c0caa4e0eda37233ab6e89ab5493" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0181.IMD.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "554492a7b41f4cd9068a3a2b70eb0e5f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0182.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3402, + SectorSize = 512, + MD5 = "865ad9072cb6c7458f7d86d7e9368622" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0183.IMD.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "2461e458438f0033bc5811fd6958ad02" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0184.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1760, + SectorSize = 1024, + MD5 = "be75996696aa70ee9338297137556d83" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0185.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1120, + SectorSize = 2048, + MD5 = "5a0f2bad567464288ec7ce935672870a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0186.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 320, + SectorSize = 4096, + MD5 = "69f9f0b5c1fc00a8f398151df9d93ab5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0191.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 626, + SectorSize = 1024, + MD5 = "fb144f79239f6f5f113b417700c2d278" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0192.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 670, + SectorSize = 2048, + MD5 = "6a936d2ecb771e37b856bdad16822c32" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0194.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 356, + SectorSize = 4096, + MD5 = "e283af9d280efaf059c816b6a2c9206b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0196.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 960, + SectorSize = 1024, + MD5 = "e4625838148a4b7c6580c697cd47362c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0197.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_40, + Sectors = 640, + SectorSize = 256, + MD5 = "74f71ef3978fefce64689e8be18359ba" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0198.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "5c4e555b29a264f2a81f8a2b58bfc442" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0199.IMD.lz", + MediaType = MediaType.ACORN_525_DS_DD, + Sectors = 2560, + SectorSize = 256, + MD5 = "64ae73ac812bbf473a5d443de4d5dfbf" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0200.IMD.lz", + MediaType = MediaType.ACORN_35_DS_HD, + Sectors = 1600, + SectorSize = 1024, + MD5 = "a481bd5a8281dad089edbef390c136ed" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0201.IMD.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0202.IMD.lz", + MediaType = MediaType.ACORN_35_DS_HD, + Sectors = 1600, + SectorSize = 1024, + MD5 = "a481bd5a8281dad089edbef390c136ed" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0203.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 1024, + MD5 = "8a16a3008739516fc3ba4c878868d056" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0204.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "46fce47baf08c6f093f2c355a603543d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0205.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "ee73a5d5c8dfac236baf7b99811696f9" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0206.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "b3bdbc62fb96e3893dac3bccbde59ab0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0207.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "02942b9dc9d3b1bc9335b73c99e6da2e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0208.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 480, + SectorSize = 1024, + MD5 = "dfc9e8c7bd3d50f404d6f0b6ada20b0c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0209.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0210.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0211.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "647f14749f59be471aac04a71a079a64" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0212.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "517cdd5e42a4673f733d1aedfb46770f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0213.IMD.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "6ad92e9522e4ba902c01beecb5943bb1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0214.IMD.lz", + MediaType = MediaType.ACORN_35_DS_HD, + Sectors = 1600, + SectorSize = 1024, + MD5 = "9a1a7d8f53fcfad7603fe585c6c7214c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0215.IMD.lz", + MediaType = MediaType.ACORN_35_DS_HD, + Sectors = 1600, + SectorSize = 1024, + MD5 = "2a7a9b48551fd4d8b166bcfcbe1ca132" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0216.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "40199611e6e75bbc37ad6c52a5b77eae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0218.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 5100, + SectorSize = 512, + MD5 = "8fa0ffd7481a94b9e7c4006599329250" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0219.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 9180, + SectorSize = 512, + MD5 = "3fa51592c5a65b7e4915a8e22d523ced" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0220.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 13770, + SectorSize = 512, + MD5 = "2153339750c119627bab75bd0bf7a193" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0221.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 5120, + SectorSize = 256, + MD5 = "f92b2e52259531d50bfb403dc1274ab1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0222.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0223.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1600, + SectorSize = 256, + MD5 = "a5dc382d75ec46434b313e289c281d8c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0224.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1152, + SectorSize = 256, + MD5 = "8335b175c352352e19f9008ad67d1375" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0225.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1056, + SectorSize = 256, + MD5 = "447efa963c19474508c503d037a3b429" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0226.IMD.lz", + MediaType = MediaType.ACORN_525_DS_DD, + Sectors = 2560, + SectorSize = 256, + MD5 = "b7669fa76ecf5634313675b001bb7fa2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0227.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 5120, + SectorSize = 256, + MD5 = "676f1bc7764899912ab6ad8257c63a16" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0228.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1120, + SectorSize = 256, + MD5 = "d72e86324d4d518996f6671751614800" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0232.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 621, + SectorSize = 512, + MD5 = "b76bd117ce24d933cdefe09b1de2164a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0233.IMD.lz", + MediaType = MediaType.ATARI_525_SD, + Sectors = 720, + SectorSize = 128, + MD5 = "a769b7642a222d97a56c46f53833fafa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0234.IMD.lz", + MediaType = MediaType.ACORN_525_DS_DD, + Sectors = 2560, + SectorSize = 256, + MD5 = "dfa733d034bb1f83d694dfa217910081" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0235.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1600, + SectorSize = 256, + MD5 = "8260ee01a245aec2de162ee0d85f4b7f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0236.IMD.lz", + MediaType = MediaType.ACORN_525_SS_SD_80, + Sectors = 800, + SectorSize = 256, + MD5 = "261c7a5a4298e9f050928dd770097c77" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0238.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "a47068ff73dfbea58c25daa5b9132a9e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0240.IMD.lz", + MediaType = MediaType.ATARI_525_DD, + Sectors = 720, + SectorSize = 256, + MD5 = "d1ab955f0961ab94e6cf69f78134a84b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0241.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 714, + SectorSize = 256, + MD5 = "8b62738f15bcc916a668eaa67eec86e7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0242.IMD.lz", + MediaType = MediaType.NEC_35_HD_8, + Sectors = 1232, + SectorSize = 1024, + MD5 = "87a432496cb23b5c2299545500df3553" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0243.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 256, + MD5 = "9866ab8e58fa4be25010184aec4ad3aa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0244.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1280, + SectorSize = 256, + MD5 = "9dab329ae098b29889ab08278de38f95" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0245.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "0d71b4952dadbfb1061acc1f4640c787" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0246.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "af7ac6b5b9d2d57dad22dbb64ef7de38" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0247.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "f8f81f945aaad6fbfe7e2db1905302c1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0248.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "f6f81c75b5ba45d91c1886c6dda9caee" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0250.IMD.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "d4809467b321991a9c772ad87fc8aa19" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0251.IMD.lz", + MediaType = MediaType.ACORN_525_DS_DD, + Sectors = 2560, + SectorSize = 256, + MD5 = "d075e50705f4ddca7ba4dbc981ec1176" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0252.IMD.lz", + MediaType = MediaType.ACORN_525_SS_DD_80, + Sectors = 1280, + SectorSize = 256, + MD5 = "9f86480c86bae33a5b444e4a7ed55048" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0253.IMD.lz", + MediaType = MediaType.ACORN_35_DS_DD, + Sectors = 800, + SectorSize = 1024, + MD5 = "629971775d902d1cc2658fc76f57e072" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0254.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "5dc0d482a773043d8683a84c8220df95" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0255.IMD.lz", + MediaType = MediaType.ACORN_525_DS_DD, + Sectors = 2544, + SectorSize = 256, + MD5 = "1718d8acd18fce3c5c1a7a074ed8ac29" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0258.IMD.lz", + MediaType = MediaType.NEC_35_HD_8, + Sectors = 1232, + SectorSize = 1024, + MD5 = "855943f9caecdcce9b06f0098d773c6b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0262.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "5ac0a9fc7337f761098f816359b0f6f7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0263.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1ea6ec8e663218b1372048f6e25795b5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0264.IMD.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "77a1167b1b9043496e32b8578cde0ff0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0265.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "4b07d760d65f3f0f8ffa5f2b81cee907" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0266.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "32c044c5c2b0bd13806149a759c14935" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0267.IMD.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "8752095abc13dba3f3467669da333891" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0268.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "aece7cd34bbba3e75307fa70404d9d30" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0269.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "5289afb16a6e4a33213e3bcca56c6230" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0270.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3320, + SectorSize = 512, + MD5 = "1aef0a0ba233476db6567878c3c2b266" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0271.IMD.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "b96596711f4d2ee85dfda0fe3b9f26c3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0272.IMD.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "a4f461af7fda5e93a7ab63fcbb7e7683" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0273.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "8f7f7099d4475f6631fcf0a79b031d61" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0280.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "4feeaf4b4ee5dad85db727fbbda4b6d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0281.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "3c77ca681df78e4cd7baa162aa9b0859" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0282.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "51da1f86c49657ffdb367bb2ddeb7990" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0283.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "b81a4987f89936630b8ebc62e4bbce6e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0284.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "f76f92dd326c99c5efad5ee58daf72e1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0285.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "b6f2c10e42908e334025bc4ffd81e771" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0287.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "f2f409ea2a62a7866fd2777cc4fc9739" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0288.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1494, + SectorSize = 512, + MD5 = "3e441d69cec5c3169274e1379de4af4b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0289.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "30a93f30dd4485c6fc037fe0775d3fc7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0290.IMD.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "e0caf02cce5597c98313bcc480366ec7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0291.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "4af4904d2b3c815da7bef7049209f5eb" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0299.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "39bf5a98bcb2185d855ac06378febcfa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0300.IMD.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "dc20055b6e6fd6f8e1114d4be2effeed" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0301.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "56af9256cf71d5aac5fd5d363674bc49" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0302.IMD.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "bbba1e2d1418e05c3a4e7b4d585d160b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0303.IMD.lz", + MediaType = MediaType.NEC_35_HD_15, + Sectors = 2400, + SectorSize = 512, + MD5 = "bca3a045e81617f7f5ebb5a8818eac47" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0304.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "a296663cb8e75e94603221352f29cfff" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0305.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ecda36ebf0e1100233cb0ec722c18583" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0307.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "cef2f4fe9b1a32d5c0544f814e634264" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0308.IMD.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "bbe58e26b8f8f822cd3edfd37a4e4924" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0311.IMD.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "b9b6ebdf711364c979de7cf70c3a438a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0314.IMD.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "d37424f367f545acbb397f2bed766843" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0316.IMD.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "9963dd6f19ce6bd56eabeccdfbbd821a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0317.IMD.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "acf6604559ae8217f7869823e2429024" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0318.IMD.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "23bf2139cdfdc4c16db058fd31ea6481" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0319.IMD.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "fa26adda0415f02057b113ad29c80c8d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0320.IMD.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "4f2a8d036fefd6c6c88d99eda3aa12b7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0322.IMD.lz", + MediaType = MediaType.Unknown, + Sectors = 1386, + SectorSize = 512, + MD5 = "e794a3ffa4069ea999fdf7146710fa9e" + }, + new BlockImageTestExpected + { + TestFile = "md1dd_rx01.imd.lz", + MediaType = MediaType.RX01, + Sectors = 2002, + SectorSize = 128, + MD5 = "5b4e36d92b180c3845387391cb5a1c64" + }, + new BlockImageTestExpected + { + TestFile = "md1qd_rx50.imd.lz", + MediaType = MediaType.RX50, + Sectors = 800, + SectorSize = 512, + MD5 = "ccd4431139755c58f340681f63510642" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_nec.imd.lz", + MediaType = MediaType.NEC_35_HD_8, + Sectors = 1232, + SectorSize = 1024, + MD5 = "fd54916f713d01b670c1a5df5e74a97f" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2mgui.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 164, + SectorSize = 16384, + MD5 = "623b224f63d65ae3b6c3ddadadf3b836" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2m.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 987, + SectorSize = 1024, + MD5 = "08b530d8c25d785b20c93a1a7a6468a0" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.imd.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.imd.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "db9cfb6eea18820b7a7e0b5b45594471" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.imd.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1ff7649b679ba22ff20d39ff717dbec8" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.imd.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2mgui.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 164, + SectorSize = 16384, + MD5 = "adafed1fac3d1a181380bdb590249385" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 1812, + SectorSize = 1024, + MD5 = "c741c78eecd673f8fc49e77459871940" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.imd.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "03c2af6a8ebf4bd6f530335de34ae5dd" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.imd.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "9dea1e119a73a21a38d134f36b2e5564" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "dbd52e9e684f97d9e2292811242bb24e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.imd.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "b4a602f67903c46eef62addb0780aa56" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 670, + SectorSize = 2048, + MD5 = "71194f8dba31d29780bd0a6ecee5ab2b" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/IsoBuster/Cuesheet.cs b/Aaru.Tests/Images/IsoBuster/Cuesheet.cs index 1eaaa8250..92feb4353 100644 --- a/Aaru.Tests/Images/IsoBuster/Cuesheet.cs +++ b/Aaru.Tests/Images/IsoBuster/Cuesheet.cs @@ -37,829 +37,864 @@ namespace Aaru.Tests.Images.IsoBuster [TestFixture] public class Cuesheet : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "gigarec.cue", "jaguarcd.cue", "pcengine.cue", "pcfx.cue", "report_cdr.cue", "report_cdrom.cue", - "report_cdrw.cue", "test_audiocd_cdtext.cue", "test_enhancedcd.cue", "test_incd_udf200_finalized.cue", - "test_multi_karaoke_sampler.cue", "test_multiple_indexes.cue", "test_multisession.cue", - "test_multisession_dvd+r.cue", "test_multisession_dvd-r.cue", "test_videocd.cue" - }; - - public override ulong[] _sectors => new ulong[] - { - // gigarec.cue - 469652, - - // jaguarcd.cue - 243587, - - // pcengine.cue - 160956, - - // pcfx.cue - 246680, - - // report_cdr.cue - 254265, - - // report_cdrom.cue - 254265, - - // report_cdrw.cue - 308224, - - // test_audiocd_cdtext.cue - 277696, - - // test_enhancedcd.cue - 59206, - - // test_incd_udf200_finalized.cue - 350134, - - // test_multi_karaoke_sampler.cue - 329158, - - // test_multiple_indexes.cue - 65536, - - // test_multisession.cue - 51168, - - // test_multisession_dvd+r.cue - 230624, - - // test_multisession_dvd-r.cue - 257264, - - // test_videocd.cue - 48794 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // gigarec.cue - // This is a mistake by IsoBuster - MediaType.CDROM, - - // jaguarcd.cue - MediaType.CDDA, - - // pcengine.cue - MediaType.CD, - - // pcfx.cue - MediaType.CD, - - // report_cdr.cue - // This is a mistake by IsoBuster - MediaType.CDROM, - - // report_cdrom.cue - MediaType.CDROM, - - // report_cdrw.cue - MediaType.CDRW, - - // test_audiocd_cdtext.cue - // This is a mistake by IsoBuster - MediaType.CDDA, - - // test_enhancedcd.cue - // This is a mistake by IsoBuster - MediaType.CDPLUS, - - // test_incd_udf200_finalized.cue - // This is a mistake by IsoBuster - MediaType.CDROMXA, - - // test_multi_karaoke_sampler.cue - // This is a mistake by IsoBuster - MediaType.CDROMXA, - - // test_multiple_indexes.cue - // This is a mistake by IsoBuster - MediaType.CDDA, - - // test_multisession.cue - // This is a mistake by IsoBuster - MediaType.CDROMXA, - - // test_multisession_dvd+r.cue - // This is a mistake by IsoBuster - MediaType.DVDPRDL, - - // test_multisession_dvd-r.cue - MediaType.DVDR, - - // test_videocd.cue - // This is a mistake by IsoBuster - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // gigarec.cue - "b7659466b925296a36390c58c480e4bb", - - // jaguarcd.cue - "e20824bc6258d8434096c84548f1c4cf", - - // pcengine.cue - "989122b6c1f0fc135ee6d481bc347295", - - // pcfx.cue - "0034c2e54afd76387797c7221c4a054b", - - // report_cdr.cue - "aacfe792d28a17f641c7218ccd35f5ff", - - // report_cdrom.cue - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.cue - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // test_audiocd_cdtext.cue - "b236def899758bd04b8a3105b47126db", - - // test_enhancedcd.cue - "04b7bcd252635eaa8e6b21c1597d44ba", - - // test_incd_udf200_finalized.cue - "7b3e4a952c369cd4837cee40f1a567f2", - - // test_multi_karaoke_sampler.cue - "546f85b167c61c2e80dec709f4a4bfb5", - - // test_multiple_indexes.cue - "4bc4eb89184a69d902ecc1f2745ecf32", - - // test_multisession.cue - "671f5b747692780a979b3c4b59b39597", - - // test_multisession_dvd+r.cue - "020993315e49ab0d36bc7248819162ea", - - // test_multisession_dvd-r.cue - "dff8f2107a4ea9633a88ce38ff609b8e", - - // test_videocd.cue - "22d646f182b79efcf8915fd01f484391" - }; - - public override string[] _longMd5S => new[] - { - // gigarec.cue - "51bf2c54fee363520906709cc42a710a", - - // jaguarcd.cue - "e20824bc6258d8434096c84548f1c4cf", - - // pcengine.cue - "2f58bc40012040bd3c9e4ae56fbbfad3", - - // pcfx.cue - "77a9dcd8f5a69d939e076e45602923e0", - - // report_cdr.cue - "73e38276225ec2d26c0ace10d42513e1", - - // report_cdrom.cue - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw.cue - "3af5f943ddb9427d9c63a4ce3b704db9", - - // test_audiocd_cdtext.cue - "b236def899758bd04b8a3105b47126db", - - // test_enhancedcd.cue - "b480c86b959c246294a2cc4ad3180cbf", - - // test_incd_udf200_finalized.cue - "d6555969dd70fb2772cd5b979c6fa284", - - // test_multi_karaoke_sampler.cue - "82e40f2e2e36a1ec2eeb89ea154aa7f3", - - // test_multiple_indexes.cue - "4bc4eb89184a69d902ecc1f2745ecf32", - - // test_multisession.cue - "4171f86df9f3b8c277958324a48c54d8", - - // test_multisession_dvd+r.cue - "020993315e49ab0d36bc7248819162ea", - - // test_multisession_dvd-r.cue - "dff8f2107a4ea9633a88ce38ff609b8e", - - // test_videocd.cue - "72243676a71ff7a3161dce368d3ddc71" - }; - - public override string[] _subchannelMd5S => new string[] - { - // gigarec.cue - null, - - // jaguarcd.cue - null, - - // pcengine.cue - null, - - // pcfx.cue - null, - - // report_cdr.cue - null, - - // report_cdrom.cue - null, - - // report_cdrw.cue - null, - - // test_audiocd_cdtext.cue - null, - - // test_enhancedcd.cue - null, - - // test_incd_udf200_finalized.cue - null, - - // test_multi_karaoke_sampler.cue - null, - - // test_multiple_indexes.cue - null, - - // test_multisession.cue - null, - - // test_multisession_dvd+r.cue - null, - - // test_multisession_dvd-r.cue - null, - - // test_videocd.cue - null - }; - - public override int[] _tracks => new[] - { - // gigarec.cue - 1, - - // jaguarcd.cue - 11, - - // pcengine.cue - 16, - - // pcfx.cue - 8, - - // report_cdr.cue - 1, - - // report_cdrom.cue - 1, - - // report_cdrw.cue - 1, - - // test_audiocd_cdtext.cue - 11, - - // test_enhancedcd.cue - 3, - - // test_incd_udf200_finalized.cue - 1, - - // test_multi_karaoke_sampler.cue - 16, - - // test_multiple_indexes.cue - 5, - - // test_multisession.cue - 4, - - // test_multisession_dvd+r.cue - 2, - - // test_multisession_dvd-r.cue - 2, - - // test_videocd.cue - 2 - }; - - public override int[][] _trackSessions => new[] - { - // gigarec.cue - new[] - { - 1 - }, - - // jaguarcd.cue - new[] - { - 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // pcengine.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.cue - new[] - { - 1 - }, - - // report_cdrom.cue - new[] - { - 1 - }, - - // report_cdrw.cue - new[] - { - 1 - }, - - // test_audiocd_cdtext.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_enhancedcd.cue - new[] - { - 1, 1, 2 - }, - - // test_incd_udf200_finalized.cue - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.cue - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.cue - new[] - { - 1, 2, 3, 4 - }, - - // test_multisession_dvd+r.cue - new[] - { - 1, 2 - }, - - // test_multisession_dvd-r.cue - new[] - { - 1, 2 - }, - - // test_videocd.cue - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // gigarec.cue - new ulong[] - { - 0 - }, - - // jaguarcd.cue - new ulong[] - { - 0, 27490, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.cue - new ulong[] - { - 0, 3440, 38614, 47217, 53501, 61819, 68563, 75397, 83130, 86481, 91267, 99274, 106693, 112238, 120270, - 126229 - }, - - // pcfx.cue - new ulong[] - { - 0, 4245, 4909, 5941, 42059, 220795, 225646, 235498 - }, - - // report_cdr.cue - new ulong[] - { - 0 - }, - - // report_cdrom.cue - new ulong[] - { - 0 - }, - - // report_cdrw.cue - new ulong[] - { - 0 - }, - - // test_audiocd_cdtext.cue - new ulong[] - { - 0, 29752, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_enhancedcd.cue - new ulong[] - { - 0, 14255, 40203 - }, - - // test_incd_udf200_finalized.cue - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 0, 1737, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.cue - new ulong[] - { - 0, 4654, 13875, 41185, 54989 - }, - - // test_multisession.cue - new ulong[] - { - 0, 19383, 32710, 45228 - }, - - // test_multisession_dvd+r.cue - new ulong[] - { - 0, 23914 - }, - - // test_multisession_dvd-r.cue - new ulong[] - { - 0, 235098 - }, - - // test_videocd.cue - new ulong[] - { - 0, 1100 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // gigarec.cue - new ulong[] - { - 469651 - }, - - // jaguarcd.cue - new ulong[] - { - 16239, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.cue - new ulong[] - { - 3589, 38613, 47216, 53500, 61818, 68562, 75396, 83129, 86480, 91266, 99273, 106692, 112237, 120269, - 126228, 160955 - }, - - // pcfx.cue - new ulong[] - { - 4394, 4908, 5940, 42058, 220794, 225645, 235497, 246679 - }, - - // report_cdr.cue - new ulong[] - { - 254264 - }, - - // report_cdrom.cue - new ulong[] - { - 254264 - }, - - // report_cdrw.cue - new ulong[] - { - 308223 - }, - - // test_audiocd_cdtext.cue - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_enhancedcd.cue - new ulong[] - { - 14254, 28952, 59205 - }, - - // test_incd_udf200_finalized.cue - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.cue - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.cue - new ulong[] - { - 8132, 25959, 38477, 51167 - }, - - // test_multisession_dvd+r.cue - new ulong[] - { - 24063, 230623 - }, - - // test_multisession_dvd-r.cue - new ulong[] - { - 235247, 257263 - }, - - // test_videocd.cue - new ulong[] - { - 1099, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // gigarec.cue - new ulong[] - { - 150 - }, - - // jaguarcd.cue - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.cue - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.cue - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.cue - new ulong[] - { - 150 - }, - - // report_cdrom.cue - new ulong[] - { - 150 - }, - - // report_cdrw.cue - new ulong[] - { - 150 - }, - - // test_audiocd_cdtext.cue - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_enhancedcd.cue - new ulong[] - { - 150, 150, 150 - }, - - // test_incd_udf200_finalized.cue - new ulong[] - { - 150 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_multiple_indexes.cue - new ulong[] - { - 150, 0, 0, 0, 150 - }, - - // test_multisession.cue - new ulong[] - { - 150, 150, 150, 150 - }, - - // test_multisession_dvd+r.cue - new ulong[] - { - 0, 0 - }, - - // test_multisession_dvd-r.cue - new ulong[] - { - 0, 0 - }, - - // test_videocd.cue - new ulong[] - { - 150, 152 - } - }; - - public override byte[][] _trackFlags => new[] - { - // gigarec.cue - new byte[] - { - 4 - }, - - // jaguarcd.cue - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.cue - new byte[] - { - 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // pcfx.cue - new byte[] - { - 0, 4, 4, 4, 4, 0, 0, 0 - }, - - // report_cdr.cue - new byte[] - { - 4 - }, - - // report_cdrom.cue - new byte[] - { - 4 - }, - - // report_cdrw.cue - new byte[] - { - 4 - }, - - // test_audiocd_cdtext.cue - // This is an error from IsoBuster, should be 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_enhancedcd.cue - new byte[] - { - 0, 0, 4 - }, - - // test_incd_udf200_finalized.cue - // This is an error from IsoBuster, should be 7 - new byte[] - { - 4 - }, - - // test_multi_karaoke_sampler.cue - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.cue - // This is an error from IsoBuster, should be 2, 0, 0, 8, 1 - new byte[] - { - 0, 0, 0, 0, 0 - }, - - // test_multisession.cue - new byte[] - { - 4, 4, 4, 4 - }, - - // test_multisession_dvd+r.cue - null, - - // test_multisession_dvd-r.cue - null, - - // test_videocd.cue - new byte[] - { - 4, 4 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "IsoBuster", "Cuesheet"); public override IMediaImage _plugin => new CdrWin(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "gigarec.cue", + MediaType = MediaType.CDROM, + Sectors = 469652, + MD5 = "b7659466b925296a36390c58c480e4bb", + LongMD5 = "51bf2c54fee363520906709cc42a710a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 469651, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.cue", + MediaType = MediaType.CDDA, + Sectors = 243587, + MD5 = "e20824bc6258d8434096c84548f1c4cf", + LongMD5 = "e20824bc6258d8434096c84548f1c4cf", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16239, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 27490, + End = 28236, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.cue", + MediaType = MediaType.CD, + Sectors = 160956, + MD5 = "989122b6c1f0fc135ee6d481bc347295", + LongMD5 = "2f58bc40012040bd3c9e4ae56fbbfad3", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3589, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3440, + End = 38613, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38614, + End = 47216, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47217, + End = 53500, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53501, + End = 61818, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61819, + End = 68562, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68563, + End = 75396, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75397, + End = 83129, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 83130, + End = 86480, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86481, + End = 91266, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 91267, + End = 99273, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99274, + End = 106692, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106693, + End = 112237, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112238, + End = 120269, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 120270, + End = 126228, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126229, + End = 160955, + Pregap = 0, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.cue", + MediaType = MediaType.CD, + Sectors = 246680, + MD5 = "0034c2e54afd76387797c7221c4a054b", + LongMD5 = "77a9dcd8f5a69d939e076e45602923e0", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4394, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4245, + End = 4908, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4909, + End = 5940, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5941, + End = 42058, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 42059, + End = 220794, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220795, + End = 225645, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225646, + End = 235497, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235498, + End = 246679, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.cue", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "aacfe792d28a17f641c7218ccd35f5ff", + LongMD5 = "73e38276225ec2d26c0ace10d42513e1", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.cue", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.cue", + MediaType = MediaType.CDRW, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.cue", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "b236def899758bd04b8a3105b47126db", + LongMD5 = "b236def899758bd04b8a3105b47126db", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29752, + End = 65183, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.cue", + MediaType = MediaType.CDPLUS, + Sectors = 59206, + MD5 = "04b7bcd252635eaa8e6b21c1597d44ba", + LongMD5 = "b480c86b959c246294a2cc4ad3180cbf", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14254, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14255, + End = 28952, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 40203, + End = 59205, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.cue", + MediaType = MediaType.CDROMXA, + Sectors = 350134, + MD5 = "7b3e4a952c369cd4837cee40f1a567f2", + LongMD5 = "d6555969dd70fb2772cd5b979c6fa284", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.cue", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "546f85b167c61c2e80dec709f4a4bfb5", + LongMD5 = "82e40f2e2e36a1ec2eeb89ea154aa7f3", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32748, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.cue", + MediaType = MediaType.CDDA, + Sectors = 65536, + MD5 = "4bc4eb89184a69d902ecc1f2745ecf32", + LongMD5 = "4bc4eb89184a69d902ecc1f2745ecf32", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4654, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.cue", + MediaType = MediaType.CDROMXA, + Sectors = 51168, + MD5 = "671f5b747692780a979b3c4b59b39597", + LongMD5 = "4171f86df9f3b8c277958324a48c54d8", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19383, + End = 25959, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32710, + End = 38477, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45228, + End = 51167, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd+r.cue", + MediaType = MediaType.DVDPRDL, + Sectors = 230624, + MD5 = "020993315e49ab0d36bc7248819162ea", + LongMD5 = "020993315e49ab0d36bc7248819162ea", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 24063, + Pregap = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 23914, + End = 230623, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd-r.cue", + MediaType = MediaType.DVDR, + Sectors = 257264, + MD5 = "dff8f2107a4ea9633a88ce38ff609b8e", + LongMD5 = "dff8f2107a4ea9633a88ce38ff609b8e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 235247, + Pregap = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 235098, + End = 257263, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.cue", + MediaType = MediaType.CDROMXA, + Sectors = 48794, + MD5 = "22d646f182b79efcf8915fd01f484391", + LongMD5 = "72243676a71ff7a3161dce368d3ddc71", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1099, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1100, + End = 48793, + Pregap = 152, + Flags = 4 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/KryoFlux/Raw.cs b/Aaru.Tests/Images/KryoFlux/Raw.cs index d847bd655..1534d7c1c 100644 --- a/Aaru.Tests/Images/KryoFlux/Raw.cs +++ b/Aaru.Tests/Images/KryoFlux/Raw.cs @@ -37,98 +37,60 @@ namespace Aaru.Tests.Images.KryoFlux [TestFixture] public class Raw : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "mf1dd_gcr_s0.img.lz", "mf2dd_acorn.img.lz", "mf2dd_amiga.adf.lz", "mf2dd_fdformat_820.img.lz", - "mf2dd_gcr.img.lz", "mf2hd_fdformat_172.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // mf1dd_gcr_s0.img.lz - 800, - - // mf2dd_acorn.img.lz - 1600, - - // mf2dd_amiga.adf.lz - 1760, - - // mf2dd_fdformat_820.img.lz - 1640, - - // mf2dd_gcr.img.lz - 1600, - - // mf2hd_fdformat_172.img.lz - 3444 - }; - - public override uint[] _sectorSize => new uint[] - { - // mf1dd_gcr_s0.img.lz - 512, - - // mf2dd_acorn.img.lz - 512, - - // mf2dd_amiga.adf.lz - 512, - - // mf2dd_fdformat_820.img.lz - 512, - - // mf2dd_gcr.img.lz - 512, - - // mf2hd_fdformat_172.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // mf1dd_gcr_s0.img.lz - MediaType.AppleSonySS, - - // mf2dd_acorn.img.lz - MediaType.AppleSonyDS, - - // mf2dd_amiga.adf.lz - MediaType.CBM_AMIGA_35_DD, - - // mf2dd_fdformat_820.img.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_gcr.img.lz - MediaType.AppleSonyDS, - - // mf2hd_fdformat_172.img.lz - MediaType.FDFORMAT_35_HD - }; - - public override string[] _md5S => new[] - { - // mf1dd_gcr_s0.img.lz - "c1b868482a064686d2a592f3246c2958", - - // mf2dd_acorn.img.lz - "2626f65b49ec085253c41fa2e2a9e788", - - // mf2dd_amiga.adf.lz - "7db6730656efb22695cdf0a49e2674c9", - - // mf2dd_fdformat_820.img.lz - "9d978dff1196b456b8372d78e6b17970", - - // mf2dd_gcr.img.lz - "ee038347920d088c14f79e6c5fc241c9", - - // mf2hd_fdformat_172.img.lz - "9dea1e119a73a21a38d134f36b2e5564" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "KryoFlux", "raw"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "mf1dd_gcr_s0.img.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "c1b868482a064686d2a592f3246c2958" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_acorn.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "2626f65b49ec085253c41fa2e2a9e788" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_amiga.adf.lz", + MediaType = MediaType.CBM_AMIGA_35_DD, + Sectors = 1760, + SectorSize = 512, + MD5 = "7db6730656efb22695cdf0a49e2674c9" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "9d978dff1196b456b8372d78e6b17970" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_gcr.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "ee038347920d088c14f79e6c5fc241c9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.img.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "9dea1e119a73a21a38d134f36b2e5564" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Lisa/Raw.cs b/Aaru.Tests/Images/Lisa/Raw.cs index e7acb7feb..38c0cb257 100644 --- a/Aaru.Tests/Images/Lisa/Raw.cs +++ b/Aaru.Tests/Images/Lisa/Raw.cs @@ -37,98 +37,60 @@ namespace Aaru.Tests.Images.Lisa [TestFixture] public class Raw : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "profile_los202.raw.lz", "profile_los31.raw.lz", "profile_macworksxl3.raw.lz", "profile_uniplus.raw.lz", - "profile_xenix_10Mb.raw.lz", "profile_xenix.raw.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // profile_los202.raw.lz - 10108, - - // profile_los31.raw.lz - 10108, - - // profile_macworksxl3.raw.lz - 10108, - - // profile_uniplus.raw.lz - 20216, - - // profile_xenix_10Mb.raw.lz - 20216, - - // profile_xenix.raw.lz - 10108 - }; - - public override uint[] _sectorSize => new uint[] - { - // profile_los202.raw.lz - 512, - - // profile_los31.raw.lz - 512, - - // profile_macworksxl3.raw.lz - 512, - - // profile_uniplus.raw.lz - 512, - - // profile_xenix_10Mb.raw.lz - 512, - - // profile_xenix.raw.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // profile_los202.raw.lz - MediaType.GENERIC_HDD, - - // profile_los31.raw.lz - MediaType.GENERIC_HDD, - - // profile_macworksxl3.raw.lz - MediaType.GENERIC_HDD, - - // profile_uniplus.raw.lz - MediaType.GENERIC_HDD, - - // profile_xenix_10Mb.raw.lz - MediaType.GENERIC_HDD, - - // profile_xenix.raw.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // profile_los202.raw.lz - "24001116ee48e6545e4514b3ea18b4e2", - - // profile_los31.raw.lz - "2e328345fda18a97721c4a35cb2bb5bb", - - // profile_macworksxl3.raw.lz - "78cdf7207060bf05c272cb8b22fc6449", - - // profile_uniplus.raw.lz - "fc729677df4ba92da98137058aa1c298", - - // profile_xenix_10Mb.raw.lz - "e98bf459bd20cfb466d92a91086cdaa7", - - // profile_xenix.raw.lz - "dd146bc14be87d5ad98b961dd462f469" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Lisa emulators", "raw"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "profile_los202.raw.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10108, + SectorSize = 512, + MD5 = "24001116ee48e6545e4514b3ea18b4e2" + }, + new BlockImageTestExpected + { + TestFile = "profile_los31.raw.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10108, + SectorSize = 512, + MD5 = "2e328345fda18a97721c4a35cb2bb5bb" + }, + new BlockImageTestExpected + { + TestFile = "profile_macworksxl3.raw.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10108, + SectorSize = 512, + MD5 = "78cdf7207060bf05c272cb8b22fc6449" + }, + new BlockImageTestExpected + { + TestFile = "profile_uniplus.raw.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 20216, + SectorSize = 512, + MD5 = "fc729677df4ba92da98137058aa1c298" + }, + new BlockImageTestExpected + { + TestFile = "profile_xenix_10Mb.raw.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 20216, + SectorSize = 512, + MD5 = "e98bf459bd20cfb466d92a91086cdaa7" + }, + new BlockImageTestExpected + { + TestFile = "profile_xenix.raw.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 10108, + SectorSize = 512, + MD5 = "dd146bc14be87d5ad98b961dd462f469" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/MAME/v1.cs b/Aaru.Tests/Images/MAME/v1.cs index ccd82963e..0aa50078c 100644 --- a/Aaru.Tests/Images/MAME/v1.cs +++ b/Aaru.Tests/Images/MAME/v1.cs @@ -37,32 +37,19 @@ namespace Aaru.Tests.Images.MAME [TestFixture] public class V1 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "hdd.chd" - }; - public override ulong[] _sectors => new ulong[] - { - // hdd.chd - 251904 - }; - public override uint[] _sectorSize => new uint[] - { - // hdd.chd - 512 - }; - public override MediaType[] _mediaTypes => new[] - { - // hdd.chd - MediaType.GENERIC_HDD - }; - public override string[] _md5S => new[] - { - // hdd.chd - "43476343f53a177dd57b68dd769917aa" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "MAME", "v1"); public override IMediaImage _plugin => new Chd(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "hdd.chd", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "43476343f53a177dd57b68dd769917aa" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/MAME/v3.cs b/Aaru.Tests/Images/MAME/v3.cs index d595d3485..c813cfa8d 100644 --- a/Aaru.Tests/Images/MAME/v3.cs +++ b/Aaru.Tests/Images/MAME/v3.cs @@ -37,651 +37,666 @@ namespace Aaru.Tests.Images.MAME [TestFixture] public class V3 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "gigarec.chd", "hdd.chd", "pcengine.chd", "pcfx.chd", "report_audiocd.chd", "report_cdr.chd", - "report_cdrom.chd", "report_cdrw.chd", "test_enhancedcd.chd", "test_multi_karaoke_sample.chd", - "test_multisession.chd", "test_videocd.chd" - }; - public override ulong[] _sectors => new ulong[] - { - // gigarec.chd - 469652, - - // hdd.chd - 251904, - - // pcengine.chd - 160506, - - // pcfx.chd - 246380, - - // report_audiocd.chd - 247073, - - // report_cdr.chd - 254265, - - // report_cdrom.chd - 254265, - - // report_cdrw.chd - 308224, - - // test_enhancedcd.chd - 28953, - - // test_multi_karaoke_sample.chd - 329008, - - // test_multisession.chd - 8133, - - // test_videocd.chd - 48794 - }; - public override uint[] _sectorSize => new uint[] - { - // gigarec.chd - 2048, - - // hdd.chd - 512, - - // pcengine.chd - 2352, - - // pcfx.chd - 2352, - - // report_audiocd.chd - 2352, - - // report_cdr.chd - 2048, - - // report_cdrom.chd - 2048, - - // report_cdrw.chd - 2048, - - // test_enhancedcd.chd - 2352, - - // test_multi_karaoke_sample.chd - 2352, - - // test_multisession.chd - 2048, - - // test_videocd.chd - 2336 - }; - public override MediaType[] _mediaTypes => new[] - { - // gigarec.chd - MediaType.CDROM, - - // hdd.chd - MediaType.GENERIC_HDD, - - // pcengine.chd - MediaType.CDROM, - - // pcfx.chd - MediaType.CDROM, - - // report_audiocd.chd - MediaType.CDROM, - - // report_cdr.chd - MediaType.CDROM, - - // report_cdrom.chd - MediaType.CDROM, - - // report_cdrw.chd - MediaType.CDROM, - - // test_enhancedcd.chd - MediaType.CDROM, - - // test_multi_karaoke_sample.chd - MediaType.CDROM, - - // test_multisession.chd - MediaType.CDROM, - - // test_videocd.chd - MediaType.CDROM - }; - - public override string[] _md5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - "43476343f53a177dd57b68dd769917aa", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_multi_karaoke_sample.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - null, - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_multi_karaoke_sample.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - null, - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_multi_karaoke_sample.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // gigarec.chd - 1, - - // hdd.chd - -1, - - // pcengine.chd - 16, - - // pcfx.chd - 8, - - // report_audiocd.chd - 14, - - // report_cdr.chd - 1, - - // report_cdrom.chd - 1, - - // report_cdrw.chd - 1, - - // test_enhancedcd.chd - 2, - - // test_multi_karaoke_sample.chd - 16, - - // test_multisession.chd - 1, - - // test_videocd.chd - 2 - }; - - public override int[][] _trackSessions => new[] - { - // gigarec.chd - new[] - { - 1 - }, - - // hdd.chd - null, - - // pcengine.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.chd - new[] - { - 1 - }, - - // report_cdrom.chd - new[] - { - 1 - }, - - // report_cdrw.chd - new[] - { - 1 - }, - - // test_enhancedcd.chd - new[] - { - 1, 1 - }, - - // test_multi_karaoke_sample.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multisession.chd - new[] - { - 1 - }, - - // test_videocd.chd - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // gigarec.chd - new ulong[] - { - 0 - }, - - // hdd.chd - null, - - // pcengine.chd - new ulong[] - { - 0, 3440, 38316, 46920, 53204, 61524, 68268, 75104, 82840, 86192, 90980, 98988, 106408, 111956, 119988, - 125800 - }, - - // pcfx.chd - new ulong[] - { - 0, 4248, 4764, 5796, 41916, 220504, 225356, 235208 - }, - - // report_audiocd.chd - new ulong[] - { - 0, 16552, 30056, 47956, 63320, 78932, 94740, 117136, 136180, 154088, 170768, 186556, 201816, 224468 - }, - - // report_cdr.chd - new ulong[] - { - 0 - }, - - // report_cdrom.chd - new ulong[] - { - 0 - }, - - // report_cdrw.chd - new ulong[] - { - 0 - }, - - // test_enhancedcd.chd - new ulong[] - { - 0, 14408 - }, - - // test_multi_karaoke_sample.chd - new ulong[] - { - 0, 1740, 32604, 52528, 70160, 99956, 119620, 136860, 155652, 175688, 206324, 226316, 244224, 273836, - 293624, 310584 - }, - - // test_multisession.chd - new ulong[] - { - 0 - }, - - // test_videocd.chd - new ulong[] - { - 0, 1252 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // gigarec.chd - new ulong[] - { - 469651 - }, - - // hdd.chd - null, - - // pcengine.chd - new ulong[] - { - 3439, 38313, 46918, 53203, 61521, 68267, 75101, 82836, 86190, 90977, 98986, 106406, 111952, 119987, - 125796, 160526 - }, - - // pcfx.chd - new ulong[] - { - 4244, 4761, 5795, 41913, 220501, 225354, 235207, 246389 - }, - - // report_audiocd.chd - new ulong[] - { - 16548, 30053, 47954, 63319, 78930, 94738, 117132, 136176, 154085, 170766, 186555, 201815, 224465, 247091 - }, - - // report_cdr.chd - new ulong[] - { - 254264 - }, - - // report_cdrom.chd - new ulong[] - { - 254264 - }, - - // report_cdrw.chd - new ulong[] - { - 308223 - }, - - // test_enhancedcd.chd - new ulong[] - { - 14404, 28955 - }, - - // test_multi_karaoke_sample.chd - new ulong[] - { - 1736, 32601, 52526, 70159, 99953, 119618, 136857, 155650, 175687, 206322, 226312, 244220, 273833, - 293622, 310582, 329030 - }, - - // test_multisession.chd - new ulong[] - { - 8132 - }, - - // test_videocd.chd - new ulong[] - { - 1251, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // gigarec.chd - new ulong[] - { - 0 - }, - - // hdd.chd - null, - - // pcengine.chd - new ulong[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.chd - new ulong[] - { - 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.chd - new ulong[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.chd - new ulong[] - { - 0 - }, - - // report_cdrom.chd - new ulong[] - { - 0 - }, - - // report_cdrw.chd - new ulong[] - { - 0 - }, - - // test_enhancedcd.chd - new ulong[] - { - 0, 0 - }, - - // test_multi_karaoke_sample.chd - new ulong[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multisession.chd - new ulong[] - { - 0 - }, - - // test_videocd.chd - new ulong[] - { - 0, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // gigarec.chd - new byte[] - { - 0 - }, - - // hdd.chd - new byte[] - { - 0 - }, - - // pcengine.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.chd - new byte[] - { - 0 - }, - - // report_cdrom.chd - new byte[] - { - 0 - }, - - // report_cdrw.chd - new byte[] - { - 0 - }, - - // test_enhancedcd.chd - new byte[] - { - 0, 0 - }, - - // test_multi_karaoke_sample.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multisession.chd - new byte[] - { - 0 - }, - - // test_videocd.chd - new byte[] - { - 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "MAME", "v3"); public override IMediaImage _plugin => new Chd(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "gigarec.chd", + MediaType = MediaType.CDROM, + Sectors = 469652, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 469651, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "hdd.chd", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "43476343f53a177dd57b68dd769917aa" + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.chd", + MediaType = MediaType.CDROM, + Sectors = 160506, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3439, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3440, + End = 38313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38316, + End = 46918, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 46920, + End = 53203, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53204, + End = 61521, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61524, + End = 68267, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68268, + End = 75101, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75104, + End = 82836, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 82840, + End = 86190, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86192, + End = 90977, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 90980, + End = 98986, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 98988, + End = 106406, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106408, + End = 111952, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 111956, + End = 119987, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119988, + End = 125796, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 125800, + End = 160526, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.chd", + MediaType = MediaType.CDROM, + Sectors = 246380, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4244, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4248, + End = 4761, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4764, + End = 5795, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5796, + End = 41913, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41916, + End = 220501, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220504, + End = 225354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225356, + End = 235207, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235208, + End = 246389, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.chd", + MediaType = MediaType.CDROM, + Sectors = 247073, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16552, + End = 30053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30056, + End = 47954, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47956, + End = 63319, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63320, + End = 78930, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78932, + End = 94738, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94740, + End = 117132, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117136, + End = 136176, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136180, + End = 154085, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154088, + End = 170766, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170768, + End = 186555, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186556, + End = 201815, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201816, + End = 224465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224468, + End = 247091, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.chd", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.chd", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.chd", + MediaType = MediaType.CDROM, + Sectors = 308224, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.chd", + MediaType = MediaType.CDROM, + Sectors = 28953, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14404, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14408, + End = 28955, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sample.chd", + MediaType = MediaType.CDROM, + Sectors = 329008, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1740, + End = 32601, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32604, + End = 52526, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52528, + End = 70159, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70160, + End = 99953, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99956, + End = 119618, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119620, + End = 136857, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136860, + End = 155650, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155652, + End = 175687, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175688, + End = 206322, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206324, + End = 226312, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226316, + End = 244220, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244224, + End = 273833, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273836, + End = 293622, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293624, + End = 310582, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310584, + End = 329030, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.chd", + MediaType = MediaType.CDROM, + Sectors = 8133, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.chd", + MediaType = MediaType.CDROM, + Sectors = 48794, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1251, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/MAME/v4.cs b/Aaru.Tests/Images/MAME/v4.cs index e36f29dbd..0c9a9847e 100644 --- a/Aaru.Tests/Images/MAME/v4.cs +++ b/Aaru.Tests/Images/MAME/v4.cs @@ -37,958 +37,1032 @@ namespace Aaru.Tests.Images.MAME [TestFixture] public class V4 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "gigarec.chd", "hdd.chd", "jaguarcd.chd", "pcengine.chd", "pcfx.chd", "report_audiocd.chd", - "report_cdr.chd", "report_cdrom.chd", "report_cdrw.chd", "test_audiocd_cdtext.chd", "test_enhancedcd.chd", - "test_incd_udf200_finalized.chd", "test_multi_karaoke_sampler.chd", "test_multiple_indexes.chd", - "test_multisession.chd", "test_multisession_dvd+r.chd", "test_multisession_dvd-r.chd", "test_videocd.chd" - }; - - public override ulong[] _sectors => new ulong[] - { - // gigarec.chd - 469652, - - // hdd.chd - 251904, - - // jaguarcd.chd - 243587, - - // pcengine.chd - 160506, - - // pcfx.chd - 246380, - - // report_audiocd.chd - 247073, - - // report_cdr.chd - 254265, - - // report_cdrom.chd - 254265, - - // report_cdrw.chd - 308224, - - // test_audiocd_cdtext.chd - 277696, - - // test_enhancedcd.chd - 59206, - - // test_incd_udf200_finalized.chd - 350134, - - // test_multi_karaoke_sampler.chd - 329158, - - // test_multiple_indexes.chd - 65536, - - // test_multisession.chd - 51168, - - // test_multisession_dvd+r.chd - 230624, - - // test_multisession_dvd-r.chd - 257264, - - // test_videocd.chd - 48794 - }; - - public override uint[] _sectorSize => new uint[] - { - // gigarec.chd - 2048, - - // hdd.chd - 512, - - // jaguarcd.chd - 2352, - - // pcengine.chd - 2352, - - // pcfx.chd - 2352, - - // report_audiocd.chd - 2352, - - // report_cdr.chd - 2048, - - // report_cdrom.chd - 2048, - - // report_cdrw.chd - 2048, - - // test_audiocd_cdtext.chd - 2352, - - // test_enhancedcd.chd - 2352, - - // test_incd_udf200_finalized.chd - 2336, - - // test_multi_karaoke_sampler.chd - 2352, - - // test_multiple_indexes.chd - 2352, - - // test_multisession.chd - 2336, - - // test_multisession_dvd+r.chd - 2048, - - // test_multisession_dvd-r.chd - 2048, - - // test_videocd.chd - 2336 - }; - - public override MediaType[] _mediaTypes => new[] - { - // gigarec.chd - MediaType.CDROM, - - // hdd.chd - MediaType.GENERIC_HDD, - - // jaguarcd.chd - MediaType.CDROM, - - // pcengine.chd - MediaType.CDROM, - - // pcfx.chd - MediaType.CDROM, - - // report_audiocd.chd - MediaType.CDROM, - - // report_cdr.chd - MediaType.CDROM, - - // report_cdrom.chd - MediaType.CDROM, - - // report_cdrw.chd - MediaType.CDROM, - - // test_audiocd_cdtext.chd - MediaType.CDROM, - - // test_enhancedcd.chd - MediaType.CDROM, - - // test_incd_udf200_finalized.chd - MediaType.CDROM, - - // test_multi_karaoke_sampler.chd - MediaType.CDROM, - - // test_multiple_indexes.chd - MediaType.CDROM, - - // test_multisession.chd - MediaType.CDROM, - - // test_multisession_dvd+r.chd - MediaType.CDROM, - - // test_multisession_dvd-r.chd - MediaType.CDROM, - - // test_videocd.chd - MediaType.CDROM - }; - - public override string[] _md5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - "43476343f53a177dd57b68dd769917aa", - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - null, - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - null, - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // gigarec.chd - 1, - - // hdd.chd - -1, - - // jaguarcd.chd - 11, - - // pcengine.chd - 16, - - // pcfx.chd - 8, - - // report_audiocd.chd - 14, - - // report_cdr.chd - 1, - - // report_cdrom.chd - 1, - - // report_cdrw.chd - 1, - - // test_audiocd_cdtext.chd - 11, - - // test_enhancedcd.chd - 3, - - // test_incd_udf200_finalized.chd - 1, - - // test_multi_karaoke_sampler.chd - 16, - - // test_multiple_indexes.chd - 5, - - // test_multisession.chd - 4, - - // test_multisession_dvd+r.chd - 2, - - // test_multisession_dvd-r.chd - 2, - - // test_videocd.chd - 2 - }; - - public override int[][] _trackSessions => new[] - { - // gigarec.chd - new[] - { - 1 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcengine.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.chd - new[] - { - 1 - }, - - // report_cdrom.chd - new[] - { - 1 - }, - - // report_cdrw.chd - new[] - { - 1 - }, - - // test_audiocd_cdtext.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_enhancedcd.chd - new[] - { - 1, 1, 1 - }, - - // test_incd_udf200_finalized.chd - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.chd - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.chd - new[] - { - 1, 1, 1, 1 - }, - - // test_multisession_dvd+r.chd - new[] - { - 1, 1 - }, - - // test_multisession_dvd-r.chd - new[] - { - 1, 1 - }, - - // test_videocd.chd - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // gigarec.chd - new ulong[] - { - 0 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 0, 27640, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.chd - new ulong[] - { - 0, 3440, 38314, 46917, 53201, 61519, 68263, 75097, 82830, 86181, 90967, 98974, 106393, 111938, 119970, - 125779 - }, - - // pcfx.chd - new ulong[] - { - 0, 4245, 4759, 5791, 41909, 220495, 225346, 235198 - }, - - // report_audiocd.chd - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdr.chd - new ulong[] - { - 0 - }, - - // report_cdrom.chd - new ulong[] - { - 0 - }, - - // report_cdrw.chd - new ulong[] - { - 0 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_enhancedcd.chd - new ulong[] - { - 0, 14405, 40353 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession.chd - new ulong[] - { - 0, 19533, 32860, 45378 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 0, 24064 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 0, 235248 - }, - - // test_videocd.chd - new ulong[] - { - 0, 1252 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // gigarec.chd - new ulong[] - { - 469651 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 27639, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.chd - new ulong[] - { - 3439, 38313, 46916, 53200, 61518, 68262, 75096, 82829, 86180, 90966, 98973, 106392, 111937, 119969, - 125778, 160505 - }, - - // pcfx.chd - new ulong[] - { - 4244, 4758, 5790, 41908, 220494, 225345, 235197, 246379 - }, - - // report_audiocd.chd - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdr.chd - new ulong[] - { - 254264 - }, - - // report_cdrom.chd - new ulong[] - { - 254264 - }, - - // report_cdrw.chd - new ulong[] - { - 308223 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_enhancedcd.chd - new ulong[] - { - 14404, 40352, 59205 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.chd - new ulong[] - { - 19532, 32859, 45377, 51167 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 24063, 230623 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 235247, 257263 - }, - - // test_videocd.chd - new ulong[] - { - 1251, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // gigarec.chd - new ulong[] - { - 150 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.chd - new ulong[] - { - 150, 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // pcfx.chd - new ulong[] - { - 150, 150, 0, 0, 0, 150, 0, 0 - }, - - // report_audiocd.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.chd - new ulong[] - { - 150 - }, - - // report_cdrom.chd - new ulong[] - { - 150 - }, - - // report_cdrw.chd - new ulong[] - { - 150 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_enhancedcd.chd - new ulong[] - { - 150, 150, 0 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 150 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession.chd - new ulong[] - { - 150, 0, 0, 0 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 150, 0 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 150, 0 - }, - - // test_videocd.chd - new ulong[] - { - 150, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // gigarec.chd - new byte[] - { - 0 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.chd - new byte[] - { - 0 - }, - - // report_cdrom.chd - new byte[] - { - 0 - }, - - // report_cdrw.chd - new byte[] - { - 0 - }, - - // test_audiocd_cdtext.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_enhancedcd.chd - new byte[] - { - 0, 0, 0 - }, - - // test_incd_udf200_finalized.chd - new byte[] - { - 0 - }, - - // test_multi_karaoke_sampler.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.chd - new byte[] - { - 0, 0, 0, 0, 0 - }, - - // test_multisession.chd - new byte[] - { - 0, 0, 0, 0 - }, - - // test_multisession_dvd+r.chd - new byte[] - { - 0, 0 - }, - - // test_multisession_dvd-r.chd - new byte[] - { - 0, 0 - }, - - // test_videocd.chd - new byte[] - { - 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "MAME", "v4"); public override IMediaImage _plugin => new Chd(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "gigarec.chd", + MediaType = MediaType.CDROM, + Sectors = 469652, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 469651, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "hdd.chd", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "43476343f53a177dd57b68dd769917aa" + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.chd", + MediaType = MediaType.CDROM, + Sectors = 243587, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 27639, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 27640, + End = 28236, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.chd", + MediaType = MediaType.CDROM, + Sectors = 160506, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3439, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3440, + End = 38313, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38314, + End = 46916, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 46917, + End = 53200, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53201, + End = 61518, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61519, + End = 68262, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68263, + End = 75096, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75097, + End = 82829, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 82830, + End = 86180, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86181, + End = 90966, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 90967, + End = 98973, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 98974, + End = 106392, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106393, + End = 111937, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 111938, + End = 119969, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119970, + End = 125778, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 125779, + End = 160505, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.chd", + MediaType = MediaType.CDROM, + Sectors = 246380, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4244, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4245, + End = 4758, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4759, + End = 5790, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5791, + End = 41908, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41909, + End = 220494, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220495, + End = 225345, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225346, + End = 235197, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235198, + End = 246379, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.chd", + MediaType = MediaType.CDROM, + Sectors = 247073, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.chd", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.chd", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.chd", + MediaType = MediaType.CDROM, + Sectors = 308224, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.chd", + MediaType = MediaType.CDROM, + Sectors = 277696, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.chd", + MediaType = MediaType.CDROM, + Sectors = 59206, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14404, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14405, + End = 40352, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 40353, + End = 59205, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.chd", + MediaType = MediaType.CDROM, + Sectors = 350134, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.chd", + MediaType = MediaType.CDROM, + Sectors = 329158, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.chd", + MediaType = MediaType.CDROM, + Sectors = 65536, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.chd", + MediaType = MediaType.CDROM, + Sectors = 51168, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 19532, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 19533, + End = 32859, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32860, + End = 45377, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 45378, + End = 51167, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd+r.chd", + MediaType = MediaType.CDROM, + Sectors = 230624, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 24063, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 24064, + End = 230623, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd-r.chd", + MediaType = MediaType.CDROM, + Sectors = 257264, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 235247, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235248, + End = 257263, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.chd", + MediaType = MediaType.CDROM, + Sectors = 48794, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1251, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/MAME/v5/compressed.cs b/Aaru.Tests/Images/MAME/v5/compressed.cs index 0ef3fc3cd..622828d6f 100644 --- a/Aaru.Tests/Images/MAME/v5/compressed.cs +++ b/Aaru.Tests/Images/MAME/v5/compressed.cs @@ -37,959 +37,1033 @@ namespace Aaru.Tests.Images.MAME.v5 [TestFixture] public class Compressed : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "gigarec.chd", "hdd.chd", "jaguarcd.chd", "pcengine.chd", "pcfx.chd", "report_audiocd.chd", - "report_cdr.chd", "report_cdrom.chd", "report_cdrw.chd", "test_audiocd_cdtext.chd", "test_enhancedcd.chd", - "test_incd_udf200_finalized.chd", "test_multi_karaoke_sampler.chd", "test_multiple_indexes.chd", - "test_multisession.chd", "test_multisession_dvd+r.chd", "test_multisession_dvd-r.chd", "test_videocd.chd" - }; - - public override ulong[] _sectors => new ulong[] - { - // gigarec.chd - 469652, - - // hdd.chd - 251904, - - // jaguarcd.chd - 243587, - - // pcengine.chd - 160506, - - // pcfx.chd - 246380, - - // report_audiocd.chd - 247073, - - // report_cdr.chd - 254265, - - // report_cdrom.chd - 254265, - - // report_cdrw.chd - 308224, - - // test_audiocd_cdtext.chd - 277696, - - // test_enhancedcd.chd - 59206, - - // test_incd_udf200_finalized.chd - 350134, - - // test_multi_karaoke_sampler.chd - 329158, - - // test_multiple_indexes.chd - 65536, - - // test_multisession.chd - 51168, - - // test_multisession_dvd+r.chd - 230624, - - // test_multisession_dvd-r.chd - 257264, - - // test_videocd.chd - 48794 - }; - - public override uint[] _sectorSize => new uint[] - { - // gigarec.chd - 2048, - - // hdd.chd - 512, - - // jaguarcd.chd - 2352, - - // pcengine.chd - 2352, - - // pcfx.chd - 2352, - - // report_audiocd.chd - 2352, - - // report_cdr.chd - 2048, - - // report_cdrom.chd - 2048, - - // report_cdrw.chd - 2048, - - // test_audiocd_cdtext.chd - 2352, - - // test_enhancedcd.chd - 2352, - - // test_incd_udf200_finalized.chd - 2336, - - // test_multi_karaoke_sampler.chd - 2352, - - // test_multiple_indexes.chd - 2352, - - // test_multisession.chd - 2336, - - // test_multisession_dvd+r.chd - 2048, - - // test_multisession_dvd-r.chd - 2048, - - // test_videocd.chd - 2336 - }; - - public override MediaType[] _mediaTypes => new[] - { - // gigarec.chd - MediaType.CDROM, - - // hdd.chd - MediaType.GENERIC_HDD, - - // jaguarcd.chd - MediaType.CDROM, - - // pcengine.chd - MediaType.CDROM, - - // pcfx.chd - MediaType.CDROM, - - // report_audiocd.chd - MediaType.CDROM, - - // report_cdr.chd - MediaType.CDROM, - - // report_cdrom.chd - MediaType.CDROM, - - // report_cdrw.chd - MediaType.CDROM, - - // test_audiocd_cdtext.chd - MediaType.CDROM, - - // test_enhancedcd.chd - MediaType.CDROM, - - // test_incd_udf200_finalized.chd - MediaType.CDROM, - - // test_multi_karaoke_sampler.chd - MediaType.CDROM, - - // test_multiple_indexes.chd - MediaType.CDROM, - - // test_multisession.chd - MediaType.CDROM, - - // test_multisession_dvd+r.chd - MediaType.CDROM, - - // test_multisession_dvd-r.chd - MediaType.CDROM, - - // test_videocd.chd - MediaType.CDROM - }; - - public override string[] _md5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - "43476343f53a177dd57b68dd769917aa", - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - null, - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - null, - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // gigarec.chd - 1, - - // hdd.chd - -1, - - // jaguarcd.chd - 11, - - // pcengine.chd - 16, - - // pcfx.chd - 8, - - // report_audiocd.chd - 14, - - // report_cdr.chd - 1, - - // report_cdrom.chd - 1, - - // report_cdrw.chd - 1, - - // test_audiocd_cdtext.chd - 11, - - // test_enhancedcd.chd - 3, - - // test_incd_udf200_finalized.chd - 1, - - // test_multi_karaoke_sampler.chd - 16, - - // test_multiple_indexes.chd - 5, - - // test_multisession.chd - 4, - - // test_multisession_dvd+r.chd - 2, - - // test_multisession_dvd-r.chd - 2, - - // test_videocd.chd - 2 - }; - - public override int[][] _trackSessions => new[] - { - // gigarec.chd - new[] - { - 1 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcengine.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.chd - new[] - { - 1 - }, - - // report_cdrom.chd - new[] - { - 1 - }, - - // report_cdrw.chd - new[] - { - 1 - }, - - // test_audiocd_cdtext.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_enhancedcd.chd - new[] - { - 1, 1, 1 - }, - - // test_incd_udf200_finalized.chd - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.chd - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.chd - new[] - { - 1, 1, 1, 1 - }, - - // test_multisession_dvd+r.chd - new[] - { - 1, 1 - }, - - // test_multisession_dvd-r.chd - new[] - { - 1, 1 - }, - - // test_videocd.chd - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // gigarec.chd - new ulong[] - { - 0 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 0, 27640, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.chd - new ulong[] - { - 0, 3440, 38314, 46917, 53201, 61519, 68263, 75097, 82830, 86181, 90967, 98974, 106393, 111938, 119970, - 125779 - }, - - // pcfx.chd - new ulong[] - { - 0, 4245, 4759, 5791, 41909, 220495, 225346, 235198 - }, - - // report_audiocd.chd - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdr.chd - new ulong[] - { - 0 - }, - - // report_cdrom.chd - new ulong[] - { - 0 - }, - - // report_cdrw.chd - new ulong[] - { - 0 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_enhancedcd.chd - new ulong[] - { - 0, 14405, 40353 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession.chd - new ulong[] - { - 0, 19533, 32860, 45378 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 0, 24064 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 0, 235248 - }, - - // test_videocd.chd - new ulong[] - { - 0, 1252 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // gigarec.chd - new ulong[] - { - 469651 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 27639, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.chd - new ulong[] - { - 3439, 38313, 46916, 53200, 61518, 68262, 75096, 82829, 86180, 90966, 98973, 106392, 111937, 119969, - 125778, 160505 - }, - - // pcfx.chd - new ulong[] - { - 4244, 4758, 5790, 41908, 220494, 225345, 235197, 246379 - }, - - // report_audiocd.chd - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdr.chd - new ulong[] - { - 254264 - }, - - // report_cdrom.chd - new ulong[] - { - 254264 - }, - - // report_cdrw.chd - new ulong[] - { - 308223 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_enhancedcd.chd - new ulong[] - { - 14404, 40352, 59205 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.chd - new ulong[] - { - 19532, 32859, 45377, 51167 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 24063, 230623 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 235247, 257263 - }, - - // test_videocd.chd - new ulong[] - { - 1251, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // gigarec.chd - new ulong[] - { - 150 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.chd - new ulong[] - { - 150, 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // pcfx.chd - new ulong[] - { - 150, 150, 0, 0, 0, 150, 0, 0 - }, - - // report_audiocd.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.chd - new ulong[] - { - 150 - }, - - // report_cdrom.chd - new ulong[] - { - 150 - }, - - // report_cdrw.chd - new ulong[] - { - 150 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_enhancedcd.chd - new ulong[] - { - 150, 150, 0 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 150 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession.chd - new ulong[] - { - 150, 0, 0, 0 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 150, 0 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 150, 0 - }, - - // test_videocd.chd - new ulong[] - { - 150, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // gigarec.chd - new byte[] - { - 0 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.chd - new byte[] - { - 0 - }, - - // report_cdrom.chd - new byte[] - { - 0 - }, - - // report_cdrw.chd - new byte[] - { - 0 - }, - - // test_audiocd_cdtext.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_enhancedcd.chd - new byte[] - { - 0, 0, 0 - }, - - // test_incd_udf200_finalized.chd - new byte[] - { - 0 - }, - - // test_multi_karaoke_sampler.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.chd - new byte[] - { - 0, 0, 0, 0, 0 - }, - - // test_multisession.chd - new byte[] - { - 0, 0, 0, 0 - }, - - // test_multisession_dvd+r.chd - new byte[] - { - 0, 0 - }, - - // test_multisession_dvd-r.chd - new byte[] - { - 0, 0 - }, - - // test_videocd.chd - new byte[] - { - 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "MAME", "v5", "compressed"); public override IMediaImage _plugin => new Chd(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "gigarec.chd", + MediaType = MediaType.CDROM, + Sectors = 469652, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 469651, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "hdd.chd", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "43476343f53a177dd57b68dd769917aa" + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.chd", + MediaType = MediaType.CDROM, + Sectors = 243587, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 27639, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 27640, + End = 28236, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.chd", + MediaType = MediaType.CDROM, + Sectors = 160506, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3439, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3440, + End = 38313, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38314, + End = 46916, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 46917, + End = 53200, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53201, + End = 61518, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61519, + End = 68262, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68263, + End = 75096, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75097, + End = 82829, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 82830, + End = 86180, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86181, + End = 90966, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 90967, + End = 98973, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 98974, + End = 106392, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106393, + End = 111937, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 111938, + End = 119969, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119970, + End = 125778, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 125779, + End = 160505, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.chd", + MediaType = MediaType.CDROM, + Sectors = 246380, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4244, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4245, + End = 4758, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4759, + End = 5790, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5791, + End = 41908, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41909, + End = 220494, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220495, + End = 225345, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225346, + End = 235197, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235198, + End = 246379, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.chd", + MediaType = MediaType.CDROM, + Sectors = 247073, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.chd", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.chd", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.chd", + MediaType = MediaType.CDROM, + Sectors = 308224, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.chd", + MediaType = MediaType.CDROM, + Sectors = 277696, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.chd", + MediaType = MediaType.CDROM, + Sectors = 59206, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14404, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14405, + End = 40352, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 40353, + End = 59205, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.chd", + MediaType = MediaType.CDROM, + Sectors = 350134, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.chd", + MediaType = MediaType.CDROM, + Sectors = 329158, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.chd", + MediaType = MediaType.CDROM, + Sectors = 65536, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.chd", + MediaType = MediaType.CDROM, + Sectors = 51168, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 19532, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 19533, + End = 32859, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32860, + End = 45377, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 45378, + End = 51167, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd+r.chd", + MediaType = MediaType.CDROM, + Sectors = 230624, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 24063, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 24064, + End = 230623, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd-r.chd", + MediaType = MediaType.CDROM, + Sectors = 257264, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 235247, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235248, + End = 257263, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.chd", + MediaType = MediaType.CDROM, + Sectors = 48794, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1251, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/MAME/v5/uncompressed.cs b/Aaru.Tests/Images/MAME/v5/uncompressed.cs index f0e78029d..120da2a51 100644 --- a/Aaru.Tests/Images/MAME/v5/uncompressed.cs +++ b/Aaru.Tests/Images/MAME/v5/uncompressed.cs @@ -37,959 +37,1033 @@ namespace Aaru.Tests.Images.MAME.v5 [TestFixture] public class Uncompressed : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "gigarec.chd", "hdd.chd", "jaguarcd.chd", "pcengine.chd", "pcfx.chd", "report_audiocd.chd", - "report_cdr.chd", "report_cdrom.chd", "report_cdrw.chd", "test_audiocd_cdtext.chd", "test_enhancedcd.chd", - "test_incd_udf200_finalized.chd", "test_multi_karaoke_sampler.chd", "test_multiple_indexes.chd", - "test_multisession.chd", "test_multisession_dvd+r.chd", "test_multisession_dvd-r.chd", "test_videocd.chd" - }; - - public override ulong[] _sectors => new ulong[] - { - // gigarec.chd - 469652, - - // hdd.chd - 251904, - - // jaguarcd.chd - 243587, - - // pcengine.chd - 160506, - - // pcfx.chd - 246380, - - // report_audiocd.chd - 247073, - - // report_cdr.chd - 254265, - - // report_cdrom.chd - 254265, - - // report_cdrw.chd - 308224, - - // test_audiocd_cdtext.chd - 277696, - - // test_enhancedcd.chd - 59206, - - // test_incd_udf200_finalized.chd - 350134, - - // test_multi_karaoke_sampler.chd - 329158, - - // test_multiple_indexes.chd - 65536, - - // test_multisession.chd - 51168, - - // test_multisession_dvd+r.chd - 230624, - - // test_multisession_dvd-r.chd - 257264, - - // test_videocd.chd - 48794 - }; - - public override uint[] _sectorSize => new uint[] - { - // gigarec.chd - 2048, - - // hdd.chd - 512, - - // jaguarcd.chd - 2352, - - // pcengine.chd - 2352, - - // pcfx.chd - 2352, - - // report_audiocd.chd - 2352, - - // report_cdr.chd - 2048, - - // report_cdrom.chd - 2048, - - // report_cdrw.chd - 2048, - - // test_audiocd_cdtext.chd - 2352, - - // test_enhancedcd.chd - 2352, - - // test_incd_udf200_finalized.chd - 2336, - - // test_multi_karaoke_sampler.chd - 2352, - - // test_multiple_indexes.chd - 2352, - - // test_multisession.chd - 2336, - - // test_multisession_dvd+r.chd - 2048, - - // test_multisession_dvd-r.chd - 2048, - - // test_videocd.chd - 2336 - }; - - public override MediaType[] _mediaTypes => new[] - { - // gigarec.chd - MediaType.CDROM, - - // hdd.chd - MediaType.GENERIC_HDD, - - // jaguarcd.chd - MediaType.CDROM, - - // pcengine.chd - MediaType.CDROM, - - // pcfx.chd - MediaType.CDROM, - - // report_audiocd.chd - MediaType.CDROM, - - // report_cdr.chd - MediaType.CDROM, - - // report_cdrom.chd - MediaType.CDROM, - - // report_cdrw.chd - MediaType.CDROM, - - // test_audiocd_cdtext.chd - MediaType.CDROM, - - // test_enhancedcd.chd - MediaType.CDROM, - - // test_incd_udf200_finalized.chd - MediaType.CDROM, - - // test_multi_karaoke_sampler.chd - MediaType.CDROM, - - // test_multiple_indexes.chd - MediaType.CDROM, - - // test_multisession.chd - MediaType.CDROM, - - // test_multisession_dvd+r.chd - MediaType.CDROM, - - // test_multisession_dvd-r.chd - MediaType.CDROM, - - // test_videocd.chd - MediaType.CDROM - }; - - public override string[] _md5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - "43476343f53a177dd57b68dd769917aa", - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - null, - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // gigarec.chd - "UNKNOWN", - - // hdd.chd - null, - - // jaguarcd.chd - "UNKNOWN", - - // pcengine.chd - "UNKNOWN", - - // pcfx.chd - "UNKNOWN", - - // report_audiocd.chd - "UNKNOWN", - - // report_cdr.chd - "UNKNOWN", - - // report_cdrom.chd - "UNKNOWN", - - // report_cdrw.chd - "UNKNOWN", - - // test_audiocd_cdtext.chd - "UNKNOWN", - - // test_enhancedcd.chd - "UNKNOWN", - - // test_incd_udf200_finalized.chd - "UNKNOWN", - - // test_multi_karaoke_sampler.chd - "UNKNOWN", - - // test_multiple_indexes.chd - "UNKNOWN", - - // test_multisession.chd - "UNKNOWN", - - // test_multisession_dvd+r.chd - "UNKNOWN", - - // test_multisession_dvd-r.chd - "UNKNOWN", - - // test_videocd.chd - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // gigarec.chd - 1, - - // hdd.chd - -1, - - // jaguarcd.chd - 11, - - // pcengine.chd - 16, - - // pcfx.chd - 8, - - // report_audiocd.chd - 14, - - // report_cdr.chd - 1, - - // report_cdrom.chd - 1, - - // report_cdrw.chd - 1, - - // test_audiocd_cdtext.chd - 11, - - // test_enhancedcd.chd - 3, - - // test_incd_udf200_finalized.chd - 1, - - // test_multi_karaoke_sampler.chd - 16, - - // test_multiple_indexes.chd - 5, - - // test_multisession.chd - 4, - - // test_multisession_dvd+r.chd - 2, - - // test_multisession_dvd-r.chd - 2, - - // test_videocd.chd - 2 - }; - - public override int[][] _trackSessions => new[] - { - // gigarec.chd - new[] - { - 1 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcengine.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdr.chd - new[] - { - 1 - }, - - // report_cdrom.chd - new[] - { - 1 - }, - - // report_cdrw.chd - new[] - { - 1 - }, - - // test_audiocd_cdtext.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_enhancedcd.chd - new[] - { - 1, 1, 1 - }, - - // test_incd_udf200_finalized.chd - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.chd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.chd - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.chd - new[] - { - 1, 1, 1, 1 - }, - - // test_multisession_dvd+r.chd - new[] - { - 1, 1 - }, - - // test_multisession_dvd-r.chd - new[] - { - 1, 1 - }, - - // test_videocd.chd - new[] - { - 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // gigarec.chd - new ulong[] - { - 0 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 0, 27640, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.chd - new ulong[] - { - 0, 3440, 38314, 46917, 53201, 61519, 68263, 75097, 82830, 86181, 90967, 98974, 106393, 111938, 119970, - 125779 - }, - - // pcfx.chd - new ulong[] - { - 0, 4245, 4759, 5791, 41909, 220495, 225346, 235198 - }, - - // report_audiocd.chd - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdr.chd - new ulong[] - { - 0 - }, - - // report_cdrom.chd - new ulong[] - { - 0 - }, - - // report_cdrw.chd - new ulong[] - { - 0 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_enhancedcd.chd - new ulong[] - { - 0, 14405, 40353 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession.chd - new ulong[] - { - 0, 19533, 32860, 45378 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 0, 24064 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 0, 235248 - }, - - // test_videocd.chd - new ulong[] - { - 0, 1252 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // gigarec.chd - new ulong[] - { - 469651 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 27639, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.chd - new ulong[] - { - 3439, 38313, 46916, 53200, 61518, 68262, 75096, 82829, 86180, 90966, 98973, 106392, 111937, 119969, - 125778, 160505 - }, - - // pcfx.chd - new ulong[] - { - 4244, 4758, 5790, 41908, 220494, 225345, 235197, 246379 - }, - - // report_audiocd.chd - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdr.chd - new ulong[] - { - 254264 - }, - - // report_cdrom.chd - new ulong[] - { - 254264 - }, - - // report_cdrw.chd - new ulong[] - { - 308223 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_enhancedcd.chd - new ulong[] - { - 14404, 40352, 59205 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.chd - new ulong[] - { - 19532, 32859, 45377, 51167 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 24063, 230623 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 235247, 257263 - }, - - // test_videocd.chd - new ulong[] - { - 1251, 48793 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // gigarec.chd - new ulong[] - { - 150 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.chd - new ulong[] - { - 150, 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // pcfx.chd - new ulong[] - { - 150, 150, 0, 0, 0, 150, 0, 0 - }, - - // report_audiocd.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.chd - new ulong[] - { - 150 - }, - - // report_cdrom.chd - new ulong[] - { - 150 - }, - - // report_cdrw.chd - new ulong[] - { - 150 - }, - - // test_audiocd_cdtext.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_enhancedcd.chd - new ulong[] - { - 150, 150, 0 - }, - - // test_incd_udf200_finalized.chd - new ulong[] - { - 150 - }, - - // test_multi_karaoke_sampler.chd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.chd - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession.chd - new ulong[] - { - 150, 0, 0, 0 - }, - - // test_multisession_dvd+r.chd - new ulong[] - { - 150, 0 - }, - - // test_multisession_dvd-r.chd - new ulong[] - { - 150, 0 - }, - - // test_videocd.chd - new ulong[] - { - 150, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // gigarec.chd - new byte[] - { - 0 - }, - - // hdd.chd - null, - - // jaguarcd.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcfx.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdr.chd - new byte[] - { - 0 - }, - - // report_cdrom.chd - new byte[] - { - 0 - }, - - // report_cdrw.chd - new byte[] - { - 0 - }, - - // test_audiocd_cdtext.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_enhancedcd.chd - new byte[] - { - 0, 0, 0 - }, - - // test_incd_udf200_finalized.chd - new byte[] - { - 0 - }, - - // test_multi_karaoke_sampler.chd - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.chd - new byte[] - { - 0, 0, 0, 0, 0 - }, - - // test_multisession.chd - new byte[] - { - 0, 0, 0, 0 - }, - - // test_multisession_dvd+r.chd - new byte[] - { - 0, 0 - }, - - // test_multisession_dvd-r.chd - new byte[] - { - 0, 0 - }, - - // test_videocd.chd - new byte[] - { - 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "MAME", "v5", "uncompressed"); public override IMediaImage _plugin => new Chd(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "gigarec.chd", + MediaType = MediaType.CDROM, + Sectors = 469652, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 469651, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "hdd.chd", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "43476343f53a177dd57b68dd769917aa" + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.chd", + MediaType = MediaType.CDROM, + Sectors = 243587, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 27639, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 27640, + End = 28236, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.chd", + MediaType = MediaType.CDROM, + Sectors = 160506, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3439, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3440, + End = 38313, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38314, + End = 46916, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 46917, + End = 53200, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53201, + End = 61518, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61519, + End = 68262, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68263, + End = 75096, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75097, + End = 82829, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 82830, + End = 86180, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86181, + End = 90966, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 90967, + End = 98973, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 98974, + End = 106392, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106393, + End = 111937, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 111938, + End = 119969, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119970, + End = 125778, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 125779, + End = 160505, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.chd", + MediaType = MediaType.CDROM, + Sectors = 246380, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4244, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4245, + End = 4758, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4759, + End = 5790, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5791, + End = 41908, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41909, + End = 220494, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220495, + End = 225345, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225346, + End = 235197, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235198, + End = 246379, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.chd", + MediaType = MediaType.CDROM, + Sectors = 247073, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdr.chd", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.chd", + MediaType = MediaType.CDROM, + Sectors = 254265, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.chd", + MediaType = MediaType.CDROM, + Sectors = 308224, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.chd", + MediaType = MediaType.CDROM, + Sectors = 277696, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_enhancedcd.chd", + MediaType = MediaType.CDROM, + Sectors = 59206, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 14404, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 14405, + End = 40352, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 40353, + End = 59205, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.chd", + MediaType = MediaType.CDROM, + Sectors = 350134, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.chd", + MediaType = MediaType.CDROM, + Sectors = 329158, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.chd", + MediaType = MediaType.CDROM, + Sectors = 65536, + SectorSize = 2352, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.chd", + MediaType = MediaType.CDROM, + Sectors = 51168, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 19532, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 19533, + End = 32859, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32860, + End = 45377, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 45378, + End = 51167, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd+r.chd", + MediaType = MediaType.CDROM, + Sectors = 230624, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 24063, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 24064, + End = 230623, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession_dvd-r.chd", + MediaType = MediaType.CDROM, + Sectors = 257264, + SectorSize = 2048, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 235247, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235248, + End = 257263, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.chd", + MediaType = MediaType.CDROM, + Sectors = 48794, + SectorSize = 2336, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1251, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/MagicISO/Cuesheet.cs b/Aaru.Tests/Images/MagicISO/Cuesheet.cs index 92e6cf4eb..aee4e0c3c 100644 --- a/Aaru.Tests/Images/MagicISO/Cuesheet.cs +++ b/Aaru.Tests/Images/MagicISO/Cuesheet.cs @@ -37,588 +37,717 @@ namespace Aaru.Tests.Images.MagicISO [TestFixture] public class Cuesheet : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.cue", "report_audiocd.cue", "report_cdrom.cue", "report_cdrw.cue", - "report_dvdram_v1.cue", "report_dvdram_v2.cue", "report_dvd+r-dl.cue", "report_dvd-rom.cue", - "report_dvd+rw.cue", "report_enhancedcd.cue", "test_multi_karaoke_sampler.cue" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.cue - 210299, - - // report_audiocd.cue - 247222, - - // report_cdrom.cue - 254264, - - // report_cdrw.cue - 308223, - - // report_dvdram_v1.cue - 1218959, - - // report_dvdram_v2.cue - 2236703, - - // report_dvd+r-dl.cue - 3455935, - - // report_dvd-rom.cue - 2146367, - - // report_dvd+rw.cue - 2295103, - - // report_enhancedcd.cue - 303615, - - // test_multi_karaoke_sampler.cue - 329307 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.cue - MediaType.CDDA, - - // report_audiocd.cue - MediaType.CDDA, - - // report_cdrom.cue - MediaType.CDROM, - - // report_cdrw.cue - MediaType.CDROM, - - // report_dvdram_v1.cue - MediaType.CDROM, - - // report_dvdram_v2.cue - MediaType.CDROM, - - // report_dvd+r-dl.cue - MediaType.CDROM, - - // report_dvd-rom.cue - MediaType.CDROM, - - // report_dvd+rw.cue - MediaType.CDROM, - - // report_enhancedcd.cue - MediaType.CDPLUS, - - // test_multi_karaoke_sampler.cue - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.cue - "ab350df419f96d967f51d0161ebeba63", - - // report_audiocd.cue - "277e98295297f618cc63687e98288d7e", - - // report_cdrom.cue - "2de6dd5eaa71c1a97625bab68382da60", - - // report_cdrw.cue - "f1510c82ea4ff535415833242adddac6", - - // report_dvdram_v1.cue - "192aea84e64cb396cc0f637a611788bf", - - // report_dvdram_v2.cue - "fa5cb9657d9ed429a41913027d7b27eb", - - // report_dvd+r-dl.cue - "cf5ba4a055c6bdb4c9287c52b01c4ffb", - - // report_dvd-rom.cue - "8ed49c810da17e7957962df4b07ca9a6", - - // report_dvd+rw.cue - "d7a519529ca4a4ad04a6e14858f92a33", - - // report_enhancedcd.cue - "0ac3eaefdd2c138e86229d195d63cba2", - - // test_multi_karaoke_sampler.cue - "cc6354d06b009b0446012842c7f94be7" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.cue - "ab350df419f96d967f51d0161ebeba63", - - // report_audiocd.cue - "277e98295297f618cc63687e98288d7e", - - // report_cdrom.cue - "222edd2c920b63aefe2087ed6278abe6", - - // report_cdrw.cue - "22bd168e59e075229821448b60d1820b", - - // report_dvdram_v1.cue - "192aea84e64cb396cc0f637a611788bf", - - // report_dvdram_v2.cue - "fa5cb9657d9ed429a41913027d7b27eb", - - // report_dvd+r-dl.cue - "cf5ba4a055c6bdb4c9287c52b01c4ffb", - - // report_dvd-rom.cue - "8ed49c810da17e7957962df4b07ca9a6", - - // report_dvd+rw.cue - "d7a519529ca4a4ad04a6e14858f92a33", - - // report_enhancedcd.cue - "2524762a816af8e8c188b971dfd27374", - - // test_multi_karaoke_sampler.cue - "bb3ebf139ebb76fff1b229a379d289e4" - }; - - public override string[] _subchannelMd5S => new string[] - { - // cdiready_the_apprentice.cue - null, - - // report_audiocd.cue - null, - - // report_cdrom.cue - null, - - // report_cdrw.cue - null, - - // report_dvdram_v1.cue - null, - - // report_dvdram_v2.cue - null, - - // report_dvd+r-dl.cue - null, - - // report_dvd-rom.cue - null, - - // report_dvd+rw.cue - null, - - // report_enhancedcd.cue - null, - - // test_multi_karaoke_sampler.cue - null - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.cue - 22, - - // report_audiocd.cue - 14, - - // report_cdrom.cue - 1, - - // report_cdrw.cue - 1, - - // report_dvdram_v1.cue - 1, - - // report_dvdram_v2.cue - 1, - - // report_dvd+r-dl.cue - 1, - - // report_dvd-rom.cue - 1, - - // report_dvd+rw.cue - 1, - - // report_enhancedcd.cue - 14, - - // test_multi_karaoke_sampler.cue - 16 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.cue - new[] - { - 1 - }, - - // report_cdrw.cue - new[] - { - 1 - }, - - // report_dvdram_v1.cue - new[] - { - 1 - }, - - // report_dvdram_v2.cue - new[] - { - 1 - }, - - // report_dvd+r-dl.cue - new[] - { - 1 - }, - - // report_dvd-rom.cue - new[] - { - 1 - }, - - // report_dvd+rw.cue - new[] - { - 1 - }, - - // report_enhancedcd.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_multi_karaoke_sampler.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.cue - new[] - { - 69000UL, 88800UL, 107625UL, 112200UL, 133650UL, 138225UL, 159825UL, 164775UL, 185400UL, 190125UL, - 208875UL, 213000UL, 232200UL, 236700UL, 241875UL, 256125UL, 256875UL, 265650UL, 267375UL, 270000UL, - 271650UL, 274275UL - }, - - // report_audiocd.cue - new[] - { - 0UL, 16399UL, 30051UL, 47950UL, 63314UL, 78925UL, 94732UL, 117125UL, 136166UL, 154072UL, 170751UL, - 186539UL, 201799UL, 224449UL - }, - - // report_cdrom.cue - new ulong[] - { - 0 - }, - - // report_cdrw.cue - new ulong[] - { - 0 - }, - - // report_dvdram_v1.cue - new ulong[] - { - 0 - }, - - // report_dvdram_v2.cue - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.cue - new ulong[] - { - 0 - }, - - // report_dvd-rom.cue - new ulong[] - { - 0 - }, - - // report_dvd+rw.cue - new ulong[] - { - 0 - }, - - // report_enhancedcd.cue - new[] - { - 0UL, 15511UL, 33959UL, 51330UL, 71973UL, 87582UL, 103305UL, 117691UL, 136167UL, 153418UL, 166932UL, - 187113UL, 201441UL, 234030UL - }, - - // test_multi_karaoke_sampler.cue - new[] - { - 0UL, 1737UL, 32749UL, 52672UL, 70304UL, 100098UL, 119761UL, 136999UL, 155790UL, 175826UL, 206461UL, - 226450UL, 244355UL, 273965UL, 293752UL, 310711UL - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.cue - new[] - { - 88799UL, 107624UL, 112199UL, 133649UL, 138224UL, 159824UL, 164774UL, 185399UL, 190124UL, 208874UL, - 212999UL, 232199UL, 236699UL, 241874UL, 256124UL, 256874UL, 265649UL, 267374UL, 269999UL, 271649UL, - 274274UL, 279298UL - }, - - // report_audiocd.cue - new[] - { - 16548UL, 30050UL, 47949UL, 63313UL, 78924UL, 94731UL, 117124UL, 136165UL, 154071UL, 170750UL, 186538UL, - 201798UL, 224448UL, 247071UL - }, - - // report_cdrom.cue - new ulong[] - { - 254263 - }, - - // report_cdrw.cue - new ulong[] - { - 308222 - }, - - // report_dvdram_v1.cue - new[] - { - 1218958UL - }, - - // report_dvdram_v2.cue - new[] - { - 2236702UL - }, - - // report_dvd+r-dl.cue - new[] - { - 3455934UL - }, - - // report_dvd-rom.cue - new[] - { - 2146366UL - }, - - // report_dvd+rw.cue - new ulong[] - { - 2295102 - }, - - // report_enhancedcd.cue - new[] - { - 15660UL, 33958UL, 51329UL, 71972UL, 87581UL, 103304UL, 117690UL, 136166UL, 153417UL, 166931UL, 187112UL, - 201440UL, 234179UL, 303314UL - }, - - // test_multi_karaoke_sampler.cue - new[] - { - 1886UL, 32748UL, 52671UL, 70303UL, 100097UL, 119760UL, 136998UL, 155789UL, 175825UL, 206460UL, 226449UL, - 244354UL, 273964UL, 293751UL, 310710UL, 329156UL - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.cue - new[] - { - 150UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, - 0UL, 0UL - }, - - // report_audiocd.cue - new[] - { - 150UL, 150UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL - }, - - // report_cdrom.cue - new ulong[] - { - 150 - }, - - // report_cdrw.cue - new ulong[] - { - 150 - }, - - // report_dvdram_v1.cue - new ulong[] - { - 150 - }, - - // report_dvdram_v2.cue - new ulong[] - { - 150 - }, - - // report_dvd+r-dl.cue - new ulong[] - { - 150 - }, - - // report_dvd-rom.cue - new ulong[] - { - 150 - }, - - // report_dvd+rw.cue - new ulong[] - { - 150 - }, - - // report_enhancedcd.cue - new[] - { - 150UL, 150UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 150UL - }, - - // test_multi_karaoke_sampler.cue - new[] - { - 150UL, 150UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.cue - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.cue - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.cue - new byte[] - { - 4 - }, - - // report_cdrw.cue - new byte[] - { - 4 - }, - - // report_dvdram_v1.cue - new byte[] - { - 4 - }, - - // report_dvdram_v2.cue - new byte[] - { - 4 - }, - - // report_dvd+r-dl.cue - new byte[] - { - 4 - }, - - // report_dvd-rom.cue - new byte[] - { - 4 - }, - - // report_dvd+rw.cue - new byte[] - { - 4 - }, - - // report_enhancedcd.cue - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // test_multi_karaoke_sampler.cue - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "MagicISO", "Cuesheet"); public override IMediaImage _plugin => new CdrWin(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.cue", + MediaType = MediaType.CDDA, + Sectors = 210299, + MD5 = "ab350df419f96d967f51d0161ebeba63", + LongMD5 = "ab350df419f96d967f51d0161ebeba63", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69000, + End = 88799, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279298, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.cue", + MediaType = MediaType.CDDA, + Sectors = 247222, + MD5 = "277e98295297f618cc63687e98288d7e", + LongMD5 = "277e98295297f618cc63687e98288d7e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16399, + End = 30050, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247071, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.cue", + MediaType = MediaType.CDROM, + Sectors = 254264, + MD5 = "2de6dd5eaa71c1a97625bab68382da60", + LongMD5 = "222edd2c920b63aefe2087ed6278abe6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254263, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.cue", + MediaType = MediaType.CDROM, + Sectors = 308223, + MD5 = "f1510c82ea4ff535415833242adddac6", + LongMD5 = "22bd168e59e075229821448b60d1820b", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308222, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v1.cue", + MediaType = MediaType.CDROM, + Sectors = 1218959, + MD5 = "192aea84e64cb396cc0f637a611788bf", + LongMD5 = "192aea84e64cb396cc0f637a611788bf", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1218958, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.cue", + MediaType = MediaType.CDROM, + Sectors = 2236703, + MD5 = "fa5cb9657d9ed429a41913027d7b27eb", + LongMD5 = "fa5cb9657d9ed429a41913027d7b27eb", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2236702, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r-dl.cue", + MediaType = MediaType.CDROM, + Sectors = 3455935, + MD5 = "cf5ba4a055c6bdb4c9287c52b01c4ffb", + LongMD5 = "cf5ba4a055c6bdb4c9287c52b01c4ffb", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3455934, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-rom.cue", + MediaType = MediaType.CDROM, + Sectors = 2146367, + MD5 = "8ed49c810da17e7957962df4b07ca9a6", + LongMD5 = "8ed49c810da17e7957962df4b07ca9a6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146366, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+rw.cue", + MediaType = MediaType.CDROM, + Sectors = 2295103, + MD5 = "d7a519529ca4a4ad04a6e14858f92a33", + LongMD5 = "d7a519529ca4a4ad04a6e14858f92a33", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2295102, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.cue", + MediaType = MediaType.CDPLUS, + Sectors = 303615, + MD5 = "0ac3eaefdd2c138e86229d195d63cba2", + LongMD5 = "2524762a816af8e8c188b971dfd27374", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15511, + End = 33958, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 234179, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234030, + End = 303314, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.cue", + MediaType = MediaType.CDROMXA, + Sectors = 329307, + MD5 = "cc6354d06b009b0446012842c7f94be7", + LongMD5 = "bb3ebf139ebb76fff1b229a379d289e4", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329156, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/MagicISO/Nero.cs b/Aaru.Tests/Images/MagicISO/Nero.cs index a8007262a..9d776f192 100644 --- a/Aaru.Tests/Images/MagicISO/Nero.cs +++ b/Aaru.Tests/Images/MagicISO/Nero.cs @@ -36,674 +36,753 @@ namespace Aaru.Tests.Images.MagicISO [TestFixture] public class Nero : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.nrg", "report_audiocd.nrg", "report_cdrom.nrg", "report_cdrw.nrg", - "report_dvdram_v1.nrg", "report_dvdram_v2.nrg", "report_dvd+r-dl.nrg", "report_dvd-rom.nrg", - "report_dvd+rw.nrg", "report_enhancedcd.nrg", "test_multi_karaoke_sampler.nrg", "report_dvd-r.nrg", - "report_dvd-rw.nrg" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.nrg - 261150, - - // report_audiocd.nrg - 247223, - - // report_cdrom.nrg - 254265, - - // report_cdrw.nrg - 308224, - - // report_dvdram_v1.nrg - 1218960, - - // report_dvdram_v2.nrg - 2236704, - - // report_dvd+r-dl.nrg - 3455936, - - // report_dvd-rom.nrg - 2146368, - - // report_dvd+rw.nrg - 2295104, - - // report_enhancedcd.nrg - 314864, - - // test_multi_karaoke_sampler.nrg - 329307, - - // report_dvd-r.nrg - 2146368, - - // report_dvd-rw.nrg - 2146368 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.nrg - MediaType.CDDA, - - // report_audiocd.nrg - MediaType.CDDA, - - // report_cdrom.nrg - MediaType.CDROM, - - // report_cdrw.nrg - MediaType.CDROM, - - // report_dvdram_v1.nrg - MediaType.CDROM, - - // report_dvdram_v2.nrg - MediaType.CDROM, - - // report_dvd+r-dl.nrg - MediaType.CDROM, - - // report_dvd-rom.nrg - MediaType.CDROM, - - // report_dvd+rw.nrg - MediaType.CDROM, - - // report_enhancedcd.nrg - MediaType.CDROMXA, - - // test_multi_karaoke_sampler.nrg - MediaType.CDROMXA, - - // This is a fail from MagicISO - // report_dvd-r.nrg - MediaType.CDROM, - - // report_dvd-rw.nrg - MediaType.CDROM - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.nrg - "ab350df419f96d967f51d0161ebeba63", - - // report_audiocd.nrg - "277e98295297f618cc63687e98288d7e", - - // report_cdrom.nrg - "2de6dd5eaa71c1a97625bab68382da60", - - // report_cdrw.nrg - "f1510c82ea4ff535415833242adddac6", - - // report_dvdram_v1.nrg - "192aea84e64cb396cc0f637a611788bf", - - // report_dvdram_v2.nrg - "fa5cb9657d9ed429a41913027d7b27eb", - - // report_dvd+r-dl.nrg - "cf5ba4a055c6bdb4c9287c52b01c4ffb", - - // report_dvd-rom.nrg - "8ed49c810da17e7957962df4b07ca9a6", - - // report_dvd+rw.nrg - "d7a519529ca4a4ad04a6e14858f92a33", - - // report_enhancedcd.nrg - "0ac3eaefdd2c138e86229d195d63cba2", - - // test_multi_karaoke_sampler.nrg - "cc6354d06b009b0446012842c7f94be7", - - // report_dvd-r.nrg - "UNKNOWN", - - // report_dvd-rw.nrg - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.nrg - "ab350df419f96d967f51d0161ebeba63", - - // report_audiocd.nrg - "277e98295297f618cc63687e98288d7e", - - // report_cdrom.nrg - "222edd2c920b63aefe2087ed6278abe6", - - // report_cdrw.nrg - "22bd168e59e075229821448b60d1820b", - - // report_dvdram_v1.nrg - "192aea84e64cb396cc0f637a611788bf", - - // report_dvdram_v2.nrg - "fa5cb9657d9ed429a41913027d7b27eb", - - // report_dvd+r-dl.nrg - "cf5ba4a055c6bdb4c9287c52b01c4ffb", - - // report_dvd-rom.nrg - "8ed49c810da17e7957962df4b07ca9a6", - - // report_dvd+rw.nrg - "d7a519529ca4a4ad04a6e14858f92a33", - - // report_enhancedcd.nrg - "2524762a816af8e8c188b971dfd27374", - - // test_multi_karaoke_sampler.nrg - "bb3ebf139ebb76fff1b229a379d289e4", - - // report_dvd-r.nrg - "UNKNOWN", - - // report_dvd-rw.nrg - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new string[] - { - // cdiready_the_apprentice.nrg - null, - - // report_audiocd.nrg - null, - - // report_cdrom.nrg - null, - - // report_cdrw.nrg - null, - - // report_dvdram_v1.nrg - null, - - // report_dvdram_v2.nrg - null, - - // report_dvd+r-dl.nrg - null, - - // report_dvd-rom.nrg - null, - - // report_dvd+rw.nrg - null, - - // report_enhancedcd.nrg - null, - - // test_multi_karaoke_sampler.nrg - null, - - // report_dvd-r.nrg - null, - - // report_dvd-rw.nrg - null - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.nrg - 22, - - // report_audiocd.nrg - 14, - - // report_cdrom.nrg - 1, - - // report_cdrw.nrg - 1, - - // report_dvdram_v1.nrg - 1, - - // report_dvdram_v2.nrg - 1, - - // report_dvd+r-dl.nrg - 1, - - // report_dvd-rom.nrg - 1, - - // report_dvd+rw.nrg - 1, - - // report_enhancedcd.nrg - 14, - - // test_multi_karaoke_sampler.nrg - 16, - - // report_dvd-r.nrg - 1, - - // report_dvd-rw.nrg - 1 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.nrg - new[] - { - 1 - }, - - // report_cdrw.nrg - new[] - { - 1 - }, - - // report_dvdram_v1.nrg - new[] - { - 1 - }, - - // report_dvdram_v2.nrg - new[] - { - 1 - }, - - // report_dvd+r-dl.nrg - new[] - { - 1 - }, - - // report_dvd-rom.nrg - new[] - { - 1 - }, - - // report_dvd+rw.nrg - new[] - { - 1 - }, - - // report_enhancedcd.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_multi_karaoke_sampler.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_dvd-r.nrg - new[] - { - 1 - }, - - // report_dvd-rw.nrg - new[] - { - 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 69000, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // report_audiocd.nrg - new ulong[] - { - 0, 16399, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdrom.nrg - new ulong[] - { - 0 - }, - - // report_cdrw.nrg - new ulong[] - { - 0 - }, - - // report_dvdram_v1.nrg - new ulong[] - { - 0 - }, - - // report_dvdram_v2.nrg - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.nrg - new ulong[] - { - 0 - }, - - // report_dvd-rom.nrg - new ulong[] - { - 0 - }, - - // report_dvd+rw.nrg - new ulong[] - { - 0 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 0, 15511, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234030 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 0, 1737, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // report_dvd-r.nrg - new ulong[] - { - 0 - }, - - // report_dvd-rw.nrg - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 279298 - }, - - // report_audiocd.nrg - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247071 - }, - - // report_cdrom.nrg - new ulong[] - { - 254263 - }, - - // report_cdrw.nrg - new ulong[] - { - 308222 - }, - - // report_dvdram_v1.nrg - new ulong[] - { - 1218958 - }, - - // report_dvdram_v2.nrg - new ulong[] - { - 2236702 - }, - - // report_dvd+r-dl.nrg - new ulong[] - { - 3455934 - }, - - // report_dvd-rom.nrg - new ulong[] - { - 2146366 - }, - - // report_dvd+rw.nrg - new ulong[] - { - 2295102 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 234179, - 303314 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329156 - }, - - // report_dvd-r.nrg - new ulong[] - { - 2146367 - }, - - // report_dvd-rw.nrg - new ulong[] - { - 2146367 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.nrg - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.nrg - new ulong[] - { - 150 - }, - - // report_cdrw.nrg - new ulong[] - { - 150 - }, - - // report_dvdram_v1.nrg - new ulong[] - { - 150 - }, - - // report_dvdram_v2.nrg - new ulong[] - { - 150 - }, - - // report_dvd+r-dl.nrg - new ulong[] - { - 150 - }, - - // report_dvd-rom.nrg - new ulong[] - { - 150 - }, - - // report_dvd+rw.nrg - new ulong[] - { - 150 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_dvd-r.nrg - new ulong[] - { - 0 - }, - - // report_dvd-rw.nrg - new ulong[] - { - 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.nrg - new byte[] - { - 4 - }, - - // report_cdrw.nrg - new byte[] - { - 4 - }, - - // report_dvdram_v1.nrg - new byte[] - { - 4 - }, - - // report_dvdram_v2.nrg - new byte[] - { - 4 - }, - - // report_dvd+r-dl.nrg - new byte[] - { - 4 - }, - - // report_dvd-rom.nrg - new byte[] - { - 4 - }, - - // report_dvd+rw.nrg - new byte[] - { - 4 - }, - - // report_enhancedcd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // test_multi_karaoke_sampler.nrg - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_dvd-r.nrg - null, - - // report_dvd-rw.nrg - null - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "MagicISO", "Nero"); public override IMediaImage _plugin => new DiscImages.Nero(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.nrg", + MediaType = MediaType.CDDA, + Sectors = 261150, + MD5 = "ab350df419f96d967f51d0161ebeba63", + LongMD5 = "ab350df419f96d967f51d0161ebeba63", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69000, + End = 88799, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279298, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.nrg", + MediaType = MediaType.CDDA, + Sectors = 247223, + MD5 = "277e98295297f618cc63687e98288d7e", + LongMD5 = "277e98295297f618cc63687e98288d7e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16399, + End = 30050, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247071, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.nrg", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "2de6dd5eaa71c1a97625bab68382da60", + LongMD5 = "222edd2c920b63aefe2087ed6278abe6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254263, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.nrg", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "f1510c82ea4ff535415833242adddac6", + LongMD5 = "22bd168e59e075229821448b60d1820b", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308222, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v1.nrg", + MediaType = MediaType.CDROM, + Sectors = 1218960, + MD5 = "192aea84e64cb396cc0f637a611788bf", + LongMD5 = "192aea84e64cb396cc0f637a611788bf", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1218958, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.nrg", + MediaType = MediaType.CDROM, + Sectors = 2236704, + MD5 = "fa5cb9657d9ed429a41913027d7b27eb", + LongMD5 = "fa5cb9657d9ed429a41913027d7b27eb", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2236702, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r-dl.nrg", + MediaType = MediaType.CDROM, + Sectors = 3455936, + MD5 = "cf5ba4a055c6bdb4c9287c52b01c4ffb", + LongMD5 = "cf5ba4a055c6bdb4c9287c52b01c4ffb", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3455934, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-rom.nrg", + MediaType = MediaType.CDROM, + Sectors = 2146368, + MD5 = "8ed49c810da17e7957962df4b07ca9a6", + LongMD5 = "8ed49c810da17e7957962df4b07ca9a6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146366, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+rw.nrg", + MediaType = MediaType.CDROM, + Sectors = 2295104, + MD5 = "d7a519529ca4a4ad04a6e14858f92a33", + LongMD5 = "d7a519529ca4a4ad04a6e14858f92a33", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2295102, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 314864, + MD5 = "0ac3eaefdd2c138e86229d195d63cba2", + LongMD5 = "2524762a816af8e8c188b971dfd27374", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15511, + End = 33958, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 234179, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234030, + End = 303314, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 329307, + MD5 = "cc6354d06b009b0446012842c7f94be7", + LongMD5 = "bb3ebf139ebb76fff1b229a379d289e4", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329156, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-r.nrg", + MediaType = MediaType.CDROM, + Sectors = 2146368, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-rw.nrg", + MediaType = MediaType.CDROM, + Sectors = 2146368, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/MaxiDisk.cs b/Aaru.Tests/Images/MaxiDisk.cs index efa472cea..461028f4f 100644 --- a/Aaru.Tests/Images/MaxiDisk.cs +++ b/Aaru.Tests/Images/MaxiDisk.cs @@ -36,194 +36,123 @@ namespace Aaru.Tests.Images [TestFixture] public class MaxiDisk : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "3DF800.HDK.lz", "3DS.HDK.lz", "3ES.HDK.lz", "3HD6.HDK.lz", "3HF168.HDK.lz", "3HF16.HDK.lz", - "3HF172.HDK.lz", "3HS.HDK.lz", "5DS18.HDK.lz", "5DS1.HDK.lz", "5DS28.HDK.lz", "5DS2.HDK.lz", - "5HF144.HDK.lz", "5HS.HDK.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // 3DF800.HDK.lz - 1600, - - // 3DS.HDK.lz - 1440, - - // 3ES.HDK.lz - 5760, - - // 3HD6.HDK.lz - 3360, - - // 3HF168.HDK.lz - 3360, - - // 3HF16.HDK.lz - 3200, - - // 3HF172.HDK.lz - 3444, - - // 3HS.HDK.lz - 2880, - - // 5DS18.HDK.lz - 320, - - // 5DS1.HDK.lz - 360, - - // 5DS28.HDK.lz - 640, - - // 5DS2.HDK.lz - 720, - - // 5HF144.HDK.lz - 2880, - - // 5HS.HDK.lz - 2400 - }; - - public override uint[] _sectorSize => new uint[] - { - // 3DF800.HDK.lz - 512, - - // 3DS.HDK.lz - 512, - - // 3ES.HDK.lz - 512, - - // 3HD6.HDK.lz - 512, - - // 3HF168.HDK.lz - 512, - - // 3HF16.HDK.lz - 512, - - // 3HF172.HDK.lz - 512, - - // 3HS.HDK.lz - 512, - - // 5DS18.HDK.lz - 512, - - // 5DS1.HDK.lz - 512, - - // 5DS28.HDK.lz - 512, - - // 5DS2.HDK.lz - 512, - - // 5HF144.HDK.lz - 512, - - // 5HS.HDK.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // 3DF800.HDK.lz - MediaType.CBM_35_DD, - - // 3DS.HDK.lz - MediaType.DOS_35_DS_DD_9, - - // 3ES.HDK.lz - MediaType.ECMA_147, - - // 3HD6.HDK.lz - MediaType.DMF, - - // 3HF168.HDK.lz - MediaType.DMF, - - // 3HF16.HDK.lz - MediaType.Unknown, - - // 3HF172.HDK.lz - MediaType.FDFORMAT_35_HD, - - // 3HS.HDK.lz - MediaType.DOS_35_HD, - - // 5DS18.HDK.lz - MediaType.DOS_525_SS_DD_8, - - // 5DS1.HDK.lz - MediaType.DOS_525_SS_DD_9, - - // 5DS28.HDK.lz - MediaType.DOS_525_DS_DD_8, - - // 5DS2.HDK.lz - MediaType.DOS_525_DS_DD_9, - - // 5HF144.HDK.lz - MediaType.DOS_35_HD, - - // 5HS.HDK.lz - MediaType.DOS_525_HD - }; - - public override string[] _md5S => new[] - { - // 3DF800.HDK.lz - "26532a62985b51a2c3b877a57f6d257b", - - // 3DS.HDK.lz - "9827ba1b3e9cac41263caabd862e78f9", - - // 3ES.HDK.lz - "4aeafaf2a088d6a7406856dce8118567", - - // 3HD6.HDK.lz - "2bfd2e0a81bad704f8fc7758358cfcca", - - // 3HF168.HDK.lz - "7e3bf04f3660dd1052a335dc99441e44", - - // 3HF16.HDK.lz - "8eb8cb310feaf03c69fffd4f6e729847", - - // 3HF172.HDK.lz - "a58fd062f024b95714f1223a8bc2232f", - - // 3HS.HDK.lz - "00e61c06bf29f0c04a7eabe2dbd7efb6", - - // 5DS18.HDK.lz - "d81f5cb64fd0b99f138eab34110bbc3c", - - // 5DS1.HDK.lz - "a89006a75d13bee9202d1d6e52721ccb", - - // 5DS28.HDK.lz - "beef1cdb004dc69391d6b3d508988b95", - - // 5DS2.HDK.lz - "6213897b7dbf263f12abf76901d43862", - - // 5HF144.HDK.lz - "073a172879a71339ef4b00ebb47b67fc", - - // 5HS.HDK.lz - "02259cd5fbcc20f8484aa6bece7a37c6" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "MaxiDisk"); public override IMediaImage _plugin => new DiscImages.MaxiDisk(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "3DF800.HDK.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "26532a62985b51a2c3b877a57f6d257b" + }, + new BlockImageTestExpected + { + TestFile = "3DS.HDK.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "9827ba1b3e9cac41263caabd862e78f9" + }, + new BlockImageTestExpected + { + TestFile = "3ES.HDK.lz", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "4aeafaf2a088d6a7406856dce8118567" + }, + new BlockImageTestExpected + { + TestFile = "3HD6.HDK.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "2bfd2e0a81bad704f8fc7758358cfcca" + }, + new BlockImageTestExpected + { + TestFile = "3HF168.HDK.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7e3bf04f3660dd1052a335dc99441e44" + }, + new BlockImageTestExpected + { + TestFile = "3HF16.HDK.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "8eb8cb310feaf03c69fffd4f6e729847" + }, + new BlockImageTestExpected + { + TestFile = "3HF172.HDK.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "a58fd062f024b95714f1223a8bc2232f" + }, + new BlockImageTestExpected + { + TestFile = "3HS.HDK.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "00e61c06bf29f0c04a7eabe2dbd7efb6" + }, + new BlockImageTestExpected + { + TestFile = "5DS18.HDK.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "d81f5cb64fd0b99f138eab34110bbc3c" + }, + new BlockImageTestExpected + { + TestFile = "5DS1.HDK.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "a89006a75d13bee9202d1d6e52721ccb" + }, + new BlockImageTestExpected + { + TestFile = "5DS28.HDK.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "beef1cdb004dc69391d6b3d508988b95" + }, + new BlockImageTestExpected + { + TestFile = "5DS2.HDK.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "6213897b7dbf263f12abf76901d43862" + }, + new BlockImageTestExpected + { + TestFile = "5HF144.HDK.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "073a172879a71339ef4b00ebb47b67fc" + }, + new BlockImageTestExpected + { + TestFile = "5HS.HDK.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "02259cd5fbcc20f8484aa6bece7a37c6" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/NHDr0.cs b/Aaru.Tests/Images/NHDr0.cs index b348cb81c..ea8fcfe5a 100644 --- a/Aaru.Tests/Images/NHDr0.cs +++ b/Aaru.Tests/Images/NHDr0.cs @@ -37,109 +37,67 @@ namespace Aaru.Tests.Images [TestFixture] public class NHDr0 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "t98n_128.nhd.lz", "t98n_20.nhd.lz", "t98n_256.nhd.lz", "t98n_41.nhd.lz", "t98n_512.nhd.lz", - "t98n_65.nhd.lz", "t98n_80.nhd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // t98n_128.nhd.lz - 261120, - - // t98n_20.nhd.lz - 40800, - - // t98n_256.nhd.lz - 522240, - - // t98n_41.nhd.lz - 83640, - - // t98n_512.nhd.lz - 1044480, - - // t98n_65.nhd.lz - 132600, - - // t98n_80.nhd.lz - 163200 - }; - - public override uint[] _sectorSize => new uint[] - { - // t98n_128.nhd.lz - 512, - - // t98n_20.nhd.lz - 512, - - // t98n_256.nhd.lz - 512, - - // t98n_41.nhd.lz - 512, - - // t98n_512.nhd.lz - 512, - - // t98n_65.nhd.lz - 512, - - // t98n_80.nhd.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // t98n_128.nhd.lz - MediaType.GENERIC_HDD, - - // t98n_20.nhd.lz - MediaType.GENERIC_HDD, - - // t98n_256.nhd.lz - MediaType.GENERIC_HDD, - - // t98n_41.nhd.lz - MediaType.GENERIC_HDD, - - // t98n_512.nhd.lz - MediaType.GENERIC_HDD, - - // t98n_65.nhd.lz - MediaType.GENERIC_HDD, - - // t98n_80.nhd.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // t98n_128.nhd.lz - "af7c3cfa315b6661300017f865bf26d6", - - // t98n_20.nhd.lz - "bcb390d0b4d12feac29dbadc1a623c99", - - // t98n_256.nhd.lz - "e50e78b3742f5f89dd1a5573ba3141c4", - - // t98n_41.nhd.lz - "007acca6fb53f90728d78f7c40c2b094", - - // t98n_512.nhd.lz - "42d1cb6fc2a9df39ecd53002edd978d6", - - // t98n_65.nhd.lz - "b53f5b406234663de6c2bdffac88322d", - - // t98n_80.nhd.lz - "fe9ecc6f0b5beb9635a1595155941925" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "T-98 Next"); public override IMediaImage _plugin => new Nhdr0(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "t98n_128.nhd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 261120, + SectorSize = 512, + MD5 = "af7c3cfa315b6661300017f865bf26d6" + }, + new BlockImageTestExpected + { + TestFile = "t98n_20.nhd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 40800, + SectorSize = 512, + MD5 = "bcb390d0b4d12feac29dbadc1a623c99" + }, + new BlockImageTestExpected + { + TestFile = "t98n_256.nhd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 522240, + SectorSize = 512, + MD5 = "e50e78b3742f5f89dd1a5573ba3141c4" + }, + new BlockImageTestExpected + { + TestFile = "t98n_41.nhd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 83640, + SectorSize = 512, + MD5 = "007acca6fb53f90728d78f7c40c2b094" + }, + new BlockImageTestExpected + { + TestFile = "t98n_512.nhd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1044480, + SectorSize = 512, + MD5 = "42d1cb6fc2a9df39ecd53002edd978d6" + }, + new BlockImageTestExpected + { + TestFile = "t98n_65.nhd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 132600, + SectorSize = 512, + MD5 = "b53f5b406234663de6c2bdffac88322d" + }, + new BlockImageTestExpected + { + TestFile = "t98n_80.nhd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 163200, + SectorSize = 512, + MD5 = "fe9ecc6f0b5beb9635a1595155941925" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Nero/V1.cs b/Aaru.Tests/Images/Nero/V1.cs index 2f0af27d9..61f87843c 100644 --- a/Aaru.Tests/Images/Nero/V1.cs +++ b/Aaru.Tests/Images/Nero/V1.cs @@ -36,1745 +36,1984 @@ namespace Aaru.Tests.Images.Nero [TestFixture] public class V1 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.nrg", "jaguarcd.nrg", "pcengine.nrg", "pcfx.nrg", "report_audiocd.nrg", - "report_cdrom.nrg", "report_cdrw.nrg", "report_enhancedcd.nrg", "test_audiocd_cdtext.nrg", - "test_data_track_as_audio.nrg", "test_incd_udf200_finalized.nrg", "test_multi_karaoke_sampler.nrg", - "test_multiple_indexes.nrg", "test_multisession.nrg", "test_track2_inside_session2_leadin.nrg", - "test_track2_inside_track1.nrg", "test_videocd.nrg", "make_audiocd_dao.nrg", "make_audiocd_tao.nrg", - "make_data_mode1_joliet_dao.nrg", "make_data_mode1_joliet_level2_dao.nrg", - "make_data_mode1_joliet_level2_tao.nrg", "make_data_mode1_joliet_tao.nrg", "make_data_mode1_udf_dao.nrg", - "make_data_mode1_udf_tao.nrg", "make_data_mode2_joliet_dao.nrg", "make_data_mode2_joliet_level2_dao.nrg", - "make_data_mode2_joliet_level2_tao.nrg", "make_data_mode2_joliet_tao.nrg", "make_data_mode2_udf_dao.nrg", - "make_data_mode2_udf_tao.nrg", "make_mixed_mode_dao.nrg", "make_mixed_mode_tao.nrg", "make_udf_dao.nrg", - "make_udf_tao.nrg" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.nrg - 279300, - - // jaguarcd.nrg - 243587, - - // pcengine.nrg - 160956, - - // pcfx.nrg - 246680, - - // report_audiocd.nrg - 247073, - - // report_cdrom.nrg - 254265, - - // report_cdrw.nrg - 308224, - - // report_enhancedcd.nrg - 303316, - - // test_audiocd_cdtext.nrg - 277696, - - // test_data_track_as_audio.nrg - 62385, - - // test_incd_udf200_finalized.nrg - 350134, - - // test_multi_karaoke_sampler.nrg - 329158, - - // test_multiple_indexes.nrg - 65536, - - // test_multisession.nrg - 51168, - - // test_track2_inside_session2_leadin.nrg - 62385, - - // test_track2_inside_track1.nrg - 62385, - - // test_videocd.nrg - 48794, - - // make_audiocd_dao.nrg - 279196, - - // make_audiocd_tao.nrg - 277696, - - // make_data_mode1_joliet_dao.nrg - 83078, - - // make_data_mode1_joliet_level2_dao.nrg - 83084, - - // make_data_mode1_joliet_level2_tao.nrg - 83084, - - // make_data_mode1_joliet_tao.nrg - 83078, - - // make_data_mode1_udf_dao.nrg - 85733, - - // make_data_mode1_udf_tao.nrg - 85733, - - // make_data_mode2_joliet_dao.nrg - 83092, - - // make_data_mode2_joliet_level2_dao.nrg - 83092, - - // make_data_mode2_joliet_level2_tao.nrg - 83092, - - // make_data_mode2_joliet_tao.nrg - 83092, - - // make_data_mode2_udf_dao.nrg - 85747, - - // make_data_mode2_udf_tao.nrg - 85747, - - // make_mixed_mode_dao.nrg - 325928, - - // make_mixed_mode_tao.nrg - 324278, - - // make_udf_dao.nrg - 84985, - - // make_udf_tao.nrg - 84985 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.nrg - MediaType.CDDA, - - // jaguarcd.nrg - MediaType.CDDA, - - // pcengine.nrg - MediaType.CD, - - // pcfx.nrg - MediaType.CD, - - // report_audiocd.nrg - MediaType.CDDA, - - // report_cdrom.nrg - MediaType.CDROM, - - // report_cdrw.nrg - MediaType.CDROM, - - // report_enhancedcd.nrg - MediaType.CDPLUS, - - // test_audiocd_cdtext.nrg - MediaType.CDDA, - - // test_data_track_as_audio.nrg - MediaType.CDROMXA, - - // test_incd_udf200_finalized.nrg - MediaType.CDROMXA, - - // test_multi_karaoke_sampler.nrg - MediaType.CDROMXA, - - // test_multiple_indexes.nrg - MediaType.CD, - - // test_multisession.nrg - MediaType.CDROMXA, - - // test_track2_inside_session2_leadin.nrg - MediaType.CDROMXA, - - // test_track2_inside_track1.nrg - MediaType.CDROMXA, - - // test_videocd.nrg - MediaType.CDROMXA, - - // make_audiocd_dao.nrg - MediaType.CDDA, - - // make_audiocd_tao.nrg - MediaType.CDDA, - - // make_data_mode1_joliet_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_level2_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_level2_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_tao.nrg - MediaType.CDROM, - - // make_data_mode1_udf_dao.nrg - MediaType.CDROM, - - // make_data_mode1_udf_tao.nrg - MediaType.CDROM, - - // make_data_mode2_joliet_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_level2_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_level2_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_udf_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_udf_tao.nrg - MediaType.CDROMXA, - - // make_mixed_mode_dao.nrg - MediaType.CDROMXA, - - // make_mixed_mode_tao.nrg - MediaType.CDROMXA, - - // make_udf_dao.nrg - MediaType.CDROM, - - // make_udf_tao.nrg - MediaType.CDROM - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // jaguarcd.nrg - "79ade978aad90667f272a693012c11ca", - - // pcengine.nrg - "7119f623e909737e59732b935f103908", - - // pcfx.nrg - "5a1ed6d71094e8e7ae53b6604a6fcc0a", - - // report_audiocd.nrg - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdrom.nrg - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.nrg - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_enhancedcd.nrg - "dfd6c0bd02c19145b2a64d8a15912302", - - // test_audiocd_cdtext.nrg - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_data_track_as_audio.nrg - "d9d46cae2a3a46316c8e1411e84d40ef", - - // test_incd_udf200_finalized.nrg - "f95d6f978ddb4f98bbffda403f627fe1", - - // test_multi_karaoke_sampler.nrg - "1731384a29149b7e6f4c0d0d07f178ca", - - // test_multiple_indexes.nrg - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession.nrg - "f793fecc486a83cbe05b51c2d98059b9", - - // test_track2_inside_session2_leadin.nrg - "6fa06c10561343438736a8d3d9a965ea", - - // test_track2_inside_track1.nrg - "6fa06c10561343438736a8d3d9a965ea", - - // test_videocd.nrg - "ec7c86e6cfe5f965faa2488ae940e15a", - - // make_audiocd_dao.nrg - "UNKNOWN", - - // make_audiocd_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_level2_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_level2_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode1_udf_dao.nrg - "UNKNOWN", - - // make_data_mode1_udf_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_level2_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_level2_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode2_udf_dao.nrg - "UNKNOWN", - - // make_data_mode2_udf_tao.nrg - "UNKNOWN", - - // make_mixed_mode_dao.nrg - "UNKNOWN", - - // make_mixed_mode_tao.nrg - "UNKNOWN", - - // make_udf_dao.nrg - "UNKNOWN", - - // make_udf_tao.nrg - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // jaguarcd.nrg - "8086a3654d6dede562621d24ae18729e", - - // pcengine.nrg - "f1c1dbe1cd9df11fe2c1f0a97130c25f", - - // pcfx.nrg - "dac5dc0961fa435da3c7d433477cda1a", - - // report_audiocd.nrg - "ff35cfa013871b322ef54612e719c185", - - // report_cdrom.nrg - "6b4e35ec371770751f26163629253015", - - // report_cdrw.nrg - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_enhancedcd.nrg - "0038395e272242a29e84a1fb34a3a15e", - - // test_audiocd_cdtext.nrg - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_data_track_as_audio.nrg - "b3550e61649ba5276fed8d74f8e512ee", - - // test_incd_udf200_finalized.nrg - "6751e0ae7821f92221672b1cd5a1ff36", - - // test_multi_karaoke_sampler.nrg - "efe2b3fe51022ef8e0a62587294d1d9c", - - // test_multiple_indexes.nrg - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession.nrg - "199b85a01c27f55f463fc7d606adfafa", - - // test_track2_inside_session2_leadin.nrg - "608a73cd10bccdadde68523aead1ee72", - - // test_track2_inside_track1.nrg - "c82d20702d31bc15bdc91f7e107862ae", - - // test_videocd.nrg - "4a045788e69965efe0c87950d013e720", - - // make_audiocd_dao.nrg - "UNKNOWN", - - // make_audiocd_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_level2_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_level2_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode1_udf_dao.nrg - "UNKNOWN", - - // make_data_mode1_udf_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_level2_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_level2_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode2_udf_dao.nrg - "UNKNOWN", - - // make_data_mode2_udf_tao.nrg - "UNKNOWN", - - // make_mixed_mode_dao.nrg - "UNKNOWN", - - // make_mixed_mode_tao.nrg - "UNKNOWN", - - // make_udf_dao.nrg - "UNKNOWN", - - // make_udf_tao.nrg - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // jaguarcd.nrg - "83ec1010fc44694d69dc48bacec5481a", - - // pcengine.nrg - "9e9a6b51bc2e5ec67400cb33ad0ca33f", - - // pcfx.nrg - "e3a0d78b6c32f5795b1b513bd13a6bda", - - // report_audiocd.nrg - "9da6ad8f6f0cadd92509c10809da7296", - - // report_cdrom.nrg - "1994c303674718c74b35f9a4ea1d3515", - - // report_cdrw.nrg - "6fe81a972e750c68e08f6935e4d91e34", - - // report_enhancedcd.nrg - "e6f7319532f46c3fa4fd3569c65546e1", - - // test_audiocd_cdtext.nrg - "ca781a7afc4eb77c51f7c551ed45c03c", - - // test_data_track_as_audio.nrg - "5479a1115bb6481db69fd6262e8c6076", - - // test_incd_udf200_finalized.nrg - "65f938f7f9ac34fabd3ab94c14eb76b5", - - // test_multi_karaoke_sampler.nrg - "f8c96f120cac18c52178b99ef4c4e2a9", - - // test_multiple_indexes.nrg - "25bae9e30657e2f64a45e5f690e3ae9e", - - // test_multisession.nrg - "48656afdbc40b6df06486a04a4d62401", - - // test_track2_inside_session2_leadin.nrg - "933f1699ba88a70aff5062f9626ef529", - - // test_track2_inside_track1.nrg - "d8eed571f137c92f22bb858d78fc1e41", - - // test_videocd.nrg - "935a91f5850352818d92b71f1c87c393", - - // make_audiocd_dao.nrg - "UNKNOWN", - - // make_audiocd_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_level2_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_level2_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode1_udf_dao.nrg - "UNKNOWN", - - // make_data_mode1_udf_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_level2_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_level2_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode2_udf_dao.nrg - "UNKNOWN", - - // make_data_mode2_udf_tao.nrg - "UNKNOWN", - - // make_mixed_mode_dao.nrg - "UNKNOWN", - - // make_mixed_mode_tao.nrg - "UNKNOWN", - - // make_udf_dao.nrg - "UNKNOWN", - - // make_udf_tao.nrg - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.nrg - 22, - - // jaguarcd.nrg - 11, - - // pcengine.nrg - 16, - - // pcfx.nrg - 8, - - // report_audiocd.nrg - 14, - - // report_cdrom.nrg - 1, - - // report_cdrw.nrg - 1, - - // report_enhancedcd.nrg - 14, - - // test_audiocd_cdtext.nrg - 11, - - // test_data_track_as_audio.nrg - 2, - - // test_incd_udf200_finalized.nrg - 1, - - // test_multi_karaoke_sampler.nrg - 16, - - // test_multiple_indexes.nrg - 5, - - // test_multisession.nrg - 4, - - // test_track2_inside_session2_leadin.nrg - 3, - - // test_track2_inside_track1.nrg - 3, - - // test_videocd.nrg - 2, - - // make_audiocd_dao.nrg - 11, - - // make_audiocd_tao.nrg - 11, - - // make_data_mode1_joliet_dao.nrg - 1, - - // make_data_mode1_joliet_level2_dao.nrg - 1, - - // make_data_mode1_joliet_level2_tao.nrg - 1, - - // make_data_mode1_joliet_tao.nrg - 1, - - // make_data_mode1_udf_dao.nrg - 1, - - // make_data_mode1_udf_tao.nrg - 1, - - // make_data_mode2_joliet_dao.nrg - 1, - - // make_data_mode2_joliet_level2_dao.nrg - 1, - - // make_data_mode2_joliet_level2_tao.nrg - 1, - - // make_data_mode2_joliet_tao.nrg - 1, - - // make_data_mode2_udf_dao.nrg - 1, - - // make_data_mode2_udf_tao.nrg - 1, - - // make_mixed_mode_dao.nrg - 12, - - // make_mixed_mode_tao.nrg - 12, - - // make_udf_dao.nrg - 1, - - // make_udf_tao.nrg - 1 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // jaguarcd.nrg - new[] - { - // TODO: The image does not contain a second session, need to redump - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcengine.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // pcfx.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.nrg - new[] - { - 1 - }, - - // report_cdrw.nrg - new[] - { - 1 - }, - - // report_enhancedcd.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_audiocd_cdtext.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_data_track_as_audio.nrg - new[] - { - 1, 2 - }, - - // test_incd_udf200_finalized.nrg - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.nrg - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.nrg - new[] - { - 1, 2, 3, 4 - }, - - // test_track2_inside_session2_leadin.nrg - new[] - { - 1, 1, 1 - }, - - // test_track2_inside_track1.nrg - new[] - { - 1, 1, 2 - }, - - // test_videocd.nrg - new[] - { - 1, 1 - }, - - // make_audiocd_dao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // make_audiocd_tao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // make_data_mode1_joliet_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_level2_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_level2_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_udf_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_udf_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_level2_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_level2_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_udf_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_udf_tao.nrg - new[] - { - 1 - }, - - // make_mixed_mode_dao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // make_mixed_mode_tao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // make_udf_dao.nrg - new[] - { - 1 - }, - - // make_udf_tao.nrg - new[] - { - 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 69150, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // jaguarcd.nrg - new ulong[] - { - 0, 27640, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // pcengine.nrg - new ulong[] - { - 0, 3590, 38614, 47217, 53501, 61819, 68563, 75397, 83130, 86481, 91267, 99274, 106693, 112238, 120270, - 126229 - }, - - // pcfx.nrg - new ulong[] - { - 0, 4395, 4909, 5941, 42059, 220795, 225646, 235498 - }, - - // report_audiocd.nrg - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdrom.nrg - new ulong[] - { - 0 - }, - - // report_cdrw.nrg - new ulong[] - { - 0 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234180 - }, - - // test_audiocd_cdtext.nrg - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243588, 269750 - }, - - // test_data_track_as_audio.nrg - new ulong[] - { - 0, 36939 - }, - - // test_incd_udf200_finalized.nrg - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.nrg - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession.nrg - new ulong[] - { - 0, 19533, 32860, 45378 - }, - - // test_track2_inside_session2_leadin.nrg - new ulong[] - { - 0, 25500, 36939 - }, - - // test_track2_inside_track1.nrg - new ulong[] - { - 0, 13350, 36939 - }, - - // test_videocd.nrg - new ulong[] - { - 0, 1252 - }, - - // make_audiocd_dao.nrg - new ulong[] - { - 0, 27454, 62934, 4428, 22432, 54833, 9459, 45087, 4360, 244938, 271250 - }, - - // make_audiocd_tao.nrg - new ulong[] - { - 0, 27454, 62934, 4428, 22432, 54833, 9459, 45087, 4360, 244938, 271250 - }, - - // make_data_mode1_joliet_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_level2_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_level2_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_udf_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_udf_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_level2_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_level2_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_udf_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_udf_tao.nrg - new ulong[] - { - 0 - }, - - // make_mixed_mode_dao.nrg - new ulong[] - { - 0, 45382, 4586, 36450, 49960, 67964, 27229, 58575, 23403, 264817, 285629, 311941 - }, - - // make_mixed_mode_tao.nrg - new ulong[] - { - 0, 45382, 4586, 36450, 49960, 67964, 27229, 58575, 23403, 264817, 285629, 311941 - }, - - // make_udf_dao.nrg - new ulong[] - { - 0 - }, - - // make_udf_tao.nrg - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 279299 - }, - - // jaguarcd.nrg - new ulong[] - { - 16239, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // pcengine.nrg - new ulong[] - { - 3439, 38463, 47216, 53500, 61818, 68562, 75396, 83129, 86480, 91266, 99273, 106692, 112237, 120269, - 126078, 160955 - }, - - // pcfx.nrg - new ulong[] - { - 4244, 4908, 5940, 42058, 220644, 225645, 235497, 246679 - }, - - // report_audiocd.nrg - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdrom.nrg - new ulong[] - { - 254264 - }, - - // report_cdrw.nrg - new ulong[] - { - 308223 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 222779, - 303315 - }, - - // test_audiocd_cdtext.nrg - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269749, 277695 - }, - - // test_data_track_as_audio.nrg - new ulong[] - { - 25538, 62384 - }, - - // test_incd_udf200_finalized.nrg - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 1736, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.nrg - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.nrg - new ulong[] - { - 8132, 25959, 38477, 51167 - }, - - // test_track2_inside_session2_leadin.nrg - new ulong[] - { - 25499, 25538, 62384 - }, - - // test_track2_inside_track1.nrg - new ulong[] - { - 13199, 25688, 62384 - }, - - // test_videocd.nrg - new ulong[] - { - 1101, 48793 - }, - - // make_audiocd_dao.nrg - new ulong[] - { - 29901, 63035, 76625, 21381, 53798, 83944, 46484, 76477, 25321, 271399, 279495 - }, - - // make_audiocd_tao.nrg - new ulong[] - { - 29901, 63035, 76625, 21381, 53798, 83944, 46484, 76477, 25321, 271399, 279495 - }, - - // make_data_mode1_joliet_dao.nrg - new ulong[] - { - 83077 - }, - - // make_data_mode1_joliet_level2_dao.nrg - new ulong[] - { - 83083 - }, - - // make_data_mode1_joliet_level2_tao.nrg - new ulong[] - { - 83083 - }, - - // make_data_mode1_joliet_tao.nrg - new ulong[] - { - 83077 - }, - - // make_data_mode1_udf_dao.nrg - new ulong[] - { - 85732 - }, - - // make_data_mode1_udf_tao.nrg - new ulong[] - { - 85732 - }, - - // make_data_mode2_joliet_dao.nrg - new ulong[] - { - 83091 - }, - - // make_data_mode2_joliet_level2_dao.nrg - new ulong[] - { - 83091 - }, - - // make_data_mode2_joliet_level2_tao.nrg - new ulong[] - { - 83091 - }, - - // make_data_mode2_joliet_tao.nrg - new ulong[] - { - 83091 - }, - - // make_data_mode2_udf_dao.nrg - new ulong[] - { - 85746 - }, - - // make_data_mode2_udf_tao.nrg - new ulong[] - { - 85746 - }, - - // make_mixed_mode_dao.nrg - new ulong[] - { - 46581, 75583, 40167, 50141, 66913, 99330, 56340, 95600, 53593, 285778, 312090, 320186 - }, - - // make_mixed_mode_tao.nrg - new ulong[] - { - 46581, 75583, 40167, 50141, 66913, 99330, 56340, 95600, 53593, 285778, 312090, 320186 - }, - - // make_udf_dao.nrg - new ulong[] - { - 84984 - }, - - // make_udf_tao.nrg - new ulong[] - { - 84984 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 69300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // jaguarcd.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.nrg - new ulong[] - { - 150, 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // pcfx.nrg - new ulong[] - { - 150, 150, 0, 0, 0, 150, 0, 0 - }, - - // report_audiocd.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.nrg - new ulong[] - { - 150 - }, - - // report_cdrw.nrg - new ulong[] - { - 150 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_audiocd_cdtext.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_data_track_as_audio.nrg - new ulong[] - { - 150, 150 - }, - - // test_incd_udf200_finalized.nrg - new ulong[] - { - 150 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.nrg - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession.nrg - new ulong[] - { - 150, 150, 150, 150 - }, - - // test_track2_inside_session2_leadin.nrg - new ulong[] - { - 150, 150, 150 - }, - - // test_track2_inside_track1.nrg - new ulong[] - { - 150, 0, 150 - }, - - // test_videocd.nrg - new ulong[] - { - 150, 150 - }, - - // make_audiocd_dao.nrg - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // make_audiocd_tao.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // make_data_mode1_joliet_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_level2_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_level2_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_udf_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_udf_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_level2_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_level2_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_udf_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_udf_tao.nrg - new ulong[] - { - 150 - }, - - // make_mixed_mode_dao.nrg - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // make_mixed_mode_tao.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // make_udf_dao.nrg - new ulong[] - { - 150 - }, - - // make_udf_tao.nrg - new ulong[] - { - 150 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // jaguarcd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // pcengine.nrg - new byte[] - { - 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // pcfx.nrg - new byte[] - { - 0, 4, 4, 4, 4, 0, 0, 0 - }, - - // report_audiocd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.nrg - new byte[] - { - 4 - }, - - // report_cdrw.nrg - new byte[] - { - 4 - }, - - // report_enhancedcd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // test_audiocd_cdtext.nrg - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_data_track_as_audio.nrg - new byte[] - { - 4, 2 - }, - - // test_incd_udf200_finalized.nrg - new byte[] - { - 7 - }, - - // test_multi_karaoke_sampler.nrg - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.nrg - new byte[] - { - 2, 0, 0, 8, 1 - }, - - // test_multisession.nrg - new byte[] - { - 4, 4, 4, 4 - }, - - // test_track2_inside_session2_leadin.nrg - new byte[] - { - 4, 4, 4 - }, - - // test_track2_inside_track1.nrg - new byte[] - { - 4, 4, 4 - }, - - // test_videocd.nrg - new byte[] - { - 4, 4 - }, - - // make_audiocd_dao.nrg - new byte[] - { - 4 - }, - - // make_audiocd_tao.nrg - new byte[] - { - 4 - }, - - // make_data_mode1_joliet_dao.nrg - new byte[] - { - 4 - }, - - // make_data_mode1_joliet_level2_dao.nrg - new byte[] - { - 4 - }, - - // make_data_mode1_joliet_level2_tao.nrg - new byte[] - { - 4 - }, - - // make_data_mode1_joliet_tao.nrg - new byte[] - { - 4 - }, - - // make_data_mode1_udf_dao.nrg - new byte[] - { - 4 - }, - - // make_data_mode1_udf_tao.nrg - new byte[] - { - 4 - }, - - // make_data_mode2_joliet_dao.nrg - new byte[] - { - 4 - }, - - // make_data_mode2_joliet_level2_dao.nrg - new byte[] - { - 4 - }, - - // make_data_mode2_joliet_level2_tao.nrg - new byte[] - { - 4 - }, - - // make_data_mode2_joliet_tao.nrg - new byte[] - { - 4 - }, - - // make_data_mode2_udf_dao.nrg - new byte[] - { - 4 - }, - - // make_data_mode2_udf_tao.nrg - new byte[] - { - 4 - }, - - // make_mixed_mode_dao.nrg - new byte[] - { - 4 - }, - - // make_mixed_mode_tao.nrg - new byte[] - { - 4 - }, - - // make_udf_dao.nrg - new byte[] - { - 4 - }, - - // make_udf_tao.nrg - new byte[] - { - 4 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Nero Burning ROM", "V1"); public override IMediaImage _plugin => new DiscImages.Nero(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.nrg", + MediaType = MediaType.CDDA, + Sectors = 279300, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88799, + Pregap = 69300, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279299, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.nrg", + MediaType = MediaType.CDDA, + Sectors = 243587, + MD5 = "79ade978aad90667f272a693012c11ca", + LongMD5 = "8086a3654d6dede562621d24ae18729e", + SubchannelMD5 = "83ec1010fc44694d69dc48bacec5481a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16239, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 27640, + End = 28236, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243140, + End = 243586, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcengine.nrg", + MediaType = MediaType.CD, + Sectors = 160956, + MD5 = "7119f623e909737e59732b935f103908", + LongMD5 = "f1c1dbe1cd9df11fe2c1f0a97130c25f", + SubchannelMD5 = "9e9a6b51bc2e5ec67400cb33ad0ca33f", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3439, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 3590, + End = 38463, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 38614, + End = 47216, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47217, + End = 53500, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 53501, + End = 61818, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 61819, + End = 68562, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 68563, + End = 75396, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 75397, + End = 83129, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 83130, + End = 86480, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 86481, + End = 91266, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 91267, + End = 99273, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 99274, + End = 106692, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 106693, + End = 112237, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112238, + End = 120269, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 120270, + End = 126078, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126229, + End = 160955, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "pcfx.nrg", + MediaType = MediaType.CD, + Sectors = 246680, + MD5 = "5a1ed6d71094e8e7ae53b6604a6fcc0a", + LongMD5 = "dac5dc0961fa435da3c7d433477cda1a", + SubchannelMD5 = "e3a0d78b6c32f5795b1b513bd13a6bda", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4244, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4395, + End = 4908, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4909, + End = 5940, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 5941, + End = 42058, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 42059, + End = 220644, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 220795, + End = 225645, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 225646, + End = 235497, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 235498, + End = 246679, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.nrg", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + LongMD5 = "ff35cfa013871b322ef54612e719c185", + SubchannelMD5 = "9da6ad8f6f0cadd92509c10809da7296", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.nrg", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "6b4e35ec371770751f26163629253015", + SubchannelMD5 = "1994c303674718c74b35f9a4ea1d3515", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.nrg", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + SubchannelMD5 = "6fe81a972e750c68e08f6935e4d91e34", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.nrg", + MediaType = MediaType.CDPLUS, + Sectors = 303316, + MD5 = "dfd6c0bd02c19145b2a64d8a15912302", + LongMD5 = "0038395e272242a29e84a1fb34a3a15e", + SubchannelMD5 = "e6f7319532f46c3fa4fd3569c65546e1", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 222779, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234180, + End = 303315, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.nrg", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + LongMD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + SubchannelMD5 = "ca781a7afc4eb77c51f7c551ed45c03c", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243588, + End = 269749, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269750, + End = 277695, + Pregap = 0, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "d9d46cae2a3a46316c8e1411e84d40ef", + LongMD5 = "b3550e61649ba5276fed8d74f8e512ee", + SubchannelMD5 = "5479a1115bb6481db69fd6262e8c6076", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 350134, + MD5 = "f95d6f978ddb4f98bbffda403f627fe1", + LongMD5 = "6751e0ae7821f92221672b1cd5a1ff36", + SubchannelMD5 = "65f938f7f9ac34fabd3ab94c14eb76b5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 7 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "1731384a29149b7e6f4c0d0d07f178ca", + LongMD5 = "efe2b3fe51022ef8e0a62587294d1d9c", + SubchannelMD5 = "f8c96f120cac18c52178b99ef4c4e2a9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.nrg", + MediaType = MediaType.CD, + Sectors = 65536, + MD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + LongMD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + SubchannelMD5 = "25bae9e30657e2f64a45e5f690e3ae9e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 8 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 51168, + MD5 = "f793fecc486a83cbe05b51c2d98059b9", + LongMD5 = "199b85a01c27f55f463fc7d606adfafa", + SubchannelMD5 = "48656afdbc40b6df06486a04a4d62401", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19533, + End = 25959, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32860, + End = 38477, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45378, + End = 51167, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_session2_leadin.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "608a73cd10bccdadde68523aead1ee72", + SubchannelMD5 = "933f1699ba88a70aff5062f9626ef529", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25499, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 25500, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_track1.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 62385, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "c82d20702d31bc15bdc91f7e107862ae", + SubchannelMD5 = "d8eed571f137c92f22bb858d78fc1e41", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13199, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13350, + End = 25688, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36939, + End = 62384, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 48794, + MD5 = "ec7c86e6cfe5f965faa2488ae940e15a", + LongMD5 = "4a045788e69965efe0c87950d013e720", + SubchannelMD5 = "935a91f5850352818d92b71f1c87c393", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1101, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1252, + End = 48793, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_audiocd_dao.nrg", + MediaType = MediaType.CDDA, + Sectors = 279196, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 27454, + End = 63035, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 62934, + End = 76625, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4428, + End = 21381, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 22432, + End = 53798, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54833, + End = 83944, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 9459, + End = 46484, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 45087, + End = 76477, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4360, + End = 25321, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244938, + End = 271399, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271250, + End = 279495, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_audiocd_tao.nrg", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 27454, + End = 63035, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 62934, + End = 76625, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4428, + End = 21381, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 22432, + End = 53798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54833, + End = 83944, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 9459, + End = 46484, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 45087, + End = 76477, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4360, + End = 25321, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244938, + End = 271399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271250, + End = 279495, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 83078, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83077, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_level2_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 83084, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83083, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_level2_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 83084, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83083, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 83078, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83077, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_udf_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85733, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85732, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_udf_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85733, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85732, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 83092, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83091, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_level2_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 83092, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83091, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_level2_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 83092, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83091, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 83092, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83091, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_udf_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85747, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85746, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_udf_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85747, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85746, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_mixed_mode_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 325928, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 46581, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 45382, + End = 75583, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4586, + End = 40167, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36450, + End = 50141, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 49960, + End = 66913, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 67964, + End = 99330, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 27229, + End = 56340, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 58575, + End = 95600, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 23403, + End = 53593, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 264817, + End = 285778, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 285629, + End = 312090, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 311941, + End = 320186, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_mixed_mode_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 324278, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 46581, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 45382, + End = 75583, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4586, + End = 40167, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 36450, + End = 50141, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 49960, + End = 66913, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 67964, + End = 99330, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 27229, + End = 56340, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 58575, + End = 95600, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 23403, + End = 53593, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 264817, + End = 285778, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 285629, + End = 312090, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 311941, + End = 320186, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_udf_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84985, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84984, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_udf_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84985, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84984, + Pregap = 150, + Flags = 4 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Nero/V2.cs b/Aaru.Tests/Images/Nero/V2.cs index 900d83ba0..24092649f 100644 --- a/Aaru.Tests/Images/Nero/V2.cs +++ b/Aaru.Tests/Images/Nero/V2.cs @@ -36,5037 +36,3438 @@ namespace Aaru.Tests.Images.Nero [TestFixture] public class V2 : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.nrg", "jaguarcd.nrg", "securdisc.nrg", "report_audiocd.nrg", "report_cdrom.nrg", - "report_cdrw.nrg", "report_dvd+r-dl.nrg", "report_dvd+rw.nrg", "report_dvdram_v1.nrg", - "report_dvdram_v2.nrg", "report_dvdrom.nrg", "report_enhancedcd.nrg", "test_audiocd_cdtext.nrg", - "test_all_tracks_are_track1.nrg", "test_castrated_leadout.nrg", "test_data_track_as_audio.nrg", - "test_data_track_as_audio_fixed_sub.nrg", "test_incd_udf200_finalized.nrg", - "test_multi_karaoke_sampler.nrg", "test_multiple_indexes.nrg", "test_multisession.nrg", - "test_track1_overlaps_session2.nrg", "test_track2_inside_session2_leadin.nrg", - "test_track2_inside_track1.nrg", "test_videocd.nrg", "make_audiocd_dao.nrg", "make_audiocd_tao.nrg", - "make_data_dvd_iso9660-1999.nrg", "make_data_dvd_joliet.nrg", "make_data_mode1_iso9660-1999_dao.nrg", - "make_data_mode1_iso9660-1999_tao.nrg", "make_data_mode1_joliet_dao.nrg", "make_data_mode1_joliet_tao.nrg", - "make_data_mode1_joliet_udf_102_physical_dao.nrg", "make_data_mode1_joliet_udf_102_physical_tao.nrg", - "make_data_mode1_joliet_udf_150_physical_dao.nrg", "make_data_mode1_joliet_udf_150_physical_tao.nrg", - "make_data_mode1_joliet_udf_150_sparing_dao.nrg", "make_data_mode1_joliet_udf_150_sparing_tao.nrg", - "make_data_mode1_joliet_udf_150_virtual_dao.nrg", "make_data_mode1_joliet_udf_150_virtual_tao.nrg", - "make_data_mode1_joliet_udf_200_physical_dao.nrg", "make_data_mode1_joliet_udf_200_physical_tao.nrg", - "make_data_mode1_joliet_udf_200_sparing_dao.nrg", "make_data_mode1_joliet_udf_200_sparing_tao.nrg", - "make_data_mode1_joliet_udf_200_virtual_dao.nrg", "make_data_mode1_joliet_udf_200_virtual_tao.nrg", - "make_data_mode1_joliet_udf_201_physical_dao.nrg", "make_data_mode1_joliet_udf_201_physical_tao.nrg", - "make_data_mode1_joliet_udf_201_sparing_dao.nrg", "make_data_mode1_joliet_udf_201_sparing_tao.nrg", - "make_data_mode1_joliet_udf_201_virtual_dao.nrg", "make_data_mode1_joliet_udf_201_virtual_tao.nrg", - "make_data_mode2_iso9660-1999_dao.nrg", "make_data_mode2_iso9660-1999_tao.nrg", - "make_data_mode2_joliet_dao.nrg", "make_data_mode2_joliet_tao.nrg", - "make_data_mode2_joliet_udf_102_physical_dao.nrg", "make_data_mode2_joliet_udf_102_physical_tao.nrg", - "make_data_mode2_joliet_udf_150_physical_dao.nrg", "make_data_mode2_joliet_udf_150_physical_tao.nrg", - "make_data_mode2_joliet_udf_150_sparing_dao.nrg", "make_data_mode2_joliet_udf_150_sparing_tao.nrg", - "make_data_mode2_joliet_udf_150_virtual_dao.nrg", "make_data_mode2_joliet_udf_150_virtual_tao.nrg", - "make_data_mode2_joliet_udf_200_physical_dao.nrg", "make_data_mode2_joliet_udf_200_physical_tao.nrg", - "make_data_mode2_joliet_udf_200_sparing_dao.nrg", "make_data_mode2_joliet_udf_200_sparing_tao.nrg", - "make_data_mode2_joliet_udf_200_virtual_dao.nrg", "make_data_mode2_joliet_udf_200_virtual_tao.nrg", - "make_data_mode2_joliet_udf_201_physical_dao.nrg", "make_data_mode2_joliet_udf_201_physical_tao.nrg", - "make_data_mode2_joliet_udf_201_sparing_dao.nrg", "make_data_mode2_joliet_udf_201_sparing_tao.nrg", - "make_data_mode2_joliet_udf_201_virtual_dao.nrg", "make_data_mode2_joliet_udf_201_virtual_tao.nrg", - "make_data_udf_102_physical_dao.nrg", "make_data_udf_102_physical_tao.nrg", - "make_data_udf_150_physical_dao.nrg", "make_data_udf_150_physical_tao.nrg", - "make_data_udf_150_sparing_dao.nrg", "make_data_udf_150_sparing_tao.nrg", - "make_data_udf_150_virtual_dao.nrg", "make_data_udf_150_virtual_tao.nrg", - "make_data_udf_200_physical_dao.nrg", "make_data_udf_200_physical_tao.nrg", - "make_data_udf_200_sparing_dao.nrg", "make_data_udf_200_sparing_tao.nrg", - "make_data_udf_200_virtual_dao.nrg", "make_data_udf_200_virtual_tao.nrg", - "make_data_udf_201_physical_dao.nrg", "make_data_udf_201_physical_tao.nrg", - "make_data_udf_201_sparing_dao.nrg", "make_data_udf_201_sparing_tao.nrg", - "make_data_udf_201_virtual_dao.nrg", "make_data_udf_201_virtual_tao.nrg", "make_enhancedcd_dao.nrg", - "make_enhancedcd_tao.nrg", "make_hdburn_full.nrg", "make_hdburn.nrg", "make_mixed_mode_dao.nrg", - "make_mixed_mode_tao.nrg" - }; - public override uint[] _sectorSize => null; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.nrg - 279300, - - // jaguarcd.nrg - 232337, - - // securdisc.nrg - 169536, - - // report_audiocd.nrg - 247073, - - // report_cdrom.nrg - 254265, - - // report_cdrw.nrg - 308224, - - // report_dvd+r-dl.nrg - 3455936, - - // report_dvd+rw.nrg - 2295104, - - // report_dvdram_v1.nrg - 1218960, - - // report_dvdram_v2.nrg - 2236704, - - // report_dvdrom.nrg - 2146368, - - // report_enhancedcd.nrg - 303316, - - // test_audiocd_cdtext.nrg - 277696, - - // test_all_tracks_are_track1 - 25689, - - // test_castrated_leadout - 270050, - - // test_data_track_as_audio.nrg - 51135, - - // test_data_track_as_audio_fixed_sub.nrg - 51135, - - // test_incd_udf200_finalized.nrg - 350134, - - // test_multi_karaoke_sampler.nrg - 329158, - - // test_multiple_indexes.nrg - 65536, - - // test_multisession.nrg - 51168, - - // test_track1_overlaps_session2.nrg - 25539, - - // test_track2_inside_session2_leadin.nrg - 51135, - - // test_track2_inside_track1.nrg - 51135, - - // test_videocd.nrg - 48794, - - // make_audiocd_dao.nrg - 279196, - - // make_audiocd_tao.nrg - 277696, - - // make_data_dvd_iso9660-1999.nrg - 82704, - - // make_data_dvd_joliet.nrg - 83072, - - // make_data_mode1_iso9660-1999_dao.nrg - 82695, - - // make_data_mode1_iso9660-1999_tao.nrg - 82695, - - // make_data_mode1_joliet_dao.nrg - 83068, - - // make_data_mode1_joliet_tao.nrg - 83068, - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - 85364, - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - 85364, - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - 85364, - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - 85364, - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - 86529, - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - 86529, - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - 85368, - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - 85368, - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - 85366, - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - 85366, - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - 86529, - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - 86529, - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - 85370, - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - 85370, - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - 85366, - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - 85366, - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - 86529, - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - 86529, - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - 85370, - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - 85370, - - // make_data_mode2_iso9660-1999_dao.nrg - 82697, - - // make_data_mode2_iso9660-1999_tao.nrg - 82697, - - // make_data_mode2_joliet_dao.nrg - 83082, - - // make_data_mode2_joliet_tao.nrg - 83082, - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - 85378, - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - 85378, - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - 85378, - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - 85378, - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - 86529, - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - 86529, - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - 85382, - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - 85382, - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - 85380, - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - 85380, - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - 86529, - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - 86529, - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - 85384, - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - 85384, - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - 85380, - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - 85380, - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - 86529, - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - 86529, - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - 85384, - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - 85384, - - // make_data_udf_102_physical_dao.nrg - 84616, - - // make_data_udf_102_physical_tao.nrg - 84616, - - // make_data_udf_150_physical_dao.nrg - 84616, - - // make_data_udf_150_physical_tao.nrg - 84616, - - // make_data_udf_150_sparing_dao.nrg - 85793, - - // make_data_udf_150_sparing_tao.nrg - 85793, - - // make_data_udf_150_virtual_dao.nrg - 84620, - - // make_data_udf_150_virtual_tao.nrg - 84620, - - // make_data_udf_200_physical_dao.nrg - 84618, - - // make_data_udf_200_physical_tao.nrg - 84618, - - // make_data_udf_200_sparing_dao.nrg - 85793, - - // make_data_udf_200_sparing_tao.nrg - 85793, - - // make_data_udf_200_virtual_dao.nrg - 84622, - - // make_data_udf_200_virtual_tao.nrg - 84622, - - // make_data_udf_201_physical_dao.nrg - 84618, - - // make_data_udf_201_physical_tao.nrg - 84618, - - // make_data_udf_201_sparing_dao.nrg - 85793, - - // make_data_udf_201_sparing_tao.nrg - 85793, - - // make_data_udf_201_virtual_dao.nrg - 84622, - - // make_data_udf_201_virtual_tao.nrg - 84622, - - // make_enhancedcd_dao.nrg - 326011, - - // make_enhancedcd_tao.nrg - 324361, - - // make_hdburn_full.nrg - 727605, - - // make_hdburn.nrg - 31084, - - // make_mixed_mode_dao.nrg - 362041, - - // make_mixed_mode_tao.nrg - 360391 - }; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.nrg - MediaType.CDDA, - - // jaguarcd.nrg - MediaType.CDDA, - - // securdisc.nrg - MediaType.CDROM, - - // report_audiocd.nrg - MediaType.CDDA, - - // report_cdrom.nrg - MediaType.CDROM, - - // report_cdrw.nrg - MediaType.CDROM, - - // report_dvd+r-dl.nrg - MediaType.DVDROM, - - // report_dvd+rw.nrg - MediaType.DVDROM, - - // report_dvdram_v1.nrg - MediaType.DVDROM, - - // report_dvdram_v2.nrg - MediaType.DVDROM, - - // report_dvdrom.nrg - MediaType.DVDROM, - - // report_enhancedcd.nrg - MediaType.CDPLUS, - - // test_audiocd_cdtext.nrg - MediaType.CDDA, - - // test_all_tracks_are_track1.nrg - MediaType.CDROMXA, - - // test_castrated_leadout.nrg - MediaType.CDDA, - - // test_data_track_as_audio.nrg - MediaType.CDROMXA, - - // test_data_track_as_audio_fixed_sub.nrg - MediaType.CDROMXA, - - // test_incd_udf200_finalized.nrg - MediaType.CDROMXA, - - // test_multi_karaoke_sampler.nrg - MediaType.CDROMXA, - - // test_multiple_indexes.nrg - MediaType.CDDA, - - // test_multisession.nrg - MediaType.CDROMXA, - - // test_track1_overlaps_session2.nrg - MediaType.CDROMXA, - - // test_track2_inside_session2_leadin.nrg - MediaType.CDROMXA, - - // test_track2_inside_track1.nrg - MediaType.CDROMXA, - - // test_videocd.nrg - MediaType.CDROMXA, - - // make_audiocd_dao.nrg - MediaType.CDDA, - - // make_audiocd_tao.nrg - MediaType.CDDA, - - // make_data_dvd_iso9660-1999.nrg - MediaType.DVDROM, - - // make_data_dvd_joliet.nrg - MediaType.DVDROM, - - // make_data_mode1_iso9660-1999_dao.nrg - MediaType.CDROM, - - // make_data_mode1_iso9660-1999_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - MediaType.CDROM, - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - MediaType.CDROM, - - // make_data_mode2_iso9660-1999_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_iso9660-1999_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - MediaType.CDROMXA, - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - MediaType.CDROMXA, - - // make_data_udf_102_physical_dao.nrg - MediaType.CDROM, - - // make_data_udf_102_physical_tao.nrg - MediaType.CDROM, - - // make_data_udf_150_physical_dao.nrg - MediaType.CDROM, - - // make_data_udf_150_physical_tao.nrg - MediaType.CDROM, - - // make_data_udf_150_sparing_dao.nrg - MediaType.CDROM, - - // make_data_udf_150_sparing_tao.nrg - MediaType.CDROM, - - // make_data_udf_150_virtual_dao.nrg - MediaType.CDROM, - - // make_data_udf_150_virtual_tao.nrg - MediaType.CDROM, - - // make_data_udf_200_physical_dao.nrg - MediaType.CDROM, - - // make_data_udf_200_physical_tao.nrg - MediaType.CDROM, - - // make_data_udf_200_sparing_dao.nrg - MediaType.CDROM, - - // make_data_udf_200_sparing_tao.nrg - MediaType.CDROM, - - // make_data_udf_200_virtual_dao.nrg - MediaType.CDROM, - - // make_data_udf_200_virtual_tao.nrg - MediaType.CDROM, - - // make_data_udf_201_physical_dao.nrg - MediaType.CDROM, - - // make_data_udf_201_physical_tao.nrg - MediaType.CDROM, - - // make_data_udf_201_sparing_dao.nrg - MediaType.CDROM, - - // make_data_udf_201_sparing_tao.nrg - MediaType.CDROM, - - // make_data_udf_201_virtual_dao.nrg - MediaType.CDROM, - - // make_data_udf_201_virtual_tao.nrg - MediaType.CDROM, - - // make_enhancedcd_dao.nrg - MediaType.CDPLUS, - - // make_enhancedcd_tao.nrg - MediaType.CDPLUS, - - // make_hdburn_full.nrg - MediaType.CDROM, - - // make_hdburn.nrg - MediaType.CDROM, - - // make_mixed_mode_dao.nrg - MediaType.CDROMXA, - - // make_mixed_mode_tao.nrg - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // jaguarcd.nrg - "79ade978aad90667f272a693012c11ca", - - // securdisc.nrg - "7119f623e909737e59732b935f103908", - - // report_audiocd.nrg - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdrom.nrg - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.nrg - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_dvd+r-dl.nrg - "UNKNOWN", - - // report_dvd+rw.nrg - "UNKNOWN", - - // report_dvdram_v1.nrg - "UNKNOWN", - - // report_dvdram_v2.nrg - "UNKNOWN", - - // report_dvdrom.nrg - "UNKNOWN", - - // report_enhancedcd.nrg - "dfd6c0bd02c19145b2a64d8a15912302", - - // test_audiocd_cdtext.nrg - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_all_tracks_are_track1 - "UNKNOWN", - - // test_castrated_leadout - "UNKNOWN", - - // test_data_track_as_audio.nrg - "d9d46cae2a3a46316c8e1411e84d40ef", - - // test_data_track_as_audio_fixed_sub.nrg - "UNKNOWN", - - // test_incd_udf200_finalized.nrg - "f95d6f978ddb4f98bbffda403f627fe1", - - // test_multi_karaoke_sampler.nrg - "1731384a29149b7e6f4c0d0d07f178ca", - - // test_multiple_indexes.nrg - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession.nrg - "f793fecc486a83cbe05b51c2d98059b9", - - // test_track1_overlaps_session2.nrg - "UNKNOWN", - - // test_track2_inside_session2_leadin.nrg - "6fa06c10561343438736a8d3d9a965ea", - - // test_track2_inside_track1.nrg - "6fa06c10561343438736a8d3d9a965ea", - - // test_videocd.nrg - "ec7c86e6cfe5f965faa2488ae940e15a", - - // make_audiocd_dao.nrg - "UNKNOWN", - - // make_audiocd_tao.nrg - "UNKNOWN", - - // make_data_dvd_iso9660-1999.nrg - "UNKNOWN", - - // make_data_dvd_joliet.nrg - "UNKNOWN", - - // make_data_mode1_iso9660-1999_dao.nrg - "UNKNOWN", - - // make_data_mode1_iso9660-1999_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_iso9660-1999_dao.nrg - "UNKNOWN", - - // make_data_mode2_iso9660-1999_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_enhancedcd_dao.nrg - "UNKNOWN", - - // make_enhancedcd_tao.nrg - "UNKNOWN", - - // make_hdburn_full.nrg - "UNKNOWN", - - // make_hdburn.nrg - "UNKNOWN", - - // make_mixed_mode_dao.nrg - "UNKNOWN", - - // make_mixed_mode_tao.nrg - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // jaguarcd.nrg - "8086a3654d6dede562621d24ae18729e", - - // securdisc.nrg - "f1c1dbe1cd9df11fe2c1f0a97130c25f", - - // report_audiocd.nrg - "ff35cfa013871b322ef54612e719c185", - - // report_cdrom.nrg - "6b4e35ec371770751f26163629253015", - - // report_cdrw.nrg - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_dvd+r-dl.nrg - "UNKNOWN", - - // report_dvd+rw.nrg - "UNKNOWN", - - // report_dvdram_v1.nrg - "UNKNOWN", - - // report_dvdram_v2.nrg - "UNKNOWN", - - // report_dvdrom.nrg - "UNKNOWN", - - // report_enhancedcd.nrg - "0038395e272242a29e84a1fb34a3a15e", - - // test_all_tracks_are_track1 - "UNKNOWN", - - // test_castrated_leadout - "UNKNOWN", - - // test_audiocd_cdtext.nrg - "7c8fc7bb768cff15d702ac8cd10108d7", - - // test_data_track_as_audio.nrg - "b3550e61649ba5276fed8d74f8e512ee", - - // test_data_track_as_audio_fixed_sub.nrg - - // test_incd_udf200_finalized.nrg - "6751e0ae7821f92221672b1cd5a1ff36", - - // test_multi_karaoke_sampler.nrg - "efe2b3fe51022ef8e0a62587294d1d9c", - - // test_multiple_indexes.nrg - "1b13a8f8aeb23f0b8bbc68518217e771", - - // test_multisession.nrg - "199b85a01c27f55f463fc7d606adfafa", - - // test_track1_overlaps_session2.nrg - "UNKNOWN", - - // test_track2_inside_session2_leadin.nrg - "608a73cd10bccdadde68523aead1ee72", - - // test_track2_inside_track1.nrg - "c82d20702d31bc15bdc91f7e107862ae", - - // test_videocd.nrg - "4a045788e69965efe0c87950d013e720", - - // make_audiocd_dao.nrg - "UNKNOWN", - - // make_audiocd_tao.nrg - "UNKNOWN", - - // make_data_dvd_iso9660-1999.nrg - "UNKNOWN", - - // make_data_dvd_joliet.nrg - "UNKNOWN", - - // make_data_mode1_iso9660-1999_dao.nrg - "UNKNOWN", - - // make_data_mode1_iso9660-1999_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_iso9660-1999_dao.nrg - "UNKNOWN", - - // make_data_mode2_iso9660-1999_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_enhancedcd_dao.nrg - "UNKNOWN", - - // make_enhancedcd_tao.nrg - "UNKNOWN", - - // make_hdburn_full.nrg - "UNKNOWN", - - // make_hdburn.nrg - "UNKNOWN", - - // make_mixed_mode_dao.nrg - "UNKNOWN", - - // make_mixed_mode_tao.nrg - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // jaguarcd.nrg - "83ec1010fc44694d69dc48bacec5481a", - - // securdisc.nrg - "9e9a6b51bc2e5ec67400cb33ad0ca33f", - - // report_audiocd.nrg - "9da6ad8f6f0cadd92509c10809da7296", - - // report_cdrom.nrg - "1994c303674718c74b35f9a4ea1d3515", - - // report_cdrw.nrg - "6fe81a972e750c68e08f6935e4d91e34", - - // report_dvd+r-dl.nrg - "UNKNOWN", - - // report_dvd+rw.nrg - "UNKNOWN", - - // report_dvdram_v1.nrg - "UNKNOWN", - - // report_dvdram_v2.nrg - "UNKNOWN", - - // report_dvdrom.nrg - "UNKNOWN", - - // report_enhancedcd.nrg - "e6f7319532f46c3fa4fd3569c65546e1", - - // test_all_tracks_are_track1 - "UNKNOWN", - - // test_castrated_leadout - "UNKNOWN", - - // test_audiocd_cdtext.nrg - "ca781a7afc4eb77c51f7c551ed45c03c", - - // test_data_track_as_audio.nrg - "5479a1115bb6481db69fd6262e8c6076", - - // test_data_track_as_audio_fixed_sub.nrg - - // test_incd_udf200_finalized.nrg - "65f938f7f9ac34fabd3ab94c14eb76b5", - - // test_multi_karaoke_sampler.nrg - "f8c96f120cac18c52178b99ef4c4e2a9", - - // test_multiple_indexes.nrg - "25bae9e30657e2f64a45e5f690e3ae9e", - - // test_multisession.nrg - "48656afdbc40b6df06486a04a4d62401", - - // test_track1_overlaps_session2.nrg - - // test_track2_inside_session2_leadin.nrg - "933f1699ba88a70aff5062f9626ef529", - - // test_track2_inside_track1.nrg - "d8eed571f137c92f22bb858d78fc1e41", - - // test_videocd.nrg - "935a91f5850352818d92b71f1c87c393", - - // make_audiocd_dao.nrg - "UNKNOWN", - - // make_audiocd_tao.nrg - "UNKNOWN", - - // make_data_dvd_iso9660-1999.nrg - "UNKNOWN", - - // make_data_dvd_joliet.nrg - "UNKNOWN", - - // make_data_mode1_iso9660-1999_dao.nrg - "UNKNOWN", - - // make_data_mode1_iso9660-1999_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_iso9660-1999_dao.nrg - "UNKNOWN", - - // make_data_mode2_iso9660-1999_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_102_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_102_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_150_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_150_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_150_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_150_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_150_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_150_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_200_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_200_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_200_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_200_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_200_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_200_virtual_tao.nrg - "UNKNOWN", - - // make_data_udf_201_physical_dao.nrg - "UNKNOWN", - - // make_data_udf_201_physical_tao.nrg - "UNKNOWN", - - // make_data_udf_201_sparing_dao.nrg - "UNKNOWN", - - // make_data_udf_201_sparing_tao.nrg - "UNKNOWN", - - // make_data_udf_201_virtual_dao.nrg - "UNKNOWN", - - // make_data_udf_201_virtual_tao.nrg - "UNKNOWN", - - // make_enhancedcd_dao.nrg - "UNKNOWN", - - // make_enhancedcd_tao.nrg - "UNKNOWN", - - // make_hdburn_full.nrg - "UNKNOWN", - - // make_hdburn.nrg - "UNKNOWN", - - // make_mixed_mode_dao.nrg - "UNKNOWN", - - // make_mixed_mode_tao.nrg - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.nrg - 22, - - // jaguarcd.nrg - 11, - - // securdisc.nrg - 1, - - // report_audiocd.nrg - 14, - - // report_cdrom.nrg - 1, - - // report_cdrw.nrg - 1, - - // report_dvd+r-dl.nrg - 1, - - // report_dvd+rw.nrg - 1, - - // report_dvdram_v1.nrg - 1, - - // report_dvdram_v2.nrg - 1, - - // report_dvdrom.nrg - 1, - - // report_enhancedcd.nrg - 14, - - // test_audiocd_cdtext.nrg - 11, - - // test_all_tracks_are_track1 - 2, - - // test_castrated_leadout - 11, - - // test_data_track_as_audio.nrg - 2, - - // test_data_track_as_audio_fixed_sub.nrg - 2, - - // test_incd_udf200_finalized.nrg - 1, - - // test_multi_karaoke_sampler.nrg - 16, - - // test_multiple_indexes.nrg - 5, - - // test_multisession.nrg - 4, - - // test_track1_overlaps_session2.nrg - 1, - - // test_track2_inside_session2_leadin.nrg - 3, - - // test_track2_inside_track1.nrg - 3, - - // test_videocd.nrg - 2, - - // make_audiocd_dao.nrg - 11, - - // make_audiocd_tao.nrg - 11, - - // make_data_dvd_iso9660-1999.nrg - 1, - - // make_data_dvd_joliet.nrg - 1, - - // make_data_mode1_iso9660-1999_dao.nrg - 1, - - // make_data_mode1_iso9660-1999_tao.nrg - 1, - - // make_data_mode1_joliet_dao.nrg - 1, - - // make_data_mode1_joliet_tao.nrg - 1, - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - 1, - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - 1, - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - 1, - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - 1, - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - 1, - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - 1, - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - 1, - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - 1, - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - 1, - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - 1, - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - 1, - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - 1, - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - 1, - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - 1, - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - 1, - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - 1, - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - 1, - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - 1, - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - 1, - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - 1, - - // make_data_mode2_iso9660-1999_dao.nrg - 1, - - // make_data_mode2_iso9660-1999_tao.nrg - 1, - - // make_data_mode2_joliet_dao.nrg - 1, - - // make_data_mode2_joliet_tao.nrg - 1, - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - 1, - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - 1, - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - 1, - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - 1, - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - 1, - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - 1, - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - 1, - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - 1, - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - 1, - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - 1, - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - 1, - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - 1, - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - 1, - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - 1, - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - 1, - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - 1, - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - 1, - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - 1, - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - 1, - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - 1, - - // make_data_udf_102_physical_dao.nrg - 1, - - // make_data_udf_102_physical_tao.nrg - 1, - - // make_data_udf_150_physical_dao.nrg - 1, - - // make_data_udf_150_physical_tao.nrg - 1, - - // make_data_udf_150_sparing_dao.nrg - 1, - - // make_data_udf_150_sparing_tao.nrg - 1, - - // make_data_udf_150_virtual_dao.nrg - 1, - - // make_data_udf_150_virtual_tao.nrg - 1, - - // make_data_udf_200_physical_dao.nrg - 1, - - // make_data_udf_200_physical_tao.nrg - 1, - - // make_data_udf_200_sparing_dao.nrg - 1, - - // make_data_udf_200_sparing_tao.nrg - 1, - - // make_data_udf_200_virtual_dao.nrg - 1, - - // make_data_udf_200_virtual_tao.nrg - 1, - - // make_data_udf_201_physical_dao.nrg - 1, - - // make_data_udf_201_physical_tao.nrg - 1, - - // make_data_udf_201_sparing_dao.nrg - 1, - - // make_data_udf_201_sparing_tao.nrg - 1, - - // make_data_udf_201_virtual_dao.nrg - 1, - - // make_data_udf_201_virtual_tao.nrg - 1, - - // make_enhancedcd_dao.nrg - 12, - - // make_enhancedcd_tao.nrg - 12, - - // make_hdburn_full.nrg - 1, - - // make_hdburn.nrg - 1, - - // make_mixed_mode_dao.nrg - 12, - - // make_mixed_mode_tao.nrg - 12 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // jaguarcd.nrg - new[] - { - 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // securdisc.nrg - new[] - { - 1 - }, - - // report_audiocd.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.nrg - new[] - { - 1 - }, - - // report_cdrw.nrg - new[] - { - 1 - }, - - // report_dvd+r-dl.nrg - new[] - { - 1 - }, - - // report_dvd+rw.nrg - new[] - { - 1 - }, - - // report_dvdram_v1.nrg - new[] - { - 1 - }, - - // report_dvdram_v2.nrg - new[] - { - 1 - }, - - // report_dvdrom.nrg - new[] - { - 1 - }, - - // report_enhancedcd.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_audiocd_cdtext.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_all_tracks_are_track1 - new[] - { - 1, 2 - }, - - // test_castrated_leadout - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_data_track_as_audio.nrg - new[] - { - 1, 2 - }, - - // test_data_track_as_audio_fixed_sub.nrg - new[] - { - 1, 2 - }, - - // test_incd_udf200_finalized.nrg - new[] - { - 1 - }, - - // test_multi_karaoke_sampler.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multiple_indexes.nrg - new[] - { - 1, 1, 1, 1, 1 - }, - - // test_multisession.nrg - new[] - { - 1, 2, 3, 4 - }, - - // test_track1_overlaps_session2.nrg - new[] - { - 1 - }, - - // test_track2_inside_session2_leadin.nrg - new[] - { - 1, 1, 2 - }, - - // test_track2_inside_track1.nrg - new[] - { - 1, 1, 2 - }, - - // test_videocd.nrg - new[] - { - 1, 1 - }, - - // make_audiocd_dao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // make_audiocd_tao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // make_data_dvd_iso9660-1999.nrg - new[] - { - 1 - }, - - // make_data_dvd_joliet.nrg - new[] - { - 1 - }, - - // make_data_mode1_iso9660-1999_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_iso9660-1999_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_iso9660-1999_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_iso9660-1999_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_102_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_102_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_150_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_150_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_150_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_150_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_150_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_150_virtual_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_200_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_200_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_200_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_200_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_200_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_200_virtual_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_201_physical_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_201_physical_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_201_sparing_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_201_sparing_tao.nrg - new[] - { - 1 - }, - - // make_data_udf_201_virtual_dao.nrg - new[] - { - 1 - }, - - // make_data_udf_201_virtual_tao.nrg - new[] - { - 1 - }, - - // make_enhancedcd_dao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // make_enhancedcd_tao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // make_hdburn_full.nrg - new[] - { - 1 - }, - - // make_hdburn.nrg - new[] - { - 1 - }, - - // make_mixed_mode_dao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // make_mixed_mode_tao.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 69150, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // jaguarcd.nrg - new ulong[] - { - 0, 27640, 28237, 78892, 100054, 133203, 160908, 181466, 202024, 222582, 243140 - }, - - // securdisc.nrg - new ulong[] - { - 0 - }, - - // report_audiocd.nrg - new ulong[] - { - 0, 16399, 29901, 47800, 63164, 78775, 94582, 116975, 136016, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdrom.nrg - new ulong[] - { - 0 - }, - - // report_cdrw.nrg - new ulong[] - { - 0 - }, - - // report_dvd+r-dl.nrg - new ulong[] - { - 0 - }, - - // report_dvd+rw.nrg - new ulong[] - { - 0 - }, - - // report_dvdram_v1.nrg - new ulong[] - { - 0 - }, - - // report_dvdram_v2.nrg - new ulong[] - { - 0 - }, - - // report_dvdrom.nrg - new ulong[] - { - 0 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234180 - }, - - // test_audiocd_cdtext.nrg - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243738, 269900 - }, - - // test_all_tracks_are_track1 - new ulong[] - { - 0, 36789 - }, - - // test_castrated_leadout - new ulong[] - { - 0, 29902, 65184, 78576, 95230, 126297, 155109, 191835, 222926, 243738, 269900 - }, - - // test_data_track_as_audio.nrg - new ulong[] - { - 0, 36789 - }, - - // test_data_track_as_audio_fixed_sub.nrg - new ulong[] - { - 0, 36789 - }, - - // test_incd_udf200_finalized.nrg - new ulong[] - { - 0 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - }, - - // test_multiple_indexes.nrg - new ulong[] - { - 0, 4804, 13875, 41185, 54989 - }, - - // test_multisession.nrg - new ulong[] - { - 0, 19383, 32710, 45228 - }, - - // test_track1_overlaps_session2.nrg - new ulong[] - { - 113870 - }, - - // test_track2_inside_session2_leadin.nrg - new ulong[] - { - 0, 25350, 36789 - }, - - // test_track2_inside_track1.nrg - new ulong[] - { - 0, 13200, 36789 - }, - - // test_videocd.nrg - new ulong[] - { - 0, 950 - }, - - // make_audiocd_dao.nrg - new ulong[] - { - 0, 29902, 65334, 78876, 95680, 126897, 155859, 192735, 223976, 244938, 271250 - }, - - // make_audiocd_tao.nrg - new ulong[] - { - 0, 29902, 65334, 78876, 95680, 126897, 155859, 192735, 223976, 244938, 271250 - }, - - // make_data_dvd_iso9660-1999.nrg - new ulong[] - { - 0 - }, - - // make_data_dvd_joliet.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_iso9660-1999_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_iso9660-1999_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_iso9660-1999_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_iso9660-1999_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_102_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_102_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_150_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_150_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_150_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_150_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_150_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_150_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_200_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_200_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_200_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_200_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_200_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_200_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_201_physical_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_201_physical_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_201_sparing_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_201_sparing_tao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_201_virtual_dao.nrg - new ulong[] - { - 0 - }, - - // make_data_udf_201_virtual_tao.nrg - new ulong[] - { - 0 - }, - - // make_enhancedcd_dao.nrg - new ulong[] - { - 0, 29902, 65334, 78876, 95680, 126897, 155859, 192735, 223976, 244938, 271250, 281259 - }, - - // make_enhancedcd_tao.nrg - new ulong[] - { - 0, 29902, 65334, 78876, 95680, 126897, 155859, 192735, 223976, 244938, 271250, 281259 - }, - - // make_hdburn_full.nrg - new ulong[] - { - 0 - }, - - // make_hdburn.nrg - new ulong[] - { - 0 - }, - - // make_mixed_mode_dao.nrg - new ulong[] - { - 0, 82695, 112747, 148179, 161721, 178525, 209742, 238704, 275580, 296263, 317075, 343387 - }, - - // make_mixed_mode_tao.nrg - new ulong[] - { - 0, 82695, 112747, 148179, 161721, 178525, 209742, 238704, 275580, 296263, 317075, 343387 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 279299 - }, - - // jaguarcd.nrg - new ulong[] - { - 16239, 28236, 78891, 100053, 133202, 160907, 181465, 202023, 222581, 243139, 243586 - }, - - // securdisc.nrg - new ulong[] - { - 169535 - }, - - // report_audiocd.nrg - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdrom.nrg - new ulong[] - { - 254264 - }, - - // report_cdrw.nrg - new ulong[] - { - 308223 - }, - - // report_dvd+r-dl.nrg - new ulong[] - { - 3455935 - }, - - // report_dvd+rw.nrg - new ulong[] - { - 2295103 - }, - - // report_dvdram_v1.nrg - new ulong[] - { - 1218959 - }, - - // report_dvdram_v2.nrg - new ulong[] - { - 2236703 - }, - - // report_dvdrom.nrg - new ulong[] - { - 2146367 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 222779, - 303315 - }, - - // test_audiocd_cdtext.nrg - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269899, 277845 - }, - - // test_all_tracks_are_track1 - new ulong[] - { - 25538, 37088 - }, - - // test_castrated_leadout - new ulong[] - { - 29901, 65183, 78575, 95229, 126296, 155108, 191834, 222925, 243587, 269899, 270199 - }, - - // test_data_track_as_audio.nrg - new ulong[] - { - 25538, 62534 - }, - - // test_data_track_as_audio_fixed_sub.nrg - new ulong[] - { - 25538, 62534 - }, - - // test_incd_udf200_finalized.nrg - new ulong[] - { - 350133 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 1736, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - }, - - // test_multiple_indexes.nrg - new ulong[] - { - 4803, 13874, 41184, 54988, 65535 - }, - - // test_multisession.nrg - new ulong[] - { - 8132, 26109, 38627, 51317 - }, - - // test_track1_overlaps_session2.nrg - new ulong[] - { - //0 - 4294992834 - }, - - // test_track2_inside_session2_leadin.nrg - new ulong[] - { - 25349, 25688, 62534 - }, - - // test_track2_inside_track1.nrg - new ulong[] - { - 13199, 25688, 62534 - }, - - // test_videocd.nrg - new ulong[] - { - 949, 49095 - }, - - // make_audiocd_dao.nrg - new ulong[] - { - 29901, 65483, 79025, 95829, 127046, 156008, 192884, 224125, 244937, 271399, 279495 - }, - - // make_audiocd_tao.nrg - new ulong[] - { - 29901, 65483, 79025, 95829, 127046, 156008, 192884, 224125, 244937, 271399, 279495 - }, - - // make_data_dvd_iso9660-1999.nrg - new ulong[] - { - 82703 - }, - - // make_data_dvd_joliet.nrg - new ulong[] - { - 83071 - }, - - // make_data_mode1_iso9660-1999_dao.nrg - new ulong[] - { - 82694 - }, - - // make_data_mode1_iso9660-1999_tao.nrg - new ulong[] - { - 82694 - }, - - // make_data_mode1_joliet_dao.nrg - new ulong[] - { - 83067 - }, - - // make_data_mode1_joliet_tao.nrg - new ulong[] - { - 83067 - }, - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - new ulong[] - { - 85363 - }, - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - new ulong[] - { - 85363 - }, - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - new ulong[] - { - 85363 - }, - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - new ulong[] - { - 85363 - }, - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - new ulong[] - { - 85367 - }, - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - new ulong[] - { - 85367 - }, - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - new ulong[] - { - 85365 - }, - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - new ulong[] - { - 85365 - }, - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - new ulong[] - { - 85369 - }, - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - new ulong[] - { - 85369 - }, - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - new ulong[] - { - 85365 - }, - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - new ulong[] - { - 85365 - }, - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - new ulong[] - { - 85369 - }, - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - new ulong[] - { - 85369 - }, - - // make_data_mode2_iso9660-1999_dao.nrg - new ulong[] - { - 82696 - }, - - // make_data_mode2_iso9660-1999_tao.nrg - new ulong[] - { - 82696 - }, - - // make_data_mode2_joliet_dao.nrg - new ulong[] - { - 83081 - }, - - // make_data_mode2_joliet_tao.nrg - new ulong[] - { - 83081 - }, - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - new ulong[] - { - 85377 - }, - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - new ulong[] - { - 85377 - }, - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - new ulong[] - { - 85377 - }, - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - new ulong[] - { - 85377 - }, - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - new ulong[] - { - 85381 - }, - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - new ulong[] - { - 85381 - }, - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - new ulong[] - { - 85379 - }, - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - new ulong[] - { - 85379 - }, - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - new ulong[] - { - 85383 - }, - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - new ulong[] - { - 85383 - }, - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - new ulong[] - { - 85379 - }, - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - new ulong[] - { - 85379 - }, - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - new ulong[] - { - 86528 - }, - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - new ulong[] - { - 85383 - }, - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - new ulong[] - { - 85383 - }, - - // make_data_udf_102_physical_dao.nrg - new ulong[] - { - 84615 - }, - - // make_data_udf_102_physical_tao.nrg - new ulong[] - { - 84615 - }, - - // make_data_udf_150_physical_dao.nrg - new ulong[] - { - 84615 - }, - - // make_data_udf_150_physical_tao.nrg - new ulong[] - { - 84615 - }, - - // make_data_udf_150_sparing_dao.nrg - new ulong[] - { - 85792 - }, - - // make_data_udf_150_sparing_tao.nrg - new ulong[] - { - 85792 - }, - - // make_data_udf_150_virtual_dao.nrg - new ulong[] - { - 84619 - }, - - // make_data_udf_150_virtual_tao.nrg - new ulong[] - { - 84619 - }, - - // make_data_udf_200_physical_dao.nrg - new ulong[] - { - 84617 - }, - - // make_data_udf_200_physical_tao.nrg - new ulong[] - { - 84617 - }, - - // make_data_udf_200_sparing_dao.nrg - new ulong[] - { - 85792 - }, - - // make_data_udf_200_sparing_tao.nrg - new ulong[] - { - 85792 - }, - - // make_data_udf_200_virtual_dao.nrg - new ulong[] - { - 84621 - }, - - // make_data_udf_200_virtual_tao.nrg - new ulong[] - { - 84621 - }, - - // make_data_udf_201_physical_dao.nrg - new ulong[] - { - 84617 - }, - - // make_data_udf_201_physical_tao.nrg - new ulong[] - { - 84617 - }, - - // make_data_udf_201_sparing_dao.nrg - new ulong[] - { - 85792 - }, - - // make_data_udf_201_sparing_tao.nrg - new ulong[] - { - 85792 - }, - - // make_data_udf_201_virtual_dao.nrg - new ulong[] - { - 84621 - }, - - // make_data_udf_201_virtual_tao.nrg - new ulong[] - { - 84621 - }, - - // make_enhancedcd_dao.nrg - new ulong[] - { - 29901, 65483, 79025, 95829, 127046, 156008, 192884, 224125, 244937, 271399, 279495, 328223 - }, - - // make_enhancedcd_tao.nrg - new ulong[] - { - 29901, 65483, 79025, 95829, 127046, 156008, 192884, 224125, 244937, 271399, 279495, 328223 - }, - - // make_hdburn_full.nrg - new ulong[] - { - 727604 - }, - - // make_hdburn.nrg - new ulong[] - { - 31083 - }, - - // make_mixed_mode_dao.nrg - new ulong[] - { - 82694, 112896, 148328, 161870, 178674, 209891, 238853, 275729, 306970, 317224, 343536, 351632 - }, - - // make_mixed_mode_tao.nrg - new ulong[] - { - 82694, 112896, 148328, 161870, 178674, 209891, 238853, 275729, 306970, 317224, 343536, 351632 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 69300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // jaguarcd.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // securdisc.nrg - new ulong[] - { - 150 - }, - - // report_audiocd.nrg - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // report_cdrom.nrg - new ulong[] - { - 150 - }, - - // report_cdrw.nrg - new ulong[] - { - 150 - }, - - // report_dvd+r-dl.nrg - new ulong[] - { - 0 - }, - - // report_dvd+rw.nrg - new ulong[] - { - 0 - }, - - // report_dvdram_v1.nrg - new ulong[] - { - 0 - }, - - // report_dvdram_v2.nrg - new ulong[] - { - 0 - }, - - // report_dvdrom.nrg - new ulong[] - { - 0 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_audiocd_cdtext.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_all_tracks_are_track1 - new ulong[] - { - 150, 150 - }, - - // test_castrated_leadout - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_data_track_as_audio.nrg - new ulong[] - { - 150, 150 - }, - - // test_data_track_as_audio_fixed_sub.nrg - new ulong[] - { - 150, 150 - }, - - // test_incd_udf200_finalized.nrg - new ulong[] - { - 150 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.nrg - new ulong[] - { - 150, 0, 0, 0, 0 - }, - - // test_multisession.nrg - new ulong[] - { - 150, 150, 150, 150 - }, - - // test_track1_overlaps_session2.nrg - new ulong[] - { - 114020 - }, - - // test_track2_inside_session2_leadin.nrg - new ulong[] - { - 150, 150, 150 - }, - - // test_track2_inside_track1.nrg - new ulong[] - { - 150, 150, 150 - }, - - // test_videocd.nrg - new ulong[] - { - 150, 302 - }, - - // make_audiocd_dao.nrg - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // make_audiocd_tao.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // make_data_dvd_iso9660-1999.nrg - new ulong[] - { - 0 - }, - - // make_data_dvd_joliet.nrg - new ulong[] - { - 0 - }, - - // make_data_mode1_iso9660-1999_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_iso9660-1999_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_iso9660-1999_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_iso9660-1999_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_102_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_102_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_150_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_150_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_150_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_150_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_150_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_150_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_200_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_200_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_200_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_200_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_200_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_200_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_201_physical_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_201_physical_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_201_sparing_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_201_sparing_tao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_201_virtual_dao.nrg - new ulong[] - { - 150 - }, - - // make_data_udf_201_virtual_tao.nrg - new ulong[] - { - 150 - }, - - // make_enhancedcd_dao.nrg - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // make_enhancedcd_tao.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // make_hdburn_full.nrg - new ulong[] - { - 150 - }, - - // make_hdburn.nrg - new ulong[] - { - 150 - }, - - // make_mixed_mode_dao.nrg - new ulong[] - { - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150 - }, - - // make_mixed_mode_tao.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // jaguarcd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // securdisc.nrg - new byte[] - { - 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // report_audiocd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.nrg - new byte[] - { - 4 - }, - - // report_cdrw.nrg - new byte[] - { - 4 - }, - - // report_dvd+r-dl.nrg - new byte[] - { - 0 - }, - - // report_dvd+rw.nrg - new byte[] - { - 0 - }, - - // report_dvdram_v1.nrg - new byte[] - { - 0 - }, - - // report_dvdram_v2.nrg - new byte[] - { - 0 - }, - - // report_dvdrom.nrg - new byte[] - { - 0 - }, - - // report_enhancedcd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4 - }, - - // test_audiocd_cdtext.nrg - new byte[] - { - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 - }, - - // test_all_tracks_are_track1 - new byte[] - { - 0 - }, - - // test_castrated_leadout - new byte[] - { - 0 - }, - - // test_data_track_as_audio.nrg - new byte[] - { - 4, 2 - }, - - // test_data_track_as_audio_fixed_sub.nrg - new byte[] - { - 0 - }, - - // test_incd_udf200_finalized.nrg - new byte[] - { - 7 - }, - - // test_multi_karaoke_sampler.nrg - new byte[] - { - 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multiple_indexes.nrg - new byte[] - { - 2, 0, 0, 8, 1 - }, - - // test_multisession.nrg - new byte[] - { - 4, 4, 4, 4 - }, - - // test_track1_overlaps_session2.nrg - new byte[] - { - 0 - }, - - // test_track2_inside_session2_leadin.nrg - new byte[] - { - 4, 4, 4 - }, - - // test_track2_inside_track1.nrg - new byte[] - { - 4, 4, 4 - }, - - // test_videocd.nrg - new byte[] - { - 4, 4 - }, - - // make_audiocd_dao.nrg - new byte[] - { - 0 - }, - - // make_audiocd_tao.nrg - new byte[] - { - 0 - }, - - // make_data_dvd_iso9660-1999.nrg - new byte[] - { - 0 - }, - - // make_data_dvd_joliet.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_iso9660-1999_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_iso9660-1999_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_102_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_102_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_150_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_200_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode1_joliet_udf_201_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_iso9660-1999_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_iso9660-1999_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_102_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_102_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_150_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_200_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_mode2_joliet_udf_201_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_102_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_102_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_150_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_150_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_150_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_150_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_150_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_150_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_200_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_200_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_200_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_200_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_200_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_200_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_201_physical_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_201_physical_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_201_sparing_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_201_sparing_tao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_201_virtual_dao.nrg - new byte[] - { - 0 - }, - - // make_data_udf_201_virtual_tao.nrg - new byte[] - { - 0 - }, - - // make_enhancedcd_dao.nrg - new byte[] - { - 0 - }, - - // make_enhancedcd_tao.nrg - new byte[] - { - 0 - }, - - // make_hdburn_full.nrg - new byte[] - { - 0 - }, - - // make_hdburn.nrg - new byte[] - { - 0 - }, - - // make_mixed_mode_dao.nrg - new byte[] - { - 0 - }, - - // make_mixed_mode_tao.nrg - new byte[] - { - 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Nero Burning ROM", "V2"); public override IMediaImage _plugin => new DiscImages.Nero(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.nrg", + MediaType = MediaType.CDDA, + Sectors = 279300, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88799, + Pregap = 69300, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279299, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "jaguarcd.nrg", + MediaType = MediaType.CDDA, + Sectors = 232337, + MD5 = "79ade978aad90667f272a693012c11ca", + LongMD5 = "8086a3654d6dede562621d24ae18729e", + SubchannelMD5 = "83ec1010fc44694d69dc48bacec5481a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16239, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 27640, + End = 28236, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 28237, + End = 78891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 78892, + End = 100053, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 100054, + End = 133202, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 133203, + End = 160907, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 160908, + End = 181465, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 181466, + End = 202023, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 202024, + End = 222581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 222582, + End = 243139, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 243140, + End = 243586, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "securdisc.nrg", + MediaType = MediaType.CDROM, + Sectors = 169536, + MD5 = "7119f623e909737e59732b935f103908", + LongMD5 = "f1c1dbe1cd9df11fe2c1f0a97130c25f", + SubchannelMD5 = "9e9a6b51bc2e5ec67400cb33ad0ca33f", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 169535, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.nrg", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + LongMD5 = "ff35cfa013871b322ef54612e719c185", + SubchannelMD5 = "9da6ad8f6f0cadd92509c10809da7296", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16399, + End = 30050, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29901, + End = 47949, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47800, + End = 63313, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63164, + End = 78924, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78775, + End = 94731, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94582, + End = 117124, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 116975, + End = 136165, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136016, + End = 154071, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.nrg", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "6b4e35ec371770751f26163629253015", + SubchannelMD5 = "1994c303674718c74b35f9a4ea1d3515", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.nrg", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + SubchannelMD5 = "6fe81a972e750c68e08f6935e4d91e34", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+r-dl.nrg", + MediaType = MediaType.DVDROM, + Sectors = 3455936, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3455935, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd+rw.nrg", + MediaType = MediaType.DVDROM, + Sectors = 2295104, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2295103, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v1.nrg", + MediaType = MediaType.DVDROM, + Sectors = 1218960, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1218959, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.nrg", + MediaType = MediaType.DVDROM, + Sectors = 2236704, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2236703, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdrom.nrg", + MediaType = MediaType.DVDROM, + Sectors = 2146368, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146367, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.nrg", + MediaType = MediaType.CDPLUS, + Sectors = 303316, + MD5 = "dfd6c0bd02c19145b2a64d8a15912302", + LongMD5 = "0038395e272242a29e84a1fb34a3a15e", + SubchannelMD5 = "e6f7319532f46c3fa4fd3569c65546e1", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 222779, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234180, + End = 303315, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_audiocd_cdtext.nrg", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243738, + End = 269899, + Pregap = 0, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269900, + End = 277845, + Pregap = 0, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_all_tracks_are_track1.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 25689, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 37088, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_castrated_leadout.nrg", + MediaType = MediaType.CDDA, + Sectors = 270050, + MD5 = "UNKNOWN", + LongMD5 = "7c8fc7bb768cff15d702ac8cd10108d7", + SubchannelMD5 = "ca781a7afc4eb77c51f7c551ed45c03c", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65183, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65184, + End = 78575, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78576, + End = 95229, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95230, + End = 126296, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126297, + End = 155108, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155109, + End = 191834, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 191835, + End = 222925, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 222926, + End = 243587, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 243738, + End = 269899, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 269900, + End = 270199, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 51135, + MD5 = "d9d46cae2a3a46316c8e1411e84d40ef", + LongMD5 = "b3550e61649ba5276fed8d74f8e512ee", + SubchannelMD5 = "5479a1115bb6481db69fd6262e8c6076", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62534, + Pregap = 150, + Flags = 2 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_data_track_as_audio_fixed_sub.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 51135, + MD5 = "UNKNOWN", + LongMD5 = "6751e0ae7821f92221672b1cd5a1ff36", + SubchannelMD5 = "65f938f7f9ac34fabd3ab94c14eb76b5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25538, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62534, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_incd_udf200_finalized.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 350134, + MD5 = "f95d6f978ddb4f98bbffda403f627fe1", + LongMD5 = "efe2b3fe51022ef8e0a62587294d1d9c", + SubchannelMD5 = "f8c96f120cac18c52178b99ef4c4e2a9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 350133, + Pregap = 150, + Flags = 7 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "1731384a29149b7e6f4c0d0d07f178ca", + LongMD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + SubchannelMD5 = "25bae9e30657e2f64a45e5f690e3ae9e", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multiple_indexes.nrg", + MediaType = MediaType.CDDA, + Sectors = 65536, + MD5 = "1b13a8f8aeb23f0b8bbc68518217e771", + LongMD5 = "199b85a01c27f55f463fc7d606adfafa", + SubchannelMD5 = "48656afdbc40b6df06486a04a4d62401", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 4803, + Pregap = 150, + Flags = 2 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 4804, + End = 13874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13875, + End = 41184, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 41185, + End = 54988, + Pregap = 0, + Flags = 8 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 54989, + End = 65535, + Pregap = 0, + Flags = 1 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multisession.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 51168, + MD5 = "f793fecc486a83cbe05b51c2d98059b9", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "933f1699ba88a70aff5062f9626ef529", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 8132, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 19383, + End = 26109, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 3, + Start = 32710, + End = 38627, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 4, + Start = 45228, + End = 51317, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track1_overlaps_session2.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 25539, + MD5 = "UNKNOWN", + LongMD5 = "608a73cd10bccdadde68523aead1ee72", + SubchannelMD5 = "d8eed571f137c92f22bb858d78fc1e41", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 113870, + End = 4294992834, + Pregap = 114020, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_session2_leadin.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 51135, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "c82d20702d31bc15bdc91f7e107862ae", + SubchannelMD5 = "935a91f5850352818d92b71f1c87c393", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 25349, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 25350, + End = 25688, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62534, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_track2_inside_track1.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 51135, + MD5 = "6fa06c10561343438736a8d3d9a965ea", + LongMD5 = "4a045788e69965efe0c87950d013e720", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 13199, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 13200, + End = 25688, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 36789, + End = 62534, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_videocd.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 48794, + MD5 = "ec7c86e6cfe5f965faa2488ae940e15a", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 949, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 950, + End = 49095, + Pregap = 302, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_audiocd_dao.nrg", + MediaType = MediaType.CDDA, + Sectors = 279196, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65483, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65334, + End = 79025, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78876, + End = 95829, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95680, + End = 127046, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126897, + End = 156008, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155859, + End = 192884, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 192735, + End = 224125, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 223976, + End = 244937, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244938, + End = 271399, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271250, + End = 279495, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_audiocd_tao.nrg", + MediaType = MediaType.CDDA, + Sectors = 277696, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65483, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65334, + End = 79025, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78876, + End = 95829, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95680, + End = 127046, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126897, + End = 156008, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155859, + End = 192884, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 192735, + End = 224125, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 223976, + End = 244937, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244938, + End = 271399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271250, + End = 279495, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_dvd_iso9660-1999.nrg", + MediaType = MediaType.DVDROM, + Sectors = 82704, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 82703, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_dvd_joliet.nrg", + MediaType = MediaType.DVDROM, + Sectors = 83072, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83071, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_iso9660-1999_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 82695, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 82694, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_iso9660-1999_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 82695, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 82694, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 83068, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83067, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 83068, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83067, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_102_physical_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85364, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85363, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_102_physical_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85364, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85363, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_150_physical_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85364, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85363, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_150_physical_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85364, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85363, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_150_sparing_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_150_sparing_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_150_virtual_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85368, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85367, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_150_virtual_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85368, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85367, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_200_physical_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85366, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85365, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_200_physical_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85366, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85365, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_200_sparing_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_200_sparing_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_200_virtual_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85370, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85369, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_200_virtual_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85370, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85369, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_201_physical_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85366, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85365, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_201_physical_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85366, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85365, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_201_sparing_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_201_sparing_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_201_virtual_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85370, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85369, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode1_joliet_udf_201_virtual_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85370, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85369, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_iso9660-1999_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 82697, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 82696, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_iso9660-1999_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 82697, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 82696, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 83082, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83081, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 83082, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 83081, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_102_physical_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85378, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85377, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_102_physical_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85378, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85377, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_150_physical_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85378, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85377, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_150_physical_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85378, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85377, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_150_sparing_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_150_sparing_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_150_virtual_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85382, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85381, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_150_virtual_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85382, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85381, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_200_physical_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85380, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85379, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_200_physical_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85380, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85379, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_200_sparing_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_200_sparing_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_200_virtual_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85384, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85383, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_200_virtual_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85384, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85383, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_201_physical_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85380, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85379, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_201_physical_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85380, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85379, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_201_sparing_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_201_sparing_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 86529, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 86528, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_201_virtual_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85384, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85383, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_mode2_joliet_udf_201_virtual_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 85384, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85383, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_102_physical_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84616, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84615, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_102_physical_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84616, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84615, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_150_physical_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84616, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84615, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_150_physical_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84616, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84615, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_150_sparing_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85793, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85792, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_150_sparing_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85793, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85792, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_150_virtual_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84620, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84619, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_150_virtual_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84620, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84619, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_200_physical_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84618, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84617, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_200_physical_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84618, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84617, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_200_sparing_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85793, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85792, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_200_sparing_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85793, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85792, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_200_virtual_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84622, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84621, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_200_virtual_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84622, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84621, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_201_physical_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84618, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84617, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_201_physical_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84618, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84617, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_201_sparing_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85793, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85792, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_201_sparing_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 85793, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 85792, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_201_virtual_dao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84622, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84621, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_data_udf_201_virtual_tao.nrg", + MediaType = MediaType.CDROM, + Sectors = 84622, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 84621, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_enhancedcd_dao.nrg", + MediaType = MediaType.CDPLUS, + Sectors = 326011, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65483, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65334, + End = 79025, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78876, + End = 95829, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95680, + End = 127046, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126897, + End = 156008, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155859, + End = 192884, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 192735, + End = 224125, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 223976, + End = 244937, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244938, + End = 271399, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271250, + End = 279495, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 281259, + End = 328223, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_enhancedcd_tao.nrg", + MediaType = MediaType.CDPLUS, + Sectors = 324361, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 29901, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 29902, + End = 65483, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 65334, + End = 79025, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78876, + End = 95829, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 95680, + End = 127046, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 126897, + End = 156008, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155859, + End = 192884, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 192735, + End = 224125, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 223976, + End = 244937, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244938, + End = 271399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271250, + End = 279495, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 281259, + End = 328223, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_hdburn_full.nrg", + MediaType = MediaType.CDROM, + Sectors = 727605, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 727604, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_hdburn.nrg", + MediaType = MediaType.CDROM, + Sectors = 31084, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 31083, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_mixed_mode_dao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 362041, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 82694, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 82695, + End = 112896, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112747, + End = 148328, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 148179, + End = 161870, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 161721, + End = 178674, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 178525, + End = 209891, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 209742, + End = 238853, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 238704, + End = 275729, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 275580, + End = 306970, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 296263, + End = 317224, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 317075, + End = 343536, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 343387, + End = 351632, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "make_mixed_mode_tao.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 360391, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 82694, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 82695, + End = 112896, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112747, + End = 148328, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 148179, + End = 161870, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 161721, + End = 178674, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 178525, + End = 209891, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 209742, + End = 238853, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 238704, + End = 275729, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 275580, + End = 306970, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 296263, + End = 317224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 317075, + End = 343536, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 343387, + End = 351632, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/OpticalMediaImageTest.cs b/Aaru.Tests/Images/OpticalMediaImageTest.cs index ca8685ecc..09131a0f8 100644 --- a/Aaru.Tests/Images/OpticalMediaImageTest.cs +++ b/Aaru.Tests/Images/OpticalMediaImageTest.cs @@ -12,43 +12,30 @@ using NUnit.Framework; namespace Aaru.Tests.Images { - public abstract class OpticalMediaImageTest : BlockMediaImageTest + public abstract class OpticalMediaImageTest : BaseMediaImageTest { - const uint SECTORS_TO_READ = 256; - public abstract string[] _longMd5S { get; } - - public abstract string[] _subchannelMd5S { get; } - - public abstract int[] _tracks { get; } - - public abstract int[][] _trackSessions { get; } - - public abstract ulong[][] _trackStarts { get; } - - public abstract ulong[][] _trackEnds { get; } - - public abstract ulong[][] _trackPregaps { get; } - - public abstract byte[][] _trackFlags { get; } + const uint SECTORS_TO_READ = 256; + public abstract OpticalImageTestExpected[] Tests { get; } [Test] - public new void Info() + public void Info() { Environment.CurrentDirectory = _dataFolder; Assert.Multiple(() => { - for(int i = 0; i < _testFiles.Length; i++) + foreach(OpticalImageTestExpected test in Tests) { + string testFile = test.TestFile; var filtersList = new FiltersList(); - IFilter filter = filtersList.GetFilter(_testFiles[i]); - filter.Open(_testFiles[i]); + IFilter filter = filtersList.GetFilter(testFile); + filter.Open(testFile); var image = Activator.CreateInstance(_plugin.GetType()) as IOpticalMediaImage; - Assert.NotNull(image, $"Could not instantiate filesystem for {_testFiles[i]}"); + Assert.NotNull(image, $"Could not instantiate filesystem for {testFile}"); bool opened = image.Open(filter); - Assert.AreEqual(true, opened, $"Open: {_testFiles[i]}"); + Assert.AreEqual(true, opened, $"Open: {testFile}"); if(!opened) continue; @@ -57,29 +44,29 @@ namespace Aaru.Tests.Images { Assert.Multiple(() => { - Assert.AreEqual(_sectors[i], image.Info.Sectors, $"Sectors: {_testFiles[i]}"); + Assert.AreEqual(test.Sectors, image.Info.Sectors, $"Sectors: {testFile}"); - if(_sectorSize != null) - Assert.AreEqual(_sectorSize[i], image.Info.SectorSize, $"Sector size: {_testFiles[i]}"); + if((test.SectorSize > 0) != null) + Assert.AreEqual(test.SectorSize, image.Info.SectorSize, $"Sector size: {testFile}"); - Assert.AreEqual(_mediaTypes[i], image.Info.MediaType, $"Media type: {_testFiles[i]}"); + Assert.AreEqual(test.MediaType, image.Info.MediaType, $"Media type: {testFile}"); if(image.Info.XmlMediaType != XmlMediaType.OpticalDisc) return; - Assert.AreEqual(_tracks[i], image.Tracks.Count, $"Tracks: {_testFiles[i]}"); + Assert.AreEqual(test.Tracks, image.Tracks.Count, $"Tracks: {testFile}"); image.Tracks.Select(t => t.TrackSession).Should(). - BeEquivalentTo(_trackSessions[i], $"Track session: {_testFiles[i]}"); + BeEquivalentTo(test.Tracks.Select(s => s.Session), $"Track session: {testFile}"); image.Tracks.Select(t => t.TrackStartSector).Should(). - BeEquivalentTo(_trackStarts[i], $"Track start: {_testFiles[i]}"); + BeEquivalentTo(test.Tracks.Select(s => s.Start), $"Track start: {testFile}"); image.Tracks.Select(t => t.TrackEndSector).Should(). - BeEquivalentTo(_trackEnds[i], $"Track end: {_testFiles[i]}"); + BeEquivalentTo(test.Tracks.Select(s => s.End), $"Track end: {testFile}"); image.Tracks.Select(t => t.TrackPregap).Should(). - BeEquivalentTo(_trackPregaps[i], $"Track pregap: {_testFiles[i]}"); + BeEquivalentTo(test.Tracks.Select(s => s.Pregap), $"Track pregap: {testFile}"); int trackNo = 0; @@ -94,7 +81,7 @@ namespace Aaru.Tests.Images trackNo++; } - flags.Should().BeEquivalentTo(_trackFlags[i], $"Track flags: {_testFiles[i]}"); + flags.Should().BeEquivalentTo(test.Tracks.Select(s => s.Flags), $"Track flags: {testFile}"); }); } } @@ -102,23 +89,24 @@ namespace Aaru.Tests.Images } [Test] - public new void Hashes() + public void Hashes() { Environment.CurrentDirectory = Environment.CurrentDirectory = _dataFolder; Assert.Multiple(() => { - Parallel.For(0L, _testFiles.Length, (i, state) => + Parallel.For(0L, Tests.Length, (i, state) => { + string testFile = Tests[i].TestFile; var filtersList = new FiltersList(); - IFilter filter = filtersList.GetFilter(_testFiles[i]); - filter.Open(_testFiles[i]); + IFilter filter = filtersList.GetFilter(testFile); + filter.Open(testFile); var image = Activator.CreateInstance(_plugin.GetType()) as IOpticalMediaImage; - Assert.NotNull(image, $"Could not instantiate filesystem for {_testFiles[i]}"); + Assert.NotNull(image, $"Could not instantiate filesystem for {testFile}"); bool opened = image.Open(filter); - Assert.AreEqual(true, opened, $"Open: {_testFiles[i]}"); + Assert.AreEqual(true, opened, $"Open: {testFile}"); if(!opened) return; @@ -168,8 +156,8 @@ namespace Aaru.Tests.Images } } - Assert.AreEqual(@long ? _longMd5S[i] : _md5S[i], ctx.End(), - $"{(@long ? "Long hash" : "Hash")}: {_testFiles[i]}"); + Assert.AreEqual(@long ? Tests[i].LongMD5 : Tests[i].MD5, ctx.End(), + $"{(@long ? "Long hash" : "Hash")}: {testFile}"); } if(!image.Info.ReadableSectorTags.Contains(SectorTagType.CdSectorSubchannel)) @@ -207,7 +195,7 @@ namespace Aaru.Tests.Images } } - Assert.AreEqual(_subchannelMd5S[i], ctx.End(), $"Subchannel hash: {_testFiles[i]}"); + Assert.AreEqual(Tests[i].SubchannelMD5, ctx.End(), $"Subchannel hash: {testFile}"); } else { @@ -232,7 +220,7 @@ namespace Aaru.Tests.Images ctx.Update(sector); } - Assert.AreEqual(_md5S[i], ctx.End(), $"Hash: {_testFiles[i]}"); + Assert.AreEqual(Tests[i].MD5, ctx.End(), $"Hash: {testFile}"); } }); }); diff --git a/Aaru.Tests/Images/PowerISO/Cuesheet.cs b/Aaru.Tests/Images/PowerISO/Cuesheet.cs index ad8fade5b..2c14a8bb1 100644 --- a/Aaru.Tests/Images/PowerISO/Cuesheet.cs +++ b/Aaru.Tests/Images/PowerISO/Cuesheet.cs @@ -36,442 +36,660 @@ namespace Aaru.Tests.Images.PowerISO [TestFixture] public class Cuesheet : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.cue", "report_audiocd.cue", "report_cdrom.cue", "report_cdrw.cue", - - // Bad dumps by PowerISO - "report_dvdram_v1.cue", - - // Bad dumps by PowerISO - "report_dvdram_v2.cue", "report_enhancedcd.cue", "test_multi_karaoke_sampler.cue" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.cue - 7843003432840639, - - // report_audiocd.cue - 247073, - - // report_cdrom.cue - 254265, - - // report_cdrw.cue - 308224, - - // report_dvdram_v1.cue - 0, - - // report_dvdram_v2.cue - 0, - - // report_enhancedcd.cue - 303616, - - // test_multi_karaoke_sampler.cue - 329158 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.cue - MediaType.CDDA, - - // report_audiocd.cue - MediaType.CDDA, - - // report_cdrom.cue - MediaType.CDROM, - - // report_cdrw.cue - MediaType.CDROM, - - // report_dvdram_v1.cue - MediaType.CDDA, - - // report_dvdram_v2.cue - MediaType.CDDA, - - // report_enhancedcd.cue - MediaType.CDROMXA, - - // test_multi_karaoke_sampler.cue - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.cue - "UNKNOWN", - - // report_audiocd.cue - "c7e38c848cdaf293fc5f62df06bc574d", - - // report_cdrom.cue - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.cue - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // report_dvdram_v1.cue - "UNKNOWN", - - // report_dvdram_v2.cue - "UNKNOWN", - - // report_enhancedcd.cue - "945f0230f2bb461b036282b6fae0e303", - - // test_multi_karaoke_sampler.cue - "b91d0e8e6b486051734134dc009d8c0a" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.cue - "UNKNOWN", - - // report_audiocd.cue - "c7e38c848cdaf293fc5f62df06bc574d", - - // report_cdrom.cue - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw.cue - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_dvdram_v1.cue - "UNKNOWN", - - // report_dvdram_v2.cue - "UNKNOWN", - - // report_enhancedcd.cue - "8626728920d2caad7832c74518aece35", - - // test_multi_karaoke_sampler.cue - "b91d0e8e6b486051734134dc009d8c0a" - }; - - public override string[] _subchannelMd5S => new string[] - { - // cdiready_the_apprentice.cue - null, - - // report_audiocd.cue - null, - - // report_cdrom.cue - null, - - // report_cdrw.cue - null, - - // report_dvdram_v1.cue - null, - - // report_dvdram_v2.cue - null, - - // report_enhancedcd.cue - null, - - // test_multi_karaoke_sampler.cue - null - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.cue - 22, - - // report_audiocd.cue - 14, - - // report_cdrom.cue - 1, - - // report_cdrw.cue - 1, - - // report_dvdram_v1.cue - 1, - - // report_dvdram_v2.cue - 1, - - // report_enhancedcd.cue - 14, - - // test_multi_karaoke_sampler.cue - 16 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.cue - new[] - { - 1 - }, - - // report_cdrw.cue - new[] - { - 1 - }, - - // report_dvdram_v1.cue - new[] - { - 1 - }, - - // report_dvdram_v2.cue - new[] - { - 1 - }, - - // report_enhancedcd.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_multi_karaoke_sampler.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.cue - new ulong[] - { - 69150, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // report_audiocd.cue - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdrom.cue - new ulong[] - { - 0 - }, - - // report_cdrw.cue - new ulong[] - { - 0 - }, - - // report_dvdram_v1.cue - new ulong[] - { - 0 - }, - - // report_dvdram_v2.cue - new ulong[] - { - 0 - }, - - // report_enhancedcd.cue - new ulong[] - { - 0, 15511, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234030 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.cue - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 7843003432909788 - }, - - // report_audiocd.cue - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdrom.cue - new ulong[] - { - 254264 - }, - - // report_cdrw.cue - new ulong[] - { - 308223 - }, - - // report_dvdram_v1.cue - new ulong[] - { - 0 - }, - - // report_dvdram_v2.cue - new ulong[] - { - 0 - }, - - // report_enhancedcd.cue - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 234179, - 303315 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.cue - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.cue - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.cue - new ulong[] - { - 150 - }, - - // report_cdrw.cue - new ulong[] - { - 150 - }, - - // report_dvdram_v1.cue - new ulong[] - { - 150 - }, - - // report_dvdram_v2.cue - new ulong[] - { - 150 - }, - - // report_enhancedcd.cue - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.cue - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.cue - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.cue - new byte[] - { - 4 - }, - - // report_cdrw.cue - new byte[] - { - 4 - }, - - // report_dvdram_v1.cue - new byte[] - { - 4 - }, - - // report_dvdram_v2.cue - new byte[] - { - 4 - }, - - // report_enhancedcd.cue - new byte[] - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - }, - - // test_multi_karaoke_sampler.cue - new byte[] - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "PowerISO", "Cuesheet"); public override IMediaImage _plugin => new DiscImages.DiscJuggler(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.cue", + MediaType = MediaType.CDDA, + Sectors = 7843003432840639, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88799, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 7843003432909788, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.cue", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c7e38c848cdaf293fc5f62df06bc574d", + LongMD5 = "c7e38c848cdaf293fc5f62df06bc574d", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.cue", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.cue", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v1.cue", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.cue", + MediaType = MediaType.CDDA, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.cue", + MediaType = MediaType.CDROMXA, + Sectors = 303616, + MD5 = "945f0230f2bb461b036282b6fae0e303", + LongMD5 = "8626728920d2caad7832c74518aece35", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15511, + End = 33958, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 234179, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234030, + End = 303315, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.cue", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "b91d0e8e6b486051734134dc009d8c0a", + LongMD5 = "b91d0e8e6b486051734134dc009d8c0a", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 4 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/HyperV.cs b/Aaru.Tests/Images/QEMU/HyperV.cs index 162809310..efd7747c0 100644 --- a/Aaru.Tests/Images/QEMU/HyperV.cs +++ b/Aaru.Tests/Images/QEMU/HyperV.cs @@ -37,37 +37,20 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class HyperV : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "vhdx.vhdx.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // vhdx.vhdx.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // vhdx.vhdx.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // vhdx.vhdx.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // vhdx.vhdx.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "Hyper-V"); public override IMediaImage _plugin => new Vhdx(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "vhdx.vhdx.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/Parallels.cs b/Aaru.Tests/Images/QEMU/Parallels.cs index da7b525da..0bc389f33 100644 --- a/Aaru.Tests/Images/QEMU/Parallels.cs +++ b/Aaru.Tests/Images/QEMU/Parallels.cs @@ -36,37 +36,20 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class Parallels : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "parallels.hdd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // parallels.hdd.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // parallels.hdd.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // parallels.hdd.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // parallels.hdd.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "Parallels"); public override IMediaImage _plugin => new DiscImages.Parallels(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "parallels.hdd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/QCOW.cs b/Aaru.Tests/Images/QEMU/QCOW.cs index 1cf253b9b..ea2965db1 100644 --- a/Aaru.Tests/Images/QEMU/QCOW.cs +++ b/Aaru.Tests/Images/QEMU/QCOW.cs @@ -37,37 +37,20 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class QCOW : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "qcow.qc.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // qcow.qc.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // qcow.qc.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // qcow.qc.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // qcow.qc.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "QEMU Copy On Write"); public override IMediaImage _plugin => new Qcow(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "qcow.qc.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/QCOW2.cs b/Aaru.Tests/Images/QEMU/QCOW2.cs index b471f5310..d59380571 100644 --- a/Aaru.Tests/Images/QEMU/QCOW2.cs +++ b/Aaru.Tests/Images/QEMU/QCOW2.cs @@ -37,49 +37,28 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class QCOW2 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "qcow2.qc2.lz", "qcow2_compressed.qc2.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // qcow2.qc2.lz - 251904, - - // qcow2_compressed.qc2.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // qcow2.qc2.lz - 512, - - // qcow2_compressed.qc2.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // qcow2.qc2.lz - MediaType.GENERIC_HDD, - - // qcow2_compressed.qc2.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // qcow2.qc2.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed", - - // qcow2_compressed.qc2.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "QEMU Copy On Write 2"); public override IMediaImage _plugin => new Qcow2(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "qcow2.qc2.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + }, + new BlockImageTestExpected + { + TestFile = "qcow2_compressed.qc2.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/QCOW3.cs b/Aaru.Tests/Images/QEMU/QCOW3.cs index 1a211f3a8..f0eb302cf 100644 --- a/Aaru.Tests/Images/QEMU/QCOW3.cs +++ b/Aaru.Tests/Images/QEMU/QCOW3.cs @@ -37,49 +37,28 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class QCOW3 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "qcow3.qc2.lz", "qcow3_compressed.qc2.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // qcow3.qc2.lz - 251904, - - // qcow3_compressed.qc2.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // qcow3.qc2.lz - 512, - - // qcow3_compressed.qc2.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // qcow3.qc2.lz - MediaType.GENERIC_HDD, - - // qcow3_compressed.qc2.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // qcow3.qc2.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed", - - // qcow3_compressed.qc2.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "QEMU Copy On Write 3"); public override IMediaImage _plugin => new Qcow2(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "qcow3.qc2.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + }, + new BlockImageTestExpected + { + TestFile = "qcow3_compressed.qc2.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/QED.cs b/Aaru.Tests/Images/QEMU/QED.cs index a027857f8..be270bdc3 100644 --- a/Aaru.Tests/Images/QEMU/QED.cs +++ b/Aaru.Tests/Images/QEMU/QED.cs @@ -37,37 +37,20 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class QED : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "qed.qed.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // qed.qed.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // qed.qed.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // qed.qed.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // qed.qed.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "QEMU Enhanced Disk"); public override IMediaImage _plugin => new Qed(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "qed.qed.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/Raw.cs b/Aaru.Tests/Images/QEMU/Raw.cs index 042eade9b..8634be7ac 100644 --- a/Aaru.Tests/Images/QEMU/Raw.cs +++ b/Aaru.Tests/Images/QEMU/Raw.cs @@ -37,37 +37,20 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class Raw : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "raw.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // raw.img.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // raw.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // raw.img.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // raw.img.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "raw"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "raw.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/VMware5.cs b/Aaru.Tests/Images/QEMU/VMware5.cs index e15e0e31d..b8087cf19 100644 --- a/Aaru.Tests/Images/QEMU/VMware5.cs +++ b/Aaru.Tests/Images/QEMU/VMware5.cs @@ -37,37 +37,20 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class VMware5 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "vmdk5.vmdk.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // vmdk5.vmdk.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // vmdk5.vmdk.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // vmdk5.vmdk.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // vmdk5.vmdk.lz - "1ad282643cc7f97c57dc874b3d4ece9b" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "VMware 5"); public override IMediaImage _plugin => new VMware(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "vmdk5.vmdk.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "1ad282643cc7f97c57dc874b3d4ece9b" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/VMware6.cs b/Aaru.Tests/Images/QEMU/VMware6.cs index cb8748207..526049907 100644 --- a/Aaru.Tests/Images/QEMU/VMware6.cs +++ b/Aaru.Tests/Images/QEMU/VMware6.cs @@ -37,37 +37,20 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class VMware6 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "vmdk6.vmdk.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // vmdk6.vmdk.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // vmdk6.vmdk.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // vmdk6.vmdk.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // vmdk6.vmdk.lz - "1ad282643cc7f97c57dc874b3d4ece9b" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "VMware 6"); public override IMediaImage _plugin => new VMware(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "vmdk6.vmdk.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "1ad282643cc7f97c57dc874b3d4ece9b" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/VirtualBox.cs b/Aaru.Tests/Images/QEMU/VirtualBox.cs index e4ebcaf59..1800f8e4a 100644 --- a/Aaru.Tests/Images/QEMU/VirtualBox.cs +++ b/Aaru.Tests/Images/QEMU/VirtualBox.cs @@ -37,37 +37,20 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class VirtualBox : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "virtualbox.vdi.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // virtualbox.vdi.lz - 251904 - }; - - public override uint[] _sectorSize => new uint[] - { - // virtualbox.vdi.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // virtualbox.vdi.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // virtualbox.vdi.lz - "4bfc9e9e2dd86aa52ef709e77d2617ed" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "VirtualBox"); public override IMediaImage _plugin => new Vdi(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "virtualbox.vdi.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 251904, + SectorSize = 512, + MD5 = "4bfc9e9e2dd86aa52ef709e77d2617ed" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/QEMU/VirtualPC.cs b/Aaru.Tests/Images/QEMU/VirtualPC.cs index 4d6e3fcd7..9303a894e 100644 --- a/Aaru.Tests/Images/QEMU/VirtualPC.cs +++ b/Aaru.Tests/Images/QEMU/VirtualPC.cs @@ -37,61 +37,36 @@ namespace Aaru.Tests.Images.QEMU [TestFixture] public class VirtualPC : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "qemu_dynamic_250mb.vhd.lz", "qemu_fixed_10mb.vhd.lz", "virtualpc.vhd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // qemu_dynamic_250mb.vhd.lz" - 512064, - - // qemu_fixed_10mb.vhd.lz" - 20536, - - // virtualpc.vhd.lz - 251940 - }; - - public override uint[] _sectorSize => new uint[] - { - // qemu_dynamic_250mb.vhd.lz" - 512, - - // qemu_fixed_10mb.vhd.lz" - 512, - - // virtualpc.vhd.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // qemu_dynamic_250mb.vhd.lz" - MediaType.Unknown, - - // qemu_fixed_10mb.vhd.lz" - MediaType.Unknown, - - // virtualpc.vhd.lz - MediaType.Unknown - }; - - public override string[] _md5S => new[] - { - // qemu_dynamic_250mb.vhd.lz" - "0435d6781d14d34a32c6ac40f5e70d35", - - // qemu_fixed_10mb.vhd.lz" - "adfad4fb019f157e868baa39e7753db7", - - // virtualpc.vhd.lz - "6246bff640cb3a56d2611e7f8616384d" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "QEMU", "VirtualPC"); public override IMediaImage _plugin => new Vhd(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "qemu_dynamic_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 512064, + SectorSize = 512, + MD5 = "0435d6781d14d34a32c6ac40f5e70d35" + }, + new BlockImageTestExpected + { + TestFile = "qemu_fixed_10mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 20536, + SectorSize = 512, + MD5 = "adfad4fb019f157e868baa39e7753db7" + }, + new BlockImageTestExpected + { + TestFile = "virtualpc.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 251940, + SectorSize = 512, + MD5 = "6246bff640cb3a56d2611e7f8616384d" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/RayDIM.cs b/Aaru.Tests/Images/RayDIM.cs index fb4016bcd..b6bcff7a1 100644 --- a/Aaru.Tests/Images/RayDIM.cs +++ b/Aaru.Tests/Images/RayDIM.cs @@ -37,2637 +37,1724 @@ namespace Aaru.Tests.Images [TestFixture] public class RayDIM : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "5f1dd8.dim.lz", "5f1dd8_pass.dim.lz", "5f1dd.dim.lz", "5f1dd_pass.dim.lz", "5f2dd8.dim.lz", - "5f2dd8_pass.dim.lz", "5f2dd.dim.lz", "5f2dd_pass.dim.lz", "5f2hd.dim.lz", "5f2hd_pass.dim.lz", - "DSKA0000.DIM.lz", "DSKA0001.DIM.lz", "DSKA0009.DIM.lz", "DSKA0010.DIM.lz", "DSKA0012.DIM.lz", - "DSKA0013.DIM.lz", "DSKA0017.DIM.lz", "DSKA0018.DIM.lz", "DSKA0020.DIM.lz", "DSKA0021.DIM.lz", - "DSKA0024.DIM.lz", "DSKA0025.DIM.lz", "DSKA0028.DIM.lz", "DSKA0030.DIM.lz", "DSKA0035.DIM.lz", - "DSKA0036.DIM.lz", "DSKA0037.DIM.lz", "DSKA0038.DIM.lz", "DSKA0039.DIM.lz", "DSKA0040.DIM.lz", - "DSKA0041.DIM.lz", "DSKA0042.DIM.lz", "DSKA0043.DIM.lz", "DSKA0044.DIM.lz", "DSKA0045.DIM.lz", - "DSKA0046.DIM.lz", "DSKA0047.DIM.lz", "DSKA0048.DIM.lz", "DSKA0049.DIM.lz", "DSKA0050.DIM.lz", - "DSKA0051.DIM.lz", "DSKA0052.DIM.lz", "DSKA0053.DIM.lz", "DSKA0054.DIM.lz", "DSKA0055.DIM.lz", - "DSKA0056.DIM.lz", "DSKA0057.DIM.lz", "DSKA0058.DIM.lz", "DSKA0059.DIM.lz", "DSKA0060.DIM.lz", - "DSKA0061.DIM.lz", "DSKA0068.DIM.lz", "DSKA0069.DIM.lz", "DSKA0073.DIM.lz", "DSKA0074.DIM.lz", - "DSKA0075.DIM.lz", "DSKA0076.DIM.lz", "DSKA0077.DIM.lz", "DSKA0078.DIM.lz", "DSKA0080.DIM.lz", - "DSKA0081.DIM.lz", "DSKA0082.DIM.lz", "DSKA0083.DIM.lz", "DSKA0084.DIM.lz", "DSKA0085.DIM.lz", - "DSKA0105.DIM.lz", "DSKA0106.DIM.lz", "DSKA0107.DIM.lz", "DSKA0108.DIM.lz", "DSKA0109.DIM.lz", - "DSKA0110.DIM.lz", "DSKA0111.DIM.lz", "DSKA0112.DIM.lz", "DSKA0113.DIM.lz", "DSKA0114.DIM.lz", - "DSKA0115.DIM.lz", "DSKA0116.DIM.lz", "DSKA0117.DIM.lz", "DSKA0120.DIM.lz", "DSKA0121.DIM.lz", - "DSKA0122.DIM.lz", "DSKA0123.DIM.lz", "DSKA0124.DIM.lz", "DSKA0125.DIM.lz", "DSKA0126.DIM.lz", - "DSKA0147.DIM.lz", "DSKA0148.DIM.lz", "DSKA0151.DIM.lz", "DSKA0153.DIM.lz", "DSKA0154.DIM.lz", - "DSKA0157.DIM.lz", "DSKA0162.DIM.lz", "DSKA0163.DIM.lz", "DSKA0164.DIM.lz", "DSKA0166.DIM.lz", - "DSKA0168.DIM.lz", "DSKA0169.DIM.lz", "DSKA0170.DIM.lz", "DSKA0173.DIM.lz", "DSKA0174.DIM.lz", - "DSKA0175.DIM.lz", "DSKA0176.DIM.lz", "DSKA0177.DIM.lz", "DSKA0180.DIM.lz", "DSKA0181.DIM.lz", - "DSKA0205.DIM.lz", "DSKA0206.DIM.lz", "DSKA0207.DIM.lz", "DSKA0209.DIM.lz", "DSKA0210.DIM.lz", - "DSKA0211.DIM.lz", "DSKA0212.DIM.lz", "DSKA0216.DIM.lz", "DSKA0218.DIM.lz", "DSKA0219.DIM.lz", - "DSKA0220.DIM.lz", "DSKA0222.DIM.lz", "DSKA0232.DIM.lz", "DSKA0245.DIM.lz", "DSKA0246.DIM.lz", - "DSKA0262.DIM.lz", "DSKA0263.DIM.lz", "DSKA0264.DIM.lz", "DSKA0265.DIM.lz", "DSKA0266.DIM.lz", - "DSKA0267.DIM.lz", "DSKA0268.DIM.lz", "DSKA0269.DIM.lz", "DSKA0270.DIM.lz", "DSKA0271.DIM.lz", - "DSKA0272.DIM.lz", "DSKA0273.DIM.lz", "DSKA0280.DIM.lz", "DSKA0281.DIM.lz", "DSKA0282.DIM.lz", - "DSKA0283.DIM.lz", "DSKA0284.DIM.lz", "DSKA0285.DIM.lz", "DSKA0287.DIM.lz", "DSKA0288.DIM.lz", - "DSKA0289.DIM.lz", "DSKA0290.DIM.lz", "DSKA0299.DIM.lz", "DSKA0300.DIM.lz", "DSKA0301.DIM.lz", - "DSKA0302.DIM.lz", "DSKA0303.DIM.lz", "DSKA0304.DIM.lz", "DSKA0305.DIM.lz", "DSKA0307.DIM.lz", - "DSKA0308.DIM.lz", "DSKA0311.DIM.lz", "DSKA0314.DIM.lz", "DSKA0316.DIM.lz", "DSKA0317.DIM.lz", - "DSKA0318.DIM.lz", "DSKA0319.DIM.lz", "DSKA0320.DIM.lz", "DSKA0322.DIM.lz", "md1dd8.dim.lz", "md1dd.dim.lz", - "md1dd_fdformat_f200.dim.lz", "md1dd_fdformat_f205.dim.lz", "md2dd8.dim.lz", "md2dd.dim.lz", - "md2dd_fdformat_f400.dim.lz", "md2dd_fdformat_f410.dim.lz", "md2dd_fdformat_f720.dim.lz", - "md2dd_fdformat_f800.dim.lz", "md2dd_fdformat_f820.dim.lz", "md2dd_freedos_800s.dim.lz", - "md2dd_maxiform_1640s.dim.lz", "md2dd_maxiform_840s.dim.lz", "md2dd_qcopy_1476s.dim.lz", - "md2dd_qcopy_1600s.dim.lz", "md2dd_qcopy_1640s.dim.lz", "md2hd.dim.lz", "md2hd_fdformat_f144.dim.lz", - "md2hd_fdformat_f148.dim.lz", "md2hd_maxiform_2788s.dim.lz", "mf2dd_alt.dim.lz", "mf2dd_alt_pass.dim.lz", - "mf2dd.dim.lz", "mf2dd_fdformat_f800.dim.lz", "mf2dd_fdformat_f820.dim.lz", "mf2dd_freedos_1600s.dim.lz", - "mf2dd_maxiform_1600s.dim.lz", "mf2dd_qcopy_1494s.dim.lz", "mf2dd_qcopy_1600s.dim.lz", - "mf2dd_qcopy_1660s.dim.lz", "mf2ed.dim.lz", "mf2ed_pass.dim.lz", "mf2hd_alt.dim.lz", - "mf2hd_alt_pass.dim.lz", "mf2hd.dim.lz", "mf2hd_dmf.dim.lz", "mf2hd_fdformat_f168.dim.lz", - "mf2hd_fdformat_f16.dim.lz", "mf2hd_fdformat_f172.dim.lz", "mf2hd_freedos_3360s.dim.lz", - "mf2hd_maxiform_3200s.dim.lz", "mf2hd_pass.dim.lz", "mf2hd_qcopy_2460s.dim.lz", "mf2hd_qcopy_2720s.dim.lz", - "mf2hd_qcopy_2788s.dim.lz", "mf2hd_qcopy_2880s.dim.lz", "mf2hd_qcopy_2952s.dim.lz", - "mf2hd_qcopy_2988s.dim.lz", "mf2hd_qcopy_3200s.dim.lz", "mf2hd_qcopy_3320s.dim.lz", - "mf2hd_qcopy_3360s.dim.lz", "mf2hd_qcopy_3486s.dim.lz", "mf2hd_xdf_alt.dim.lz", "mf2hd_xdf_alt_pass.dim.lz" - }; - public override ulong[] _sectors => new ulong[] - { - // 5f1dd8.dim.lz - 336, - - // 5f1dd8_pass.dim.lz - 336, - - // 5f1dd.dim.lz - 378, - - // 5f1dd_pass.dim.lz - 378, - - // 5f2dd8.dim.lz - 672, - - // 5f2dd8_pass.dim.lz - 672, - - // 5f2dd.dim.lz - 756, - - // 5f2dd_pass.dim.lz - 756, - - // 5f2hd.dim.lz - 2460, - - // 5f2hd_pass.dim.lz - 2460, - - // DSKA0000.DIM.lz - 2880, - - // DSKA0001.DIM.lz - 1600, - - // DSKA0009.DIM.lz - 2880, - - // DSKA0010.DIM.lz - 1440, - - // DSKA0012.DIM.lz - 1600, - - // DSKA0013.DIM.lz - 1600, - - // DSKA0017.DIM.lz - 3040, - - // DSKA0018.DIM.lz - 1440, - - // DSKA0020.DIM.lz - 1440, - - // DSKA0021.DIM.lz - 3040, - - // DSKA0024.DIM.lz - 2880, - - // DSKA0025.DIM.lz - 1440, - - // DSKA0028.DIM.lz - 1440, - - // DSKA0030.DIM.lz - 1440, - - // DSKA0035.DIM.lz - 320, - - // DSKA0036.DIM.lz - 320, - - // DSKA0037.DIM.lz - 360, - - // DSKA0038.DIM.lz - 360, - - // DSKA0039.DIM.lz - 640, - - // DSKA0040.DIM.lz - 640, - - // DSKA0041.DIM.lz - 640, - - // DSKA0042.DIM.lz - 640, - - // DSKA0043.DIM.lz - 720, - - // DSKA0044.DIM.lz - 720, - - // DSKA0045.DIM.lz - 2400, - - // DSKA0046.DIM.lz - 2460, - - // DSKA0047.DIM.lz - 1280, - - // DSKA0048.DIM.lz - 1440, - - // DSKA0049.DIM.lz - 1476, - - // DSKA0050.DIM.lz - 1600, - - // DSKA0051.DIM.lz - 1640, - - // DSKA0052.DIM.lz - 2880, - - // DSKA0053.DIM.lz - 2952, - - // DSKA0054.DIM.lz - 3200, - - // DSKA0055.DIM.lz - 3280, - - // DSKA0056.DIM.lz - 3360, - - // DSKA0057.DIM.lz - 3444, - - // DSKA0058.DIM.lz - 3528, - - // DSKA0059.DIM.lz - 3528, - - // DSKA0060.DIM.lz - 3612, - - // DSKA0061.DIM.lz - 5120, - - // DSKA0068.DIM.lz - 720, - - // DSKA0069.DIM.lz - 1440, - - // DSKA0073.DIM.lz - 320, - - // DSKA0074.DIM.lz - 360, - - // DSKA0075.DIM.lz - 640, - - // DSKA0076.DIM.lz - 720, - - // DSKA0077.DIM.lz - 800, - - // DSKA0078.DIM.lz - 2400, - - // DSKA0080.DIM.lz - 1440, - - // DSKA0081.DIM.lz - 1600, - - // DSKA0082.DIM.lz - 2880, - - // DSKA0083.DIM.lz - 3024, - - // DSKA0084.DIM.lz - 3360, - - // DSKA0085.DIM.lz - 3528, - - // DSKA0105.DIM.lz - 400, - - // DSKA0106.DIM.lz - 420, - - // DSKA0107.DIM.lz - 800, - - // DSKA0108.DIM.lz - 840, - - // DSKA0109.DIM.lz - 1600, - - // DSKA0110.DIM.lz - 1640, - - // DSKA0111.DIM.lz - 2880, - - // DSKA0112.DIM.lz - 2952, - - // DSKA0113.DIM.lz - 1600, - - // DSKA0114.DIM.lz - 1640, - - // DSKA0115.DIM.lz - 2952, - - // DSKA0116.DIM.lz - 3200, - - // DSKA0117.DIM.lz - 3280, - - // DSKA0120.DIM.lz - 320, - - // DSKA0121.DIM.lz - 360, - - // DSKA0122.DIM.lz - 640, - - // DSKA0123.DIM.lz - 720, - - // DSKA0124.DIM.lz - 2400, - - // DSKA0125.DIM.lz - 1440, - - // DSKA0126.DIM.lz - 2880, - - // DSKA0147.DIM.lz - 320, - - // DSKA0148.DIM.lz - 640, - - // DSKA0151.DIM.lz - 360, - - // DSKA0153.DIM.lz - 720, - - // DSKA0154.DIM.lz - 800, - - // DSKA0157.DIM.lz - 720, - - // DSKA0162.DIM.lz - 320, - - // DSKA0163.DIM.lz - 720, - - // DSKA0164.DIM.lz - 840, - - // DSKA0166.DIM.lz - 1440, - - // DSKA0168.DIM.lz - 2400, - - // DSKA0169.DIM.lz - 2880, - - // DSKA0170.DIM.lz - 2880, - - // DSKA0173.DIM.lz - 720, - - // DSKA0174.DIM.lz - 1440, - - // DSKA0175.DIM.lz - 1600, - - // DSKA0176.DIM.lz - 1600, - - // DSKA0177.DIM.lz - 1600, - - // DSKA0180.DIM.lz - 3200, - - // DSKA0181.DIM.lz - 3360, - - // DSKA0205.DIM.lz - 1512, - - // DSKA0206.DIM.lz - 1440, - - // DSKA0207.DIM.lz - 3040, - - // DSKA0209.DIM.lz - 1600, - - // DSKA0210.DIM.lz - 1600, - - // DSKA0211.DIM.lz - 1440, - - // DSKA0212.DIM.lz - 1440, - - // DSKA0216.DIM.lz - 2880, - - // DSKA0218.DIM.lz - 5080, - - // DSKA0219.DIM.lz - 9144, - - // DSKA0220.DIM.lz - 13716, - - // DSKA0222.DIM.lz - 1600, - - // DSKA0232.DIM.lz - 630, - - // DSKA0245.DIM.lz - 1600, - - // DSKA0246.DIM.lz - 1600, - - // DSKA0262.DIM.lz - 1440, - - // DSKA0263.DIM.lz - 1600, - - // DSKA0264.DIM.lz - 1640, - - // DSKA0265.DIM.lz - 1680, - - // DSKA0266.DIM.lz - 2880, - - // DSKA0267.DIM.lz - 3040, - - // DSKA0268.DIM.lz - 3200, - - // DSKA0269.DIM.lz - 3280, - - // DSKA0270.DIM.lz - 3360, - - // DSKA0271.DIM.lz - 3360, - - // DSKA0272.DIM.lz - 3444, - - // DSKA0273.DIM.lz - 3528, - - // DSKA0280.DIM.lz - 360, - - // DSKA0281.DIM.lz - 400, - - // DSKA0282.DIM.lz - 640, - - // DSKA0283.DIM.lz - 720, - - // DSKA0284.DIM.lz - 800, - - // DSKA0285.DIM.lz - 840, - - // DSKA0287.DIM.lz - 1440, - - // DSKA0288.DIM.lz - 1512, - - // DSKA0289.DIM.lz - 1600, - - // DSKA0290.DIM.lz - 1640, - - // DSKA0299.DIM.lz - 320, - - // DSKA0300.DIM.lz - 360, - - // DSKA0301.DIM.lz - 640, - - // DSKA0302.DIM.lz - 720, - - // DSKA0303.DIM.lz - 2400, - - // DSKA0304.DIM.lz - 1440, - - // DSKA0305.DIM.lz - 2880, - - // DSKA0307.DIM.lz - 840, - - // DSKA0308.DIM.lz - 1600, - - // DSKA0311.DIM.lz - 3444, - - // DSKA0314.DIM.lz - 1440, - - // DSKA0316.DIM.lz - 2880, - - // DSKA0317.DIM.lz - 3360, - - // DSKA0318.DIM.lz - 3444, - - // DSKA0319.DIM.lz - 3360, - - // DSKA0320.DIM.lz - 3360, - - // DSKA0322.DIM.lz - 1404, - - // md1dd8.dim.lz - 320, - - // md1dd.dim.lz - 360, - - // md1dd_fdformat_f200.dim.lz - 400, - - // md1dd_fdformat_f205.dim.lz - 420, - - // md2dd8.dim.lz - 640, - - // md2dd.dim.lz - 720, - - // md2dd_fdformat_f400.dim.lz - 800, - - // md2dd_fdformat_f410.dim.lz - 840, - - // md2dd_fdformat_f720.dim.lz - 1440, - - // md2dd_fdformat_f800.dim.lz - 1600, - - // md2dd_fdformat_f820.dim.lz - 1640, - - // md2dd_freedos_800s.dim.lz - 800, - - // md2dd_maxiform_1640s.dim.lz - 1640, - - // md2dd_maxiform_840s.dim.lz - 840, - - // md2dd_qcopy_1476s.dim.lz - 1476, - - // md2dd_qcopy_1600s.dim.lz - 1600, - - // md2dd_qcopy_1640s.dim.lz - 1640, - - // md2hd.dim.lz - 2400, - - // md2hd_fdformat_f144.dim.lz - 2880, - - // md2hd_fdformat_f148.dim.lz - 2952, - - // md2hd_maxiform_2788s.dim.lz - 2788, - - // mf2dd_alt.dim.lz - 1476, - - // mf2dd_alt_pass.dim.lz - 1476, - - // mf2dd.dim.lz - 1440, - - // mf2dd_fdformat_f800.dim.lz - 1600, - - // mf2dd_fdformat_f820.dim.lz - 1640, - - // mf2dd_freedos_1600s.dim.lz - 1600, - - // mf2dd_maxiform_1600s.dim.lz - 1600, - - // mf2dd_qcopy_1494s.dim.lz - 1512, - - // mf2dd_qcopy_1600s.dim.lz - 1600, - - // mf2dd_qcopy_1660s.dim.lz - 1680, - - // mf2ed.dim.lz - 5904, - - // mf2ed_pass.dim.lz - 5904, - - // mf2hd_alt.dim.lz - 2952, - - // mf2hd_alt_pass.dim.lz - 2952, - - // mf2hd.dim.lz - 2880, - - // mf2hd_dmf.dim.lz - 3360, - - // mf2hd_fdformat_f168.dim.lz - 3360, - - // mf2hd_fdformat_f16.dim.lz - 3200, - - // mf2hd_fdformat_f172.dim.lz - 3444, - - // mf2hd_freedos_3360s.dim.lz - 3360, - - // mf2hd_maxiform_3200s.dim.lz - 3200, - - // mf2hd_pass.dim.lz - 2880, - - // mf2hd_qcopy_2460s.dim.lz - 2460, - - // mf2hd_qcopy_2720s.dim.lz - 2720, - - // mf2hd_qcopy_2788s.dim.lz - 2788, - - // mf2hd_qcopy_2880s.dim.lz - 2880, - - // mf2hd_qcopy_2952s.dim.lz - 2952, - - // mf2hd_qcopy_2988s.dim.lz - 3024, - - // mf2hd_qcopy_3200s.dim.lz - 3200, - - // mf2hd_qcopy_3320s.dim.lz - 3360, - - // mf2hd_qcopy_3360s.dim.lz - 3360, - - // mf2hd_qcopy_3486s.dim.lz - 3528, - - // mf2hd_xdf_alt.dim.lz - 3772, - - // mf2hd_xdf_alt_pass.dim.lz - 3772 - }; - - public override uint[] _sectorSize => new uint[] - { - // 5f1dd8.dim.lz - 512, - - // 5f1dd8_pass.dim.lz - 512, - - // 5f1dd.dim.lz - 512, - - // 5f1dd_pass.dim.lz - 512, - - // 5f2dd8.dim.lz - 512, - - // 5f2dd8_pass.dim.lz - 512, - - // 5f2dd.dim.lz - 512, - - // 5f2dd_pass.dim.lz - 512, - - // 5f2hd.dim.lz - 512, - - // 5f2hd_pass.dim.lz - 512, - - // DSKA0000.DIM.lz - 512, - - // DSKA0001.DIM.lz - 512, - - // DSKA0009.DIM.lz - 512, - - // DSKA0010.DIM.lz - 512, - - // DSKA0012.DIM.lz - 512, - - // DSKA0013.DIM.lz - 512, - - // DSKA0017.DIM.lz - 512, - - // DSKA0018.DIM.lz - 512, - - // DSKA0020.DIM.lz - 512, - - // DSKA0021.DIM.lz - 512, - - // DSKA0024.DIM.lz - 512, - - // DSKA0025.DIM.lz - 512, - - // DSKA0028.DIM.lz - 512, - - // DSKA0030.DIM.lz - 512, - - // DSKA0035.DIM.lz - 512, - - // DSKA0036.DIM.lz - 512, - - // DSKA0037.DIM.lz - 512, - - // DSKA0038.DIM.lz - 512, - - // DSKA0039.DIM.lz - 512, - - // DSKA0040.DIM.lz - 512, - - // DSKA0041.DIM.lz - 512, - - // DSKA0042.DIM.lz - 512, - - // DSKA0043.DIM.lz - 512, - - // DSKA0044.DIM.lz - 512, - - // DSKA0045.DIM.lz - 512, - - // DSKA0046.DIM.lz - 512, - - // DSKA0047.DIM.lz - 512, - - // DSKA0048.DIM.lz - 512, - - // DSKA0049.DIM.lz - 512, - - // DSKA0050.DIM.lz - 512, - - // DSKA0051.DIM.lz - 512, - - // DSKA0052.DIM.lz - 512, - - // DSKA0053.DIM.lz - 512, - - // DSKA0054.DIM.lz - 512, - - // DSKA0055.DIM.lz - 512, - - // DSKA0056.DIM.lz - 512, - - // DSKA0057.DIM.lz - 512, - - // DSKA0058.DIM.lz - 512, - - // DSKA0059.DIM.lz - 512, - - // DSKA0060.DIM.lz - 512, - - // DSKA0061.DIM.lz - 512, - - // DSKA0068.DIM.lz - 512, - - // DSKA0069.DIM.lz - 512, - - // DSKA0073.DIM.lz - 512, - - // DSKA0074.DIM.lz - 512, - - // DSKA0075.DIM.lz - 512, - - // DSKA0076.DIM.lz - 512, - - // DSKA0077.DIM.lz - 512, - - // DSKA0078.DIM.lz - 512, - - // DSKA0080.DIM.lz - 512, - - // DSKA0081.DIM.lz - 512, - - // DSKA0082.DIM.lz - 512, - - // DSKA0083.DIM.lz - 512, - - // DSKA0084.DIM.lz - 512, - - // DSKA0085.DIM.lz - 512, - - // DSKA0105.DIM.lz - 512, - - // DSKA0106.DIM.lz - 512, - - // DSKA0107.DIM.lz - 512, - - // DSKA0108.DIM.lz - 512, - - // DSKA0109.DIM.lz - 512, - - // DSKA0110.DIM.lz - 512, - - // DSKA0111.DIM.lz - 512, - - // DSKA0112.DIM.lz - 512, - - // DSKA0113.DIM.lz - 512, - - // DSKA0114.DIM.lz - 512, - - // DSKA0115.DIM.lz - 512, - - // DSKA0116.DIM.lz - 512, - - // DSKA0117.DIM.lz - 512, - - // DSKA0120.DIM.lz - 512, - - // DSKA0121.DIM.lz - 512, - - // DSKA0122.DIM.lz - 512, - - // DSKA0123.DIM.lz - 512, - - // DSKA0124.DIM.lz - 512, - - // DSKA0125.DIM.lz - 512, - - // DSKA0126.DIM.lz - 512, - - // DSKA0147.DIM.lz - 512, - - // DSKA0148.DIM.lz - 512, - - // DSKA0151.DIM.lz - 512, - - // DSKA0153.DIM.lz - 512, - - // DSKA0154.DIM.lz - 512, - - // DSKA0157.DIM.lz - 512, - - // DSKA0162.DIM.lz - 512, - - // DSKA0163.DIM.lz - 512, - - // DSKA0164.DIM.lz - 512, - - // DSKA0166.DIM.lz - 512, - - // DSKA0168.DIM.lz - 512, - - // DSKA0169.DIM.lz - 512, - - // DSKA0170.DIM.lz - 512, - - // DSKA0173.DIM.lz - 512, - - // DSKA0174.DIM.lz - 512, - - // DSKA0175.DIM.lz - 512, - - // DSKA0176.DIM.lz - 512, - - // DSKA0177.DIM.lz - 512, - - // DSKA0180.DIM.lz - 512, - - // DSKA0181.DIM.lz - 512, - - // DSKA0205.DIM.lz - 512, - - // DSKA0206.DIM.lz - 512, - - // DSKA0207.DIM.lz - 512, - - // DSKA0209.DIM.lz - 512, - - // DSKA0210.DIM.lz - 512, - - // DSKA0211.DIM.lz - 512, - - // DSKA0212.DIM.lz - 512, - - // DSKA0216.DIM.lz - 512, - - // DSKA0218.DIM.lz - 512, - - // DSKA0219.DIM.lz - 512, - - // DSKA0220.DIM.lz - 512, - - // DSKA0222.DIM.lz - 512, - - // DSKA0232.DIM.lz - 512, - - // DSKA0245.DIM.lz - 512, - - // DSKA0246.DIM.lz - 512, - - // DSKA0262.DIM.lz - 512, - - // DSKA0263.DIM.lz - 512, - - // DSKA0264.DIM.lz - 512, - - // DSKA0265.DIM.lz - 512, - - // DSKA0266.DIM.lz - 512, - - // DSKA0267.DIM.lz - 512, - - // DSKA0268.DIM.lz - 512, - - // DSKA0269.DIM.lz - 512, - - // DSKA0270.DIM.lz - 512, - - // DSKA0271.DIM.lz - 512, - - // DSKA0272.DIM.lz - 512, - - // DSKA0273.DIM.lz - 512, - - // DSKA0280.DIM.lz - 512, - - // DSKA0281.DIM.lz - 512, - - // DSKA0282.DIM.lz - 512, - - // DSKA0283.DIM.lz - 512, - - // DSKA0284.DIM.lz - 512, - - // DSKA0285.DIM.lz - 512, - - // DSKA0287.DIM.lz - 512, - - // DSKA0288.DIM.lz - 512, - - // DSKA0289.DIM.lz - 512, - - // DSKA0290.DIM.lz - 512, - - // DSKA0299.DIM.lz - 512, - - // DSKA0300.DIM.lz - 512, - - // DSKA0301.DIM.lz - 512, - - // DSKA0302.DIM.lz - 512, - - // DSKA0303.DIM.lz - 512, - - // DSKA0304.DIM.lz - 512, - - // DSKA0305.DIM.lz - 512, - - // DSKA0307.DIM.lz - 512, - - // DSKA0308.DIM.lz - 512, - - // DSKA0311.DIM.lz - 512, - - // DSKA0314.DIM.lz - 512, - - // DSKA0316.DIM.lz - 512, - - // DSKA0317.DIM.lz - 512, - - // DSKA0318.DIM.lz - 512, - - // DSKA0319.DIM.lz - 512, - - // DSKA0320.DIM.lz - 512, - - // DSKA0322.DIM.lz - 512, - - // md1dd8.dim.lz - 512, - - // md1dd.dim.lz - 512, - - // md1dd_fdformat_f200.dim.lz - 512, - - // md1dd_fdformat_f205.dim.lz - 512, - - // md2dd8.dim.lz - 512, - - // md2dd.dim.lz - 512, - - // md2dd_fdformat_f400.dim.lz - 512, - - // md2dd_fdformat_f410.dim.lz - 512, - - // md2dd_fdformat_f720.dim.lz - 512, - - // md2dd_fdformat_f800.dim.lz - 512, - - // md2dd_fdformat_f820.dim.lz - 512, - - // md2dd_freedos_800s.dim.lz - 512, - - // md2dd_maxiform_1640s.dim.lz - 512, - - // md2dd_maxiform_840s.dim.lz - 512, - - // md2dd_qcopy_1476s.dim.lz - 512, - - // md2dd_qcopy_1600s.dim.lz - 512, - - // md2dd_qcopy_1640s.dim.lz - 512, - - // md2hd.dim.lz - 512, - - // md2hd_fdformat_f144.dim.lz - 512, - - // md2hd_fdformat_f148.dim.lz - 512, - - // md2hd_maxiform_2788s.dim.lz - 512, - - // mf2dd_alt.dim.lz - 512, - - // mf2dd_alt_pass.dim.lz - 512, - - // mf2dd.dim.lz - 512, - - // mf2dd_fdformat_f800.dim.lz - 512, - - // mf2dd_fdformat_f820.dim.lz - 512, - - // mf2dd_freedos_1600s.dim.lz - 512, - - // mf2dd_maxiform_1600s.dim.lz - 512, - - // mf2dd_qcopy_1494s.dim.lz - 512, - - // mf2dd_qcopy_1600s.dim.lz - 512, - - // mf2dd_qcopy_1660s.dim.lz - 512, - - // mf2ed.dim.lz - 512, - - // mf2ed_pass.dim.lz - 512, - - // mf2hd_alt.dim.lz - 512, - - // mf2hd_alt_pass.dim.lz - 512, - - // mf2hd.dim.lz - 512, - - // mf2hd_dmf.dim.lz - 512, - - // mf2hd_fdformat_f168.dim.lz - 512, - - // mf2hd_fdformat_f16.dim.lz - 512, - - // mf2hd_fdformat_f172.dim.lz - 512, - - // mf2hd_freedos_3360s.dim.lz - 512, - - // mf2hd_maxiform_3200s.dim.lz - 512, - - // mf2hd_pass.dim.lz - 512, - - // mf2hd_qcopy_2460s.dim.lz - 512, - - // mf2hd_qcopy_2720s.dim.lz - 512, - - // mf2hd_qcopy_2788s.dim.lz - 512, - - // mf2hd_qcopy_2880s.dim.lz - 512, - - // mf2hd_qcopy_2952s.dim.lz - 512, - - // mf2hd_qcopy_2988s.dim.lz - 512, - - // mf2hd_qcopy_3200s.dim.lz - 512, - - // mf2hd_qcopy_3320s.dim.lz - 512, - - // mf2hd_qcopy_3360s.dim.lz - 512, - - // mf2hd_qcopy_3486s.dim.lz - 512, - - // mf2hd_xdf_alt.dim.lz - 512, - - // mf2hd_xdf_alt_pass.dim.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // 5f1dd8.dim.lz - MediaType.Unknown, - - // 5f1dd8_pass.dim.lz - MediaType.Unknown, - - // 5f1dd.dim.lz - MediaType.Unknown, - - // 5f1dd_pass.dim.lz - MediaType.Unknown, - - // 5f2dd8.dim.lz - MediaType.Unknown, - - // 5f2dd8_pass.dim.lz - MediaType.Unknown, - - // 5f2dd.dim.lz - MediaType.Unknown, - - // 5f2dd_pass.dim.lz - MediaType.Unknown, - - // 5f2hd.dim.lz - MediaType.Unknown, - - // 5f2hd_pass.dim.lz - MediaType.Unknown, - - // DSKA0000.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0001.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0009.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0010.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0012.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0013.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0017.DIM.lz - MediaType.XDF_525, - - // DSKA0018.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0020.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0021.DIM.lz - MediaType.XDF_525, - - // DSKA0024.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0025.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0028.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0030.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0035.DIM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0036.DIM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0037.DIM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0038.DIM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0039.DIM.lz - MediaType.DOS_35_SS_DD_8, - - // DSKA0040.DIM.lz - MediaType.DOS_35_SS_DD_8, - - // DSKA0041.DIM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0042.DIM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0043.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0044.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0045.DIM.lz - MediaType.DOS_525_HD, - - // DSKA0046.DIM.lz - MediaType.Unknown, - - // DSKA0047.DIM.lz - MediaType.DOS_35_DS_DD_8, - - // DSKA0048.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0049.DIM.lz - MediaType.Unknown, - - // DSKA0050.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0051.DIM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0052.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0053.DIM.lz - MediaType.Unknown, - - // DSKA0054.DIM.lz - MediaType.Unknown, - - // DSKA0055.DIM.lz - MediaType.Unknown, - - // DSKA0056.DIM.lz - MediaType.DMF, - - // DSKA0057.DIM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0058.DIM.lz - MediaType.Unknown, - - // DSKA0059.DIM.lz - MediaType.Unknown, - - // DSKA0060.DIM.lz - MediaType.Unknown, - - // DSKA0061.DIM.lz - MediaType.Unknown, - - // DSKA0068.DIM.lz - MediaType.DOS_35_SS_DD_9, - - // DSKA0069.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0073.DIM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0074.DIM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0075.DIM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0076.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0077.DIM.lz - MediaType.Unknown, - - // DSKA0078.DIM.lz - MediaType.DOS_525_HD, - - // DSKA0080.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0081.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0082.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0083.DIM.lz - MediaType.Unknown, - - // DSKA0084.DIM.lz - MediaType.DMF, - - // DSKA0085.DIM.lz - MediaType.Unknown, - - // DSKA0105.DIM.lz - MediaType.Unknown, - - // DSKA0106.DIM.lz - MediaType.Unknown, - - // DSKA0107.DIM.lz - MediaType.Unknown, - - // DSKA0108.DIM.lz - MediaType.Unknown, - - // DSKA0109.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0110.DIM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0111.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0112.DIM.lz - MediaType.Unknown, - - // DSKA0113.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0114.DIM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0115.DIM.lz - MediaType.Unknown, - - // DSKA0116.DIM.lz - MediaType.Unknown, - - // DSKA0117.DIM.lz - MediaType.Unknown, - - // DSKA0120.DIM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0121.DIM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0122.DIM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0123.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0124.DIM.lz - MediaType.DOS_525_HD, - - // DSKA0125.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0126.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0147.DIM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0148.DIM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0151.DIM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0153.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0154.DIM.lz - MediaType.Unknown, - - // DSKA0157.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0162.DIM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0163.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0164.DIM.lz - MediaType.Unknown, - - // DSKA0166.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0168.DIM.lz - MediaType.DOS_525_HD, - - // DSKA0169.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0170.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0173.DIM.lz - MediaType.DOS_35_SS_DD_9, - - // DSKA0174.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0175.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0176.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0177.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0180.DIM.lz - MediaType.Unknown, - - // DSKA0181.DIM.lz - MediaType.DMF, - - // DSKA0205.DIM.lz - MediaType.Unknown, - - // DSKA0206.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0207.DIM.lz - MediaType.XDF_525, - - // DSKA0209.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0210.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0211.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0212.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0216.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0218.DIM.lz - MediaType.Unknown, - - // DSKA0219.DIM.lz - MediaType.Unknown, - - // DSKA0220.DIM.lz - MediaType.Unknown, - - // DSKA0222.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0232.DIM.lz - MediaType.Unknown, - - // DSKA0245.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0246.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0262.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0263.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0264.DIM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0265.DIM.lz - MediaType.Unknown, - - // DSKA0266.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0267.DIM.lz - MediaType.XDF_525, - - // DSKA0268.DIM.lz - MediaType.Unknown, - - // DSKA0269.DIM.lz - MediaType.Unknown, - - // DSKA0270.DIM.lz - MediaType.Unknown, - - // DSKA0271.DIM.lz - MediaType.DMF, - - // DSKA0272.DIM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0273.DIM.lz - MediaType.Unknown, - - // DSKA0280.DIM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0281.DIM.lz - MediaType.Unknown, - - // DSKA0282.DIM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0283.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0284.DIM.lz - MediaType.Unknown, - - // DSKA0285.DIM.lz - MediaType.Unknown, - - // DSKA0287.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0288.DIM.lz - MediaType.Unknown, - - // DSKA0289.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0290.DIM.lz - MediaType.FDFORMAT_35_DD, - - // DSKA0299.DIM.lz - MediaType.DOS_525_SS_DD_8, - - // DSKA0300.DIM.lz - MediaType.DOS_525_SS_DD_9, - - // DSKA0301.DIM.lz - MediaType.DOS_525_DS_DD_8, - - // DSKA0302.DIM.lz - MediaType.DOS_525_DS_DD_9, - - // DSKA0303.DIM.lz - MediaType.DOS_525_HD, - - // DSKA0304.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0305.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0307.DIM.lz - MediaType.Unknown, - - // DSKA0308.DIM.lz - MediaType.CBM_35_DD, - - // DSKA0311.DIM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0314.DIM.lz - MediaType.DOS_35_DS_DD_9, - - // DSKA0316.DIM.lz - MediaType.DOS_35_HD, - - // DSKA0317.DIM.lz - MediaType.DMF, - - // DSKA0318.DIM.lz - MediaType.FDFORMAT_35_HD, - - // DSKA0319.DIM.lz - MediaType.DMF, - - // DSKA0320.DIM.lz - MediaType.DMF, - - // DSKA0322.DIM.lz - MediaType.Unknown, - - // md1dd8.dim.lz - MediaType.DOS_525_SS_DD_8, - - // md1dd.dim.lz - MediaType.DOS_525_SS_DD_9, - - // md1dd_fdformat_f200.dim.lz - MediaType.Unknown, - - // md1dd_fdformat_f205.dim.lz - MediaType.Unknown, - - // md2dd8.dim.lz - MediaType.DOS_525_DS_DD_8, - - // md2dd.dim.lz - MediaType.DOS_525_DS_DD_9, - - // md2dd_fdformat_f400.dim.lz - MediaType.Unknown, - - // md2dd_fdformat_f410.dim.lz - MediaType.Unknown, - - // md2dd_fdformat_f720.dim.lz - MediaType.DOS_35_DS_DD_9, - - // md2dd_fdformat_f800.dim.lz - MediaType.CBM_35_DD, - - // md2dd_fdformat_f820.dim.lz - MediaType.FDFORMAT_35_DD, - - // md2dd_freedos_800s.dim.lz - MediaType.Unknown, - - // md2dd_maxiform_1640s.dim.lz - MediaType.FDFORMAT_35_DD, - - // md2dd_maxiform_840s.dim.lz - MediaType.Unknown, - - // md2dd_qcopy_1476s.dim.lz - MediaType.Unknown, - - // md2dd_qcopy_1600s.dim.lz - MediaType.CBM_35_DD, - - // md2dd_qcopy_1640s.dim.lz - MediaType.FDFORMAT_35_DD, - - // md2hd.dim.lz - MediaType.DOS_525_HD, - - // md2hd_fdformat_f144.dim.lz - MediaType.DOS_35_HD, - - // md2hd_fdformat_f148.dim.lz - MediaType.Unknown, - - // md2hd_maxiform_2788s.dim.lz - MediaType.FDFORMAT_525_HD, - - // mf2dd_alt.dim.lz - MediaType.Unknown, - - // mf2dd_alt_pass.dim.lz - MediaType.Unknown, - - // mf2dd.dim.lz - MediaType.DOS_35_DS_DD_9, - - // mf2dd_fdformat_f800.dim.lz - MediaType.CBM_35_DD, - - // mf2dd_fdformat_f820.dim.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_freedos_1600s.dim.lz - MediaType.CBM_35_DD, - - // mf2dd_maxiform_1600s.dim.lz - MediaType.CBM_35_DD, - - // mf2dd_qcopy_1494s.dim.lz - MediaType.Unknown, - - // mf2dd_qcopy_1600s.dim.lz - MediaType.CBM_35_DD, - - // mf2dd_qcopy_1660s.dim.lz - MediaType.Unknown, - - // mf2ed.dim.lz - MediaType.Unknown, - - // mf2ed_pass.dim.lz - MediaType.Unknown, - - // mf2hd_alt.dim.lz - MediaType.Unknown, - - // mf2hd_alt_pass.dim.lz - MediaType.Unknown, - - // mf2hd.dim.lz - MediaType.DOS_35_HD, - - // mf2hd_dmf.dim.lz - MediaType.DMF, - - // mf2hd_fdformat_f168.dim.lz - MediaType.DMF, - - // mf2hd_fdformat_f16.dim.lz - MediaType.Unknown, - - // mf2hd_fdformat_f172.dim.lz - MediaType.FDFORMAT_35_HD, - - // mf2hd_freedos_3360s.dim.lz - MediaType.DMF, - - // mf2hd_maxiform_3200s.dim.lz - MediaType.Unknown, - - // mf2hd_pass.dim.lz - MediaType.DOS_35_HD, - - // mf2hd_qcopy_2460s.dim.lz - MediaType.Unknown, - - // mf2hd_qcopy_2720s.dim.lz - MediaType.Unknown, - - // mf2hd_qcopy_2788s.dim.lz - MediaType.FDFORMAT_525_HD, - - // mf2hd_qcopy_2880s.dim.lz - MediaType.DOS_35_HD, - - // mf2hd_qcopy_2952s.dim.lz - MediaType.Unknown, - - // mf2hd_qcopy_2988s.dim.lz - MediaType.Unknown, - - // mf2hd_qcopy_3200s.dim.lz - MediaType.Unknown, - - // mf2hd_qcopy_3320s.dim.lz - MediaType.Unknown, - - // mf2hd_qcopy_3360s.dim.lz - MediaType.DMF, - - // mf2hd_qcopy_3486s.dim.lz - MediaType.Unknown, - - // mf2hd_xdf_alt.dim.lz - MediaType.Unknown, - - // mf2hd_xdf_alt_pass.dim.lz - MediaType.Unknown - }; - public override string[] _md5S => new[] - { - // 5f1dd8.dim.lz - "c109e802e65365245dedd1737ec65c92", - - // 5f1dd8_pass.dim.lz - "d6eb723ac53eb469f64d8df69efef3dd", - - // 5f1dd.dim.lz - "a327c34060570e1a917eb1d88716a11a", - - // 5f1dd_pass.dim.lz - "b9807f1c25bf472633e7e80fa947a4d1", - - // 5f2dd8.dim.lz - "8b9e6662ef25a08d167f7ec4436efac8", - - // 5f2dd8_pass.dim.lz - "532694cde41f1553587b65c528bc185b", - - // 5f2dd.dim.lz - "a0b2aa16acaab9f521dff74ba93485ae", - - // 5f2dd_pass.dim.lz - "934e3a0f07410d0f4750f2beb3ce48f1", - - // 5f2hd.dim.lz - "78819708381987b3120fc777a5f08f2d", - - // 5f2hd_pass.dim.lz - "37dbeabaf72384870284ccd102b85eb7", - - // DSKA0000.DIM.lz - "e8bbbd22db87181974e12ba0227ea011", - - // DSKA0001.DIM.lz - "9f5635f3df4d880a500910b0ad1ab535", - - // DSKA0009.DIM.lz - "95ea232f59e44db374b994cfe7f1c07f", - - // DSKA0010.DIM.lz - "9e2b01f4397db2a6c76e2bc267df37b3", - - // DSKA0012.DIM.lz - "656002e6e620cb3b73c27f4c21d32edb", - - // DSKA0013.DIM.lz - "1244cc2c101c66e6bb4ad5183b356b19", - - // DSKA0017.DIM.lz - "8cad624afc06ab756f9800eba22ee886", - - // DSKA0018.DIM.lz - "84cce7b4d8c8e21040163cd2d03a730c", - - // DSKA0020.DIM.lz - "d236783dfd1dc29f350c51949b1e9e68", - - // DSKA0021.DIM.lz - "6915f208cdda762eea2fe64ad754e72f", - - // DSKA0024.DIM.lz - "2302991363cb3681cffdc4388915b51e", - - // DSKA0025.DIM.lz - "4e4cafed1cc22ea72201169427e5e1b6", - - // DSKA0028.DIM.lz - "1a4c7487382c98b7bc74623ddfb488e6", - - // DSKA0030.DIM.lz - "af83d011608042d35021e39aa5e10b2f", - - // DSKA0035.DIM.lz - "6642c1a32d2c58e93481d664974fc202", - - // DSKA0036.DIM.lz - "846f01b8b60cb3c775bd66419e977926", - - // DSKA0037.DIM.lz - "5101f89850dc28efbcfb7622086a9ddf", - - // DSKA0038.DIM.lz - "8e570be2ed1f00ddea82e50a2d9c446a", - - // DSKA0039.DIM.lz - "abba2a1ddd60a649047a9c44d94bbeae", - - // DSKA0040.DIM.lz - "e3bc48bec81be5b35be73d41fdffd2ab", - - // DSKA0041.DIM.lz - "43b5068af9d016d1432eb2e12d2b802a", - - // DSKA0042.DIM.lz - "5bf2ad4dc300592604b6e32f8b8e2656", - - // DSKA0043.DIM.lz - "cb9a832ca6a4097b8ccc30d2108e1f7d", - - // DSKA0044.DIM.lz - "56d181a6bb8713e6b2854fe8887faab6", - - // DSKA0045.DIM.lz - "41aef7cff26aefda1add8d49c5b962c2", - - // DSKA0046.DIM.lz - "2437c5f089f1cba3866b36360b016f16", - - // DSKA0047.DIM.lz - "bdaa8f17373b265830fdf3a06b794367", - - // DSKA0048.DIM.lz - "629932c285478d0540ff7936aa008351", - - // DSKA0049.DIM.lz - "7a2abef5d4701e2e49abb05af8d4da50", - - // DSKA0050.DIM.lz - "e3507522c914264f44fb2c92c3170c09", - - // DSKA0051.DIM.lz - "824fe65dbb1a42b6b94f05405ef984f2", - - // DSKA0052.DIM.lz - "1a8c2e78e7132cf9ba5d6c2b75876be0", - - // DSKA0053.DIM.lz - "936b20bb0966fe693b4d5e2353e24846", - - // DSKA0054.DIM.lz - "803b01a0b440c2837d37c21308f30cd5", - - // DSKA0055.DIM.lz - "aa0d31f914760cc4cde75479779ebed6", - - // DSKA0056.DIM.lz - "31269ed6464302ae26d22b7c87bceb23", - - // DSKA0057.DIM.lz - "5e413433c54f48978d281c6e66d1106e", - - // DSKA0058.DIM.lz - "a7688d6be942272ce866736e6007bc46", - - // DSKA0059.DIM.lz - "24a7459d080cea3a60d131b8fd7dc5d1", - - // DSKA0060.DIM.lz - "ef0c3da4749da2f79d7d623d9b6f3d4d", - - // DSKA0061.DIM.lz - "5231d2e8a99ba5f8dfd16ca1a05f40cd", - - // DSKA0068.DIM.lz - "8f91482c56161ecbf5d86f42b03b9636", - - // DSKA0069.DIM.lz - "5fc19ca552b6db957061e9a1750394d2", - - // DSKA0073.DIM.lz - "a33b46f042b78fe3d0b3c5dbb3908a93", - - // DSKA0074.DIM.lz - "565d3c001cbb532154aa5d3c65b2439c", - - // DSKA0075.DIM.lz - "e60442c3ebd72c99bdd7545fdba59613", - - // DSKA0076.DIM.lz - "058a33a129539285c9b64010496af52f", - - // DSKA0077.DIM.lz - "0726ecbc38965d30a6222c3e74cd1aa3", - - // DSKA0078.DIM.lz - "c9a193837db7d8a5eb025eb41e8a76d7", - - // DSKA0080.DIM.lz - "c38d69ac88520f14fcc6d6ced22b065d", - - // DSKA0081.DIM.lz - "91d51964e1e64ef3f6f622fa19aa833c", - - // DSKA0082.DIM.lz - "db36d9651c952ff679ec33223c8db2d3", - - // DSKA0083.DIM.lz - "952f33314fb930c2d02ef4604585c0e6", - - // DSKA0084.DIM.lz - "1207a1cc7ff73d4f74c8984b4e7db33f", - - // DSKA0085.DIM.lz - "53dfcaceed8203ee629fc7fe520e1217", - - // DSKA0105.DIM.lz - "d40a99cb549fcfb26fcf9ef01b5dfca7", - - // DSKA0106.DIM.lz - "6433f8fbf8dda1e307b15a4203c1a4e6", - - // DSKA0107.DIM.lz - "126dfd25363c076727dfaab03955c931", - - // DSKA0108.DIM.lz - "386763ae9afde1a0a19eb4a54ba462aa", - - // DSKA0109.DIM.lz - "7973e569ed93beb1ece2e84a5ef3a8d1", - - // DSKA0110.DIM.lz - "a793047503af08e83361427b3e2806e0", - - // DSKA0111.DIM.lz - "f01541de322c8d6d7321084d7a245e7b", - - // DSKA0112.DIM.lz - "ba6ec1652ff41bcc687aaf9c4e32dc18", - - // DSKA0113.DIM.lz - "7973e569ed93beb1ece2e84a5ef3a8d1", - - // DSKA0114.DIM.lz - "a793047503af08e83361427b3e2806e0", - - // DSKA0115.DIM.lz - "ba6ec1652ff41bcc687aaf9c4e32dc18", - - // DSKA0116.DIM.lz - "6631b66fdfd89319323771c41334c7ba", - - // DSKA0117.DIM.lz - "56471a253f4d6803b634e2bbff6c0931", - - // DSKA0120.DIM.lz - "7d36aee5a3071ff75b979f3acb649c40", - - // DSKA0121.DIM.lz - "0ccb62039363ab544c69eca229a17fae", - - // DSKA0122.DIM.lz - "7851d31fad9302ff45d3ded4fba25387", - - // DSKA0123.DIM.lz - "915b08c82591e8488320e001b7303b6d", - - // DSKA0124.DIM.lz - "5e5ea6fe9adf842221fdc60e56630405", - - // DSKA0125.DIM.lz - "a22e254f7e3526ec30dc4915a19fcb52", - - // DSKA0126.DIM.lz - "ddc6c1200c60e9f7796280f50c2e5283", - - // DSKA0147.DIM.lz - "6efa72a33021d5051546c3e0dd4c3c09", - - // DSKA0148.DIM.lz - "8b5acfd14818ff9556d3d81361ce4862", - - // DSKA0151.DIM.lz - "298c377de52947c472a85d281b6d3d4d", - - // DSKA0153.DIM.lz - "32975e1a2d10a360331de84682371277", - - // DSKA0154.DIM.lz - "a5dc382d75ec46434b313e289c281d8c", - - // DSKA0157.DIM.lz - "3a7f25fa38019109e89051993076063a", - - // DSKA0162.DIM.lz - "e63014a4299f52f22e6e2c9609f51979", - - // DSKA0163.DIM.lz - "be05d1ff10ef8b2220546c4db962ac9e", - - // DSKA0164.DIM.lz - "e01d813dd6c3a49428520df40d63cadd", - - // DSKA0166.DIM.lz - "1c8b03a8550ed3e70e1c78316aa445aa", - - // DSKA0168.DIM.lz - "0bdf9130c07bb5d558a4705249f949d0", - - // DSKA0169.DIM.lz - "2dafeddaa99e7dc0db5ef69e128f9c8e", - - // DSKA0170.DIM.lz - "0c043ceba489ef80c1b7f58534af12f5", - - // DSKA0173.DIM.lz - "028769dc0abefab1740cc309432588b6", - - // DSKA0174.DIM.lz - "152023525154b45ab26687190bac94db", - - // DSKA0175.DIM.lz - "db38ecd93f28dd065927fed21917eed5", - - // DSKA0176.DIM.lz - "ca53f9cc4dcd04d06f5c4c3df09195ab", - - // DSKA0177.DIM.lz - "fde94075cb3fd1c52af32062b0251af0", - - // DSKA0180.DIM.lz - "f206c0caa4e0eda37233ab6e89ab5493", - - // DSKA0181.DIM.lz - "4375fe3d7e50a5044b4850d8542363fb", - - // DSKA0205.DIM.lz - "d3106f2c989a0afcf97b63b051be8312", - - // DSKA0206.DIM.lz - "8245ddd644583bd78ac0638133c89824", - - // DSKA0207.DIM.lz - "33c51a3d6f13cfedb5f08bf4c3cba7b9", - - // DSKA0209.DIM.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0210.DIM.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0211.DIM.lz - "647f14749f59be471aac04a71a079a64", - - // DSKA0212.DIM.lz - "517cdd5e42a4673f733d1aedfb46770f", - - // DSKA0216.DIM.lz - "40199611e6e75bbc37ad6c52a5b77eae", - - // DSKA0218.DIM.lz - "fabacd63bd25f4c3db71523c21242bfb", - - // DSKA0219.DIM.lz - "0d1a1dfa4482422ff11fea76f8cef3a9", - - // DSKA0220.DIM.lz - "a6a67106457a20b46d05f2d9b27244f1", - - // DSKA0222.DIM.lz - "85574aebeef03eb355bf8541955d06ea", - - // DSKA0232.DIM.lz - "53a50481d90228f527b72f058de257da", - - // DSKA0245.DIM.lz - "0d71b4952dadbfb1061acc1f4640c787", - - // DSKA0246.DIM.lz - "af7ac6b5b9d2d57dad22dbb64ef7de38", - - // DSKA0262.DIM.lz - "5ac0a9fc7337f761098f816359b0f6f7", - - // DSKA0263.DIM.lz - "1ea6ec8e663218b1372048f6e25795b5", - - // DSKA0264.DIM.lz - "77a1167b1b9043496e32b8578cde0ff0", - - // DSKA0265.DIM.lz - "2b2c891ef5edee8518a1ae2ed3ab71a0", - - // DSKA0266.DIM.lz - "32c044c5c2b0bd13806149a759c14935", - - // DSKA0267.DIM.lz - "8752095abc13dba3f3467669da333891", - - // DSKA0268.DIM.lz - "aece7cd34bbba3e75307fa70404d9d30", - - // DSKA0269.DIM.lz - "5289afb16a6e4a33213e3bcca56c6230", - - // DSKA0270.DIM.lz - "092308e5df684702dd0ec393b6d3563a", - - // DSKA0271.DIM.lz - "b96596711f4d2ee85dfda0fe3b9f26c3", - - // DSKA0272.DIM.lz - "a4f461af7fda5e93a7ab63fcbb7e7683", - - // DSKA0273.DIM.lz - "963f3aa8d4468d4373054f842d0e2245", - - // DSKA0280.DIM.lz - "4feeaf4b4ee5dad85db727fbbda4b6d1", - - // DSKA0281.DIM.lz - "3c77ca681df78e4cd7baa162aa9b0859", - - // DSKA0282.DIM.lz - "51da1f86c49657ffdb367bb2ddeb7990", - - // DSKA0283.DIM.lz - "b81a4987f89936630b8ebc62e4bbce6e", - - // DSKA0284.DIM.lz - "f76f92dd326c99c5efad5ee58daf72e1", - - // DSKA0285.DIM.lz - "b6f2c10e42908e334025bc4ffd81e771", - - // DSKA0287.DIM.lz - "f2f409ea2a62a7866fd2777cc4fc9739", - - // DSKA0288.DIM.lz - "be89d2aab865a1217a3dda86e99bed97", - - // DSKA0289.DIM.lz - "30a93f30dd4485c6fc037fe0775d3fc7", - - // DSKA0290.DIM.lz - "e0caf02cce5597c98313bcc480366ec7", - - // DSKA0299.DIM.lz - "39bf5a98bcb2185d855ac06378febcfa", - - // DSKA0300.DIM.lz - "dc20055b6e6fd6f8e1114d4be2effeed", - - // DSKA0301.DIM.lz - "56af9256cf71d5aac5fd5d363674bc49", - - // DSKA0302.DIM.lz - "bbba1e2d1418e05c3a4e7b4d585d160b", - - // DSKA0303.DIM.lz - "bca3a045e81617f7f5ebb5a8818eac47", - - // DSKA0304.DIM.lz - "a296663cb8e75e94603221352f29cfff", - - // DSKA0305.DIM.lz - "ecda36ebf0e1100233cb0ec722c18583", - - // DSKA0307.DIM.lz - "cef2f4fe9b1a32d5c0544f814e634264", - - // DSKA0308.DIM.lz - "bbe58e26b8f8f822cd3edfd37a4e4924", - - // DSKA0311.DIM.lz - "b9b6ebdf711364c979de7cf70c3a438a", - - // DSKA0314.DIM.lz - "d37424f367f545acbb397f2bed766843", - - // DSKA0316.DIM.lz - "9963dd6f19ce6bd56eabeccdfbbd821a", - - // DSKA0317.DIM.lz - "acf6604559ae8217f7869823e2429024", - - // DSKA0318.DIM.lz - "23bf2139cdfdc4c16db058fd31ea6481", - - // DSKA0319.DIM.lz - "fa26adda0415f02057b113ad29c80c8d", - - // DSKA0320.DIM.lz - "4f2a8d036fefd6c6c88d99eda3aa12b7", - - // DSKA0322.DIM.lz - "1f6a23974b29d525706a2b0228325656", - - // md1dd8.dim.lz - "d81f5cb64fd0b99f138eab34110bbc3c", - - // md1dd.dim.lz - "a89006a75d13bee9202d1d6e52721ccb", - - // md1dd_fdformat_f200.dim.lz - "e1ad4a022778d7a0b24a93d8e68a59dc", - - // md1dd_fdformat_f205.dim.lz - "56a95fcf1d6f5c3108a17207b53ec07c", - - // md2dd8.dim.lz - "beef1cdb004dc69391d6b3d508988b95", - - // md2dd.dim.lz - "6213897b7dbf263f12abf76901d43862", - - // md2dd_fdformat_f400.dim.lz - "0aef12c906b744101b932d799ca88a78", - - // md2dd_fdformat_f410.dim.lz - "e7367df9998de0030a97b5131d1bed20", - - // md2dd_fdformat_f720.dim.lz - "1c36b819cfe355c11360bc120c9216fe", - - // md2dd_fdformat_f800.dim.lz - "25114403c11e337480e2afc4e6e32108", - - // md2dd_fdformat_f820.dim.lz - "3d7760ddaa55cd258057773d15106b78", - - // md2dd_freedos_800s.dim.lz - "29054ef703394ee3b35e849468a412ba", - - // md2dd_maxiform_1640s.dim.lz - "c91e852828c2aeee2fc94a6adbeed0ae", - - // md2dd_maxiform_840s.dim.lz - "efb6cfe53a6770f0ae388cb2c7f46264", - - // md2dd_qcopy_1476s.dim.lz - "6116f7c1397cadd55ba8d79c2aadc9dd", - - // md2dd_qcopy_1600s.dim.lz - "93100f8d86e5d0d0e6340f59c52a5e0d", - - // md2dd_qcopy_1640s.dim.lz - "cf7b7d43aa70863bedcc4a8432a5af67", - - // md2hd.dim.lz - "02259cd5fbcc20f8484aa6bece7a37c6", - - // md2hd_fdformat_f144.dim.lz - "073a172879a71339ef4b00ebb47b67fc", - - // md2hd_fdformat_f148.dim.lz - "d9890897130d0fc1eee3dbf4d9b0440f", - - // md2hd_maxiform_2788s.dim.lz - "09ca721aa883d5bbaa422c7943b0782c", - - // mf2dd_alt.dim.lz - "259ff90e41e60682d948dd7d6af89735", - - // mf2dd_alt_pass.dim.lz - "b40f8273fa7492bfe71c3d743269b97c", - - // mf2dd.dim.lz - "9827ba1b3e9cac41263caabd862e78f9", - - // mf2dd_fdformat_f800.dim.lz - "67d299c6e83f3f0fbcb8faa9ffa422c1", - - // mf2dd_fdformat_f820.dim.lz - "81d3bfec7b201f6a4503eb24c4394d4a", - - // mf2dd_freedos_1600s.dim.lz - "d07f7ffaee89742c6477aaaf94eb5715", - - // mf2dd_maxiform_1600s.dim.lz - "56af87802a9852e6e01e08d544740816", - - // mf2dd_qcopy_1494s.dim.lz - "34b7b99ef6fba2235eedbd8ae406d7d3", - - // mf2dd_qcopy_1600s.dim.lz - "d9db52d992a76bf3bbc626ff844215a5", - - // mf2dd_qcopy_1660s.dim.lz - "3b74e367926181152c3499de8dd9b914", - - // mf2ed.dim.lz - "82825116ffe6d68b4d920ad4875bd709", - - // mf2ed_pass.dim.lz - "e7cdd1123b08eac4e9571825b1f6172f", - - // mf2hd_alt.dim.lz - "3b16537076c5517306dc672f8f1e376e", - - // mf2hd_alt_pass.dim.lz - "022893d7766205894fca41bcde3c9f6c", - - // mf2hd.dim.lz - "1d32a686b7675c7a4f88c15522738432", - - // mf2hd_dmf.dim.lz - "084d4d75f5e780cb9ec66a2fa784c371", - - // mf2hd_fdformat_f168.dim.lz - "1e06f21a1c11ea3347212da115bca08f", - - // mf2hd_fdformat_f16.dim.lz - "8eb8cb310feaf03c69fffd4f6e729847", - - // mf2hd_fdformat_f172.dim.lz - "3fc3a03d049416d81f81cc3b9ea8e5de", - - // mf2hd_freedos_3360s.dim.lz - "2bfd2e0a81bad704f8fc7758358cfcca", - - // mf2hd_maxiform_3200s.dim.lz - "3c4becd695ed25866d39966a9a93c2d9", - - // mf2hd_pass.dim.lz - "1d32a686b7675c7a4f88c15522738432", - - // mf2hd_qcopy_2460s.dim.lz - "72282e11f7d91bf9c090b550fabfe80d", - - // mf2hd_qcopy_2720s.dim.lz - "457c1126dc7f36bbbabe9e17e90372e3", - - // mf2hd_qcopy_2788s.dim.lz - "852181d5913c6f290872c66bbe992314", - - // mf2hd_qcopy_2880s.dim.lz - "2980cc32504c945598dc50f1db576994", - - // mf2hd_qcopy_2952s.dim.lz - "c1c58d74fffb3656dd7f60f74ae8a629", - - // mf2hd_qcopy_2988s.dim.lz - "67391c3750f17a806503be3f9d514b1f", - - // mf2hd_qcopy_3200s.dim.lz - "e45d41a61fbe48f328c995fcc10a5548", - - // mf2hd_qcopy_3320s.dim.lz - "c7764476489072dd053d5ec878171423", - - // mf2hd_qcopy_3360s.dim.lz - "15f71b92bd72aba5d80bf70eca4d5b1e", - - // mf2hd_qcopy_3486s.dim.lz - "f725bc714c3204e835e23c726ce77b89", - - // mf2hd_xdf_alt.dim.lz - "02d7c237c6ac1fbcd2fbbfb45c5fb767", - - // mf2hd_xdf_alt_pass.dim.lz - "99f83e846c5106dd4992646726e91636" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Disk IMage Archiver"); public override IMediaImage _plugin => new RayDim(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "5f1dd8.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 336, + SectorSize = 512, + MD5 = "c109e802e65365245dedd1737ec65c92" + }, + new BlockImageTestExpected + { + TestFile = "5f1dd8_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 336, + SectorSize = 512, + MD5 = "d6eb723ac53eb469f64d8df69efef3dd" + }, + new BlockImageTestExpected + { + TestFile = "5f1dd.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 378, + SectorSize = 512, + MD5 = "a327c34060570e1a917eb1d88716a11a" + }, + new BlockImageTestExpected + { + TestFile = "5f1dd_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 378, + SectorSize = 512, + MD5 = "b9807f1c25bf472633e7e80fa947a4d1" + }, + new BlockImageTestExpected + { + TestFile = "5f2dd8.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 672, + SectorSize = 512, + MD5 = "8b9e6662ef25a08d167f7ec4436efac8" + }, + new BlockImageTestExpected + { + TestFile = "5f2dd8_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 672, + SectorSize = 512, + MD5 = "532694cde41f1553587b65c528bc185b" + }, + new BlockImageTestExpected + { + TestFile = "5f2dd.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 756, + SectorSize = 512, + MD5 = "a0b2aa16acaab9f521dff74ba93485ae" + }, + new BlockImageTestExpected + { + TestFile = "5f2dd_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 756, + SectorSize = 512, + MD5 = "934e3a0f07410d0f4750f2beb3ce48f1" + }, + new BlockImageTestExpected + { + TestFile = "5f2hd.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "78819708381987b3120fc777a5f08f2d" + }, + new BlockImageTestExpected + { + TestFile = "5f2hd_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "37dbeabaf72384870284ccd102b85eb7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0000.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "e8bbbd22db87181974e12ba0227ea011" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0001.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "9f5635f3df4d880a500910b0ad1ab535" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0009.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "95ea232f59e44db374b994cfe7f1c07f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0010.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "9e2b01f4397db2a6c76e2bc267df37b3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0012.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "656002e6e620cb3b73c27f4c21d32edb" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0013.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1244cc2c101c66e6bb4ad5183b356b19" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0017.DIM.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "8cad624afc06ab756f9800eba22ee886" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0018.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "84cce7b4d8c8e21040163cd2d03a730c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0020.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "d236783dfd1dc29f350c51949b1e9e68" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0021.DIM.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "6915f208cdda762eea2fe64ad754e72f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0024.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2302991363cb3681cffdc4388915b51e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0025.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "4e4cafed1cc22ea72201169427e5e1b6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0028.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1a4c7487382c98b7bc74623ddfb488e6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0030.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "af83d011608042d35021e39aa5e10b2f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0035.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6642c1a32d2c58e93481d664974fc202" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0036.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "846f01b8b60cb3c775bd66419e977926" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0037.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "5101f89850dc28efbcfb7622086a9ddf" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0038.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "8e570be2ed1f00ddea82e50a2d9c446a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0039.DIM.lz", + MediaType = MediaType.DOS_35_SS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "abba2a1ddd60a649047a9c44d94bbeae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0040.DIM.lz", + MediaType = MediaType.DOS_35_SS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "e3bc48bec81be5b35be73d41fdffd2ab" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0041.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "43b5068af9d016d1432eb2e12d2b802a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0042.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "5bf2ad4dc300592604b6e32f8b8e2656" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0043.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "cb9a832ca6a4097b8ccc30d2108e1f7d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0044.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "56d181a6bb8713e6b2854fe8887faab6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0045.DIM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "41aef7cff26aefda1add8d49c5b962c2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0046.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "2437c5f089f1cba3866b36360b016f16" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0047.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_8, + Sectors = 1280, + SectorSize = 512, + MD5 = "bdaa8f17373b265830fdf3a06b794367" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0048.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "629932c285478d0540ff7936aa008351" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0049.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "7a2abef5d4701e2e49abb05af8d4da50" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0050.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "e3507522c914264f44fb2c92c3170c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0051.DIM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "824fe65dbb1a42b6b94f05405ef984f2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0052.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "1a8c2e78e7132cf9ba5d6c2b75876be0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0053.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "936b20bb0966fe693b4d5e2353e24846" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0054.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "803b01a0b440c2837d37c21308f30cd5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0055.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "aa0d31f914760cc4cde75479779ebed6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0056.DIM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "31269ed6464302ae26d22b7c87bceb23" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0057.DIM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "5e413433c54f48978d281c6e66d1106e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0058.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3528, + SectorSize = 512, + MD5 = "a7688d6be942272ce866736e6007bc46" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0059.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3528, + SectorSize = 512, + MD5 = "24a7459d080cea3a60d131b8fd7dc5d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0060.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3612, + SectorSize = 512, + MD5 = "ef0c3da4749da2f79d7d623d9b6f3d4d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0061.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 5120, + SectorSize = 512, + MD5 = "5231d2e8a99ba5f8dfd16ca1a05f40cd" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0068.DIM.lz", + MediaType = MediaType.DOS_35_SS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "8f91482c56161ecbf5d86f42b03b9636" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0069.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "5fc19ca552b6db957061e9a1750394d2" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0073.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "a33b46f042b78fe3d0b3c5dbb3908a93" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0074.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "565d3c001cbb532154aa5d3c65b2439c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0075.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "e60442c3ebd72c99bdd7545fdba59613" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0076.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "058a33a129539285c9b64010496af52f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0077.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "0726ecbc38965d30a6222c3e74cd1aa3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0078.DIM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "c9a193837db7d8a5eb025eb41e8a76d7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0080.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c38d69ac88520f14fcc6d6ced22b065d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0081.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "91d51964e1e64ef3f6f622fa19aa833c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0082.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "db36d9651c952ff679ec33223c8db2d3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0083.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3024, + SectorSize = 512, + MD5 = "952f33314fb930c2d02ef4604585c0e6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0084.DIM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "1207a1cc7ff73d4f74c8984b4e7db33f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0085.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3528, + SectorSize = 512, + MD5 = "53dfcaceed8203ee629fc7fe520e1217" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0105.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "d40a99cb549fcfb26fcf9ef01b5dfca7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0106.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 420, + SectorSize = 512, + MD5 = "6433f8fbf8dda1e307b15a4203c1a4e6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0107.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "126dfd25363c076727dfaab03955c931" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0108.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "386763ae9afde1a0a19eb4a54ba462aa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0109.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "7973e569ed93beb1ece2e84a5ef3a8d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0110.DIM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a793047503af08e83361427b3e2806e0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0111.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "f01541de322c8d6d7321084d7a245e7b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0112.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "ba6ec1652ff41bcc687aaf9c4e32dc18" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0113.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "7973e569ed93beb1ece2e84a5ef3a8d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0114.DIM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a793047503af08e83361427b3e2806e0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0115.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "ba6ec1652ff41bcc687aaf9c4e32dc18" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0116.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "6631b66fdfd89319323771c41334c7ba" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0117.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "56471a253f4d6803b634e2bbff6c0931" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0120.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "7d36aee5a3071ff75b979f3acb649c40" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0121.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "0ccb62039363ab544c69eca229a17fae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0122.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "7851d31fad9302ff45d3ded4fba25387" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0123.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "915b08c82591e8488320e001b7303b6d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0124.DIM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "5e5ea6fe9adf842221fdc60e56630405" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0125.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "a22e254f7e3526ec30dc4915a19fcb52" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0126.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ddc6c1200c60e9f7796280f50c2e5283" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0147.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6efa72a33021d5051546c3e0dd4c3c09" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0148.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "8b5acfd14818ff9556d3d81361ce4862" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0151.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "298c377de52947c472a85d281b6d3d4d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0153.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "32975e1a2d10a360331de84682371277" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0154.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "a5dc382d75ec46434b313e289c281d8c" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0157.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "3a7f25fa38019109e89051993076063a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0162.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "e63014a4299f52f22e6e2c9609f51979" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0163.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "be05d1ff10ef8b2220546c4db962ac9e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0164.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "e01d813dd6c3a49428520df40d63cadd" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0166.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1c8b03a8550ed3e70e1c78316aa445aa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0168.DIM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "0bdf9130c07bb5d558a4705249f949d0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0169.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2dafeddaa99e7dc0db5ef69e128f9c8e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0170.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "0c043ceba489ef80c1b7f58534af12f5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0173.DIM.lz", + MediaType = MediaType.DOS_35_SS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "028769dc0abefab1740cc309432588b6" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0174.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "152023525154b45ab26687190bac94db" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0175.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "db38ecd93f28dd065927fed21917eed5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0176.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "ca53f9cc4dcd04d06f5c4c3df09195ab" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0177.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "fde94075cb3fd1c52af32062b0251af0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0180.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "f206c0caa4e0eda37233ab6e89ab5493" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0181.DIM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "4375fe3d7e50a5044b4850d8542363fb" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0205.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 1512, + SectorSize = 512, + MD5 = "d3106f2c989a0afcf97b63b051be8312" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0206.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "8245ddd644583bd78ac0638133c89824" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0207.DIM.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "33c51a3d6f13cfedb5f08bf4c3cba7b9" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0209.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0210.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0211.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "647f14749f59be471aac04a71a079a64" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0212.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "517cdd5e42a4673f733d1aedfb46770f" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0216.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "40199611e6e75bbc37ad6c52a5b77eae" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0218.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 5080, + SectorSize = 512, + MD5 = "fabacd63bd25f4c3db71523c21242bfb" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0219.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 9144, + SectorSize = 512, + MD5 = "0d1a1dfa4482422ff11fea76f8cef3a9" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0220.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 13716, + SectorSize = 512, + MD5 = "a6a67106457a20b46d05f2d9b27244f1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0222.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "85574aebeef03eb355bf8541955d06ea" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0232.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 630, + SectorSize = 512, + MD5 = "53a50481d90228f527b72f058de257da" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0245.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "0d71b4952dadbfb1061acc1f4640c787" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0246.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "af7ac6b5b9d2d57dad22dbb64ef7de38" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0262.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "5ac0a9fc7337f761098f816359b0f6f7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0263.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "1ea6ec8e663218b1372048f6e25795b5" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0264.DIM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "77a1167b1b9043496e32b8578cde0ff0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0265.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 1680, + SectorSize = 512, + MD5 = "2b2c891ef5edee8518a1ae2ed3ab71a0" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0266.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "32c044c5c2b0bd13806149a759c14935" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0267.DIM.lz", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "8752095abc13dba3f3467669da333891" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0268.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "aece7cd34bbba3e75307fa70404d9d30" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0269.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3280, + SectorSize = 512, + MD5 = "5289afb16a6e4a33213e3bcca56c6230" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0270.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3360, + SectorSize = 512, + MD5 = "092308e5df684702dd0ec393b6d3563a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0271.DIM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "b96596711f4d2ee85dfda0fe3b9f26c3" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0272.DIM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "a4f461af7fda5e93a7ab63fcbb7e7683" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0273.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 3528, + SectorSize = 512, + MD5 = "963f3aa8d4468d4373054f842d0e2245" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0280.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "4feeaf4b4ee5dad85db727fbbda4b6d1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0281.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "3c77ca681df78e4cd7baa162aa9b0859" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0282.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "51da1f86c49657ffdb367bb2ddeb7990" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0283.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "b81a4987f89936630b8ebc62e4bbce6e" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0284.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "f76f92dd326c99c5efad5ee58daf72e1" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0285.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "b6f2c10e42908e334025bc4ffd81e771" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0287.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "f2f409ea2a62a7866fd2777cc4fc9739" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0288.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 1512, + SectorSize = 512, + MD5 = "be89d2aab865a1217a3dda86e99bed97" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0289.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "30a93f30dd4485c6fc037fe0775d3fc7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0290.DIM.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "e0caf02cce5597c98313bcc480366ec7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0299.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "39bf5a98bcb2185d855ac06378febcfa" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0300.DIM.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "dc20055b6e6fd6f8e1114d4be2effeed" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0301.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "56af9256cf71d5aac5fd5d363674bc49" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0302.DIM.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "bbba1e2d1418e05c3a4e7b4d585d160b" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0303.DIM.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "bca3a045e81617f7f5ebb5a8818eac47" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0304.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "a296663cb8e75e94603221352f29cfff" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0305.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ecda36ebf0e1100233cb0ec722c18583" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0307.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "cef2f4fe9b1a32d5c0544f814e634264" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0308.DIM.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "bbe58e26b8f8f822cd3edfd37a4e4924" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0311.DIM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "b9b6ebdf711364c979de7cf70c3a438a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0314.DIM.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "d37424f367f545acbb397f2bed766843" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0316.DIM.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "9963dd6f19ce6bd56eabeccdfbbd821a" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0317.DIM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "acf6604559ae8217f7869823e2429024" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0318.DIM.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "23bf2139cdfdc4c16db058fd31ea6481" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0319.DIM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "fa26adda0415f02057b113ad29c80c8d" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0320.DIM.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "4f2a8d036fefd6c6c88d99eda3aa12b7" + }, + new BlockImageTestExpected + { + TestFile = "DSKA0322.DIM.lz", + MediaType = MediaType.Unknown, + Sectors = 1404, + SectorSize = 512, + MD5 = "1f6a23974b29d525706a2b0228325656" + }, + new BlockImageTestExpected + { + TestFile = "md1dd8.dim.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "d81f5cb64fd0b99f138eab34110bbc3c" + }, + new BlockImageTestExpected + { + TestFile = "md1dd.dim.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "a89006a75d13bee9202d1d6e52721ccb" + }, + new BlockImageTestExpected + { + TestFile = "md1dd_fdformat_f200.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "e1ad4a022778d7a0b24a93d8e68a59dc" + }, + new BlockImageTestExpected + { + TestFile = "md1dd_fdformat_f205.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 420, + SectorSize = 512, + MD5 = "56a95fcf1d6f5c3108a17207b53ec07c" + }, + new BlockImageTestExpected + { + TestFile = "md2dd8.dim.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "beef1cdb004dc69391d6b3d508988b95" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.dim.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "6213897b7dbf263f12abf76901d43862" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f400.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "0aef12c906b744101b932d799ca88a78" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f410.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "e7367df9998de0030a97b5131d1bed20" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f720.dim.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1c36b819cfe355c11360bc120c9216fe" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f800.dim.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "25114403c11e337480e2afc4e6e32108" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f820.dim.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "3d7760ddaa55cd258057773d15106b78" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_freedos_800s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "29054ef703394ee3b35e849468a412ba" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_maxiform_1640s.dim.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "c91e852828c2aeee2fc94a6adbeed0ae" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_maxiform_840s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "efb6cfe53a6770f0ae388cb2c7f46264" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1476s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "6116f7c1397cadd55ba8d79c2aadc9dd" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1600s.dim.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "93100f8d86e5d0d0e6340f59c52a5e0d" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1640s.dim.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "cf7b7d43aa70863bedcc4a8432a5af67" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.dim.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "02259cd5fbcc20f8484aa6bece7a37c6" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_fdformat_f144.dim.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "073a172879a71339ef4b00ebb47b67fc" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_fdformat_f148.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "d9890897130d0fc1eee3dbf4d9b0440f" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_maxiform_2788s.dim.lz", + MediaType = MediaType.FDFORMAT_525_HD, + Sectors = 2788, + SectorSize = 512, + MD5 = "09ca721aa883d5bbaa422c7943b0782c" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_alt.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "259ff90e41e60682d948dd7d6af89735" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_alt_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "b40f8273fa7492bfe71c3d743269b97c" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.dim.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "9827ba1b3e9cac41263caabd862e78f9" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_f800.dim.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "67d299c6e83f3f0fbcb8faa9ffa422c1" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_f820.dim.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "81d3bfec7b201f6a4503eb24c4394d4a" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos_1600s.dim.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "d07f7ffaee89742c6477aaaf94eb5715" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_maxiform_1600s.dim.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "56af87802a9852e6e01e08d544740816" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1494s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 1512, + SectorSize = 512, + MD5 = "34b7b99ef6fba2235eedbd8ae406d7d3" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1600s.dim.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "d9db52d992a76bf3bbc626ff844215a5" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1660s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 1680, + SectorSize = 512, + MD5 = "3b74e367926181152c3499de8dd9b914" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 5904, + SectorSize = 512, + MD5 = "82825116ffe6d68b4d920ad4875bd709" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 5904, + SectorSize = 512, + MD5 = "e7cdd1123b08eac4e9571825b1f6172f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_alt.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "3b16537076c5517306dc672f8f1e376e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_alt_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "022893d7766205894fca41bcde3c9f6c" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.dim.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "1d32a686b7675c7a4f88c15522738432" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_dmf.dim.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "084d4d75f5e780cb9ec66a2fa784c371" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f168.dim.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "1e06f21a1c11ea3347212da115bca08f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f16.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "8eb8cb310feaf03c69fffd4f6e729847" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f172.dim.lz", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "3fc3a03d049416d81f81cc3b9ea8e5de" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos_3360s.dim.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "2bfd2e0a81bad704f8fc7758358cfcca" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_maxiform_3200s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "3c4becd695ed25866d39966a9a93c2d9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_pass.dim.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "1d32a686b7675c7a4f88c15522738432" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2460s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "72282e11f7d91bf9c090b550fabfe80d" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2720s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 2720, + SectorSize = 512, + MD5 = "457c1126dc7f36bbbabe9e17e90372e3" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2788s.dim.lz", + MediaType = MediaType.FDFORMAT_525_HD, + Sectors = 2788, + SectorSize = 512, + MD5 = "852181d5913c6f290872c66bbe992314" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2880s.dim.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2980cc32504c945598dc50f1db576994" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2952s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "c1c58d74fffb3656dd7f60f74ae8a629" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2988s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 3024, + SectorSize = 512, + MD5 = "67391c3750f17a806503be3f9d514b1f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3200s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "e45d41a61fbe48f328c995fcc10a5548" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3320s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 3360, + SectorSize = 512, + MD5 = "c7764476489072dd053d5ec878171423" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3360s.dim.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "15f71b92bd72aba5d80bf70eca4d5b1e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3486s.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 3528, + SectorSize = 512, + MD5 = "f725bc714c3204e835e23c726ce77b89" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_alt.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 3772, + SectorSize = 512, + MD5 = "02d7c237c6ac1fbcd2fbbfb45c5fb767" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_alt_pass.dim.lz", + MediaType = MediaType.Unknown, + Sectors = 3772, + SectorSize = 512, + MD5 = "99f83e846c5106dd4992646726e91636" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/RsIde.cs b/Aaru.Tests/Images/RsIde.cs index 23687843d..f0da69c99 100644 --- a/Aaru.Tests/Images/RsIde.cs +++ b/Aaru.Tests/Images/RsIde.cs @@ -36,36 +36,19 @@ namespace Aaru.Tests.Images [TestFixture] public class RsIde : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "divide.hdf.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // divide.hdf.lz - 20480 - }; - - public override uint[] _sectorSize => new uint[] - { - // divide.hdf.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // divide.hdf.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // divide.hdf.lz - "ee7b8fe07784f2ebacc18da1fc248f5a" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "RS-IDE"); public override IMediaImage _plugin => new DiscImages.RsIde(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "divide.hdf.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 20480, + SectorSize = 512, + MD5 = "ee7b8fe07784f2ebacc18da1fc248f5a" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/SaveDskF.cs b/Aaru.Tests/Images/SaveDskF.cs index 22a8c7477..42bc337aa 100644 --- a/Aaru.Tests/Images/SaveDskF.cs +++ b/Aaru.Tests/Images/SaveDskF.cs @@ -36,1487 +36,971 @@ namespace Aaru.Tests.Images [TestFixture] public class SaveDskF : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "5dd8_c.dsk", "5dd8_ck.dsk", "5dd8_na.dsk", "5dd8_nak.dsk", "5dd8_n.dsk", "5dd8_nk.dsk", "5dd_c.dsk", - "5dd_ck.dsk", "5dd_na.dsk", "5dd_nak.dsk", "5dd_n.dsk", "5dd_nk.dsk", "5hd_c.dsk", "5hd_ck.dsk", - "5hd_na.dsk", "5hd_nak.dsk", "5hd_n.dsk", "5hd_nk.dsk", "5sd8_c.dsk", "5sd8_ck.dsk", "5sd8_na.dsk", - "5sd8_nak.dsk", "5sd8_n.dsk", "5sd8_nk.dsk", "5sd_c.dsk", "5sd_ck.dsk", "5sd_na.dsk", "5sd_nak.dsk", - "5sd_n.dsk", "5sd_nk.dsk", "md1dd8.dsk", "md1dd.dsk", "md1dd_fdformat_f200.dsk", "md1dd_fdformat_f205.dsk", - "md2dd_2m_fast.dsk", "md2dd_2m_max.dsk", "md2dd8.dsk", "md2dd.dsk", "md2dd_fdformat_f400.dsk", - "md2dd_fdformat_f410.dsk", "md2dd_fdformat_f720.dsk", "md2dd_fdformat_f800.dsk", "md2dd_fdformat_f820.dsk", - "md2dd_freedos_800s.dsk", "md2dd_maxiform_1640s.dsk", "md2dd_maxiform_840s.dsk", "md2dd_qcopy_1476s.dsk", - "md2dd_qcopy_1600s.dsk", "md2dd_qcopy_1640s.dsk", "md2hd_2m_fast.dsk", "md2hd_2m_max.dsk", "md2hd.dsk", - "md2hd_fdformat_f144.dsk", "md2hd_fdformat_f148.dsk", "md2hd_maxiform_2788s.dsk", "md2hd_xdf.dsk", - "mf2dd_2m.dsk", "mf2dd_2m_fast.dsk", "mf2dd_2mgui.dsk", "mf2dd_2m_max.dsk", "mf2dd_c.dsk", "mf2dd_ck.dsk", - "mf2dd.dsk", "mf2dd_fdformat_800.dsk", "mf2dd_fdformat_820.dsk", "mf2dd_fdformat_f800.dsk", - "mf2dd_fdformat_f820.dsk", "mf2dd_freedos_1600s.dsk", "mf2dd_maxiform_1600s.dsk", "mf2dd_na.dsk", - "mf2dd_nak.dsk", "mf2dd_n.dsk", "mf2dd_nk.dsk", "mf2dd_qcopy_1494s.dsk", "mf2dd_qcopy_1600s.dsk", - "mf2dd_qcopy_1660s.dsk", "mf2ed_c.dsk", "mf2ed_ck.dsk", "mf2ed.dsk", "mf2ed_na.dsk", "mf2ed_nak.dsk", - "mf2ed_n.dsk", "mf2ed_nk.dsk", "mf2hd_2m.dsk", "mf2hd_2m_fast.dsk", "mf2hd_2mgui.dsk", "mf2hd_2m_max.dsk", - "mf2hd_c.dsk", "mf2hd_ck.dsk", "mf2hd_dmf.dsk", "mf2hd.dsk", "mf2hd_fdformat_168.dsk", - "mf2hd_fdformat_172.dsk", "mf2hd_fdformat_f168.dsk", "mf2hd_fdformat_f16.dsk", "mf2hd_fdformat_f172.dsk", - "mf2hd_freedos_3360s.dsk", "mf2hd_freedos_3486s.dsk", "mf2hd_maxiform_3200s.dsk", "mf2hd_na.dsk", - "mf2hd_nak.dsk", "mf2hd_n.dsk", "mf2hd_nk.dsk", "mf2hd_qcopy_2460s.dsk", "mf2hd_qcopy_2720s.dsk", - "mf2hd_qcopy_2788s.dsk", "mf2hd_qcopy_2880s.dsk", "mf2hd_qcopy_2952s.dsk", "mf2hd_qcopy_2988s.dsk", - "mf2hd_qcopy_3200s.dsk", "mf2hd_qcopy_3320s.dsk", "mf2hd_qcopy_3360s.dsk", "mf2hd_qcopy_3486s.dsk", - "mf2hd_xdf_c.dsk", "mf2hd_xdf_ck.dsk", "mf2hd_xdf.dsk", "mf2hd_xdf_na.dsk", "mf2hd_xdf_nak.dsk", - "mf2hd_xdf_n.dsk", "mf2hd_xdf_nk.dsk" - }; - - public override ulong[] _sectors => new ulong[] - { - // 5dd8_c.dsk - 640, - - // 5dd8_ck.dsk - 640, - - // 5dd8_na.dsk - 640, - - // 5dd8_nak.dsk - 640, - - // 5dd8_n.dsk - 640, - - // 5dd8_nk.dsk - 640, - - // 5dd_c.dsk - 720, - - // 5dd_ck.dsk - 720, - - // 5dd_na.dsk - 720, - - // 5dd_nak.dsk - 720, - - // 5dd_n.dsk - 720, - - // 5dd_nk.dsk - 720, - - // 5hd_c.dsk - 2400, - - // 5hd_ck.dsk - 2400, - - // 5hd_na.dsk - 2400, - - // 5hd_nak.dsk - 2400, - - // 5hd_n.dsk - 2400, - - // 5hd_nk.dsk - 2400, - - // 5sd8_c.dsk - 320, - - // 5sd8_ck.dsk - 320, - - // 5sd8_na.dsk - 320, - - // 5sd8_nak.dsk - 320, - - // 5sd8_n.dsk - 320, - - // 5sd8_nk.dsk - 320, - - // 5sd_c.dsk - 360, - - // 5sd_ck.dsk - 360, - - // 5sd_na.dsk - 360, - - // 5sd_nak.dsk - 360, - - // 5sd_n.dsk - 360, - - // 5sd_nk.dsk - 360, - - // md1dd8.dsk - 320, - - // md1dd.dsk - 360, - - // md1dd_fdformat_f200.dsk - 400, - - // md1dd_fdformat_f205.dsk - 410, - - // md2dd_2m_fast.dsk - 1640, - - // md2dd_2m_max.dsk - 1804, - - // md2dd8.dsk - 640, - - // md2dd.dsk - 720, - - // md2dd_fdformat_f400.dsk - 800, - - // md2dd_fdformat_f410.dsk - 820, - - // md2dd_fdformat_f720.dsk - 1440, - - // md2dd_fdformat_f800.dsk - 1600, - - // md2dd_fdformat_f820.dsk - 1640, - - // md2dd_freedos_800s.dsk - 800, - - // md2dd_maxiform_1640s.dsk - 1640, - - // md2dd_maxiform_840s.dsk - 840, - - // md2dd_qcopy_1476s.dsk - 1476, - - // md2dd_qcopy_1600s.dsk - 1600, - - // md2dd_qcopy_1640s.dsk - 1640, - - // md2hd_2m_fast.dsk - 2952, - - // md2hd_2m_max.dsk - 3116, - - // md2hd.dsk - 2400, - - // md2hd_fdformat_f144.dsk - 2880, - - // md2hd_fdformat_f148.dsk - 2952, - - // md2hd_maxiform_2788s.dsk - 2788, - - // md2hd_xdf.dsk - 3040, - - // mf2dd_2m.dsk - 1968, - - // mf2dd_2m_fast.dsk - 1968, - - // mf2dd_2mgui.dsk - 9408, - - // mf2dd_2m_max.dsk - 2132, - - // mf2dd_c.dsk - 1440, - - // mf2dd_ck.dsk - 1440, - - // mf2dd.dsk - 1440, - - // mf2dd_fdformat_800.dsk - 1600, - - // mf2dd_fdformat_820.dsk - 1640, - - // mf2dd_fdformat_f800.dsk - 1600, - - // mf2dd_fdformat_f820.dsk - 1640, - - // mf2dd_freedos_1600s.dsk - 1600, - - // mf2dd_maxiform_1600s.dsk - 1600, - - // mf2dd_na.dsk - 1440, - - // mf2dd_nak.dsk - 1440, - - // mf2dd_n.dsk - 1440, - - // mf2dd_nk.dsk - 1440, - - // mf2dd_qcopy_1494s.dsk - 1494, - - // mf2dd_qcopy_1600s.dsk - 1600, - - // mf2dd_qcopy_1660s.dsk - 1660, - - // mf2ed_c.dsk - 5760, - - // mf2ed_ck.dsk - 5760, - - // mf2ed.dsk - 5760, - - // mf2ed_na.dsk - 5760, - - // mf2ed_nak.dsk - 5760, - - // mf2ed_n.dsk - 5760, - - // mf2ed_nk.dsk - 5760, - - // mf2hd_2m.dsk - 3608, - - // mf2hd_2m_fast.dsk - 3608, - - // mf2hd_2mgui.dsk - 15776, - - // mf2hd_2m_max.dsk - 3772, - - // mf2hd_c.dsk - 2880, - - // mf2hd_ck.dsk - 2880, - - // mf2hd_dmf.dsk - 3360, - - // mf2hd.dsk - 2880, - - // mf2hd_fdformat_168.dsk - 3360, - - // mf2hd_fdformat_172.dsk - 3444, - - // mf2hd_fdformat_f168.dsk - 3360, - - // mf2hd_fdformat_f16.dsk - 3200, - - // mf2hd_fdformat_f172.dsk - 3444, - - // mf2hd_freedos_3360s.dsk - 3360, - - // mf2hd_freedos_3486s.dsk - 3486, - - // mf2hd_maxiform_3200s.dsk - 3200, - - // mf2hd_na.dsk - 2880, - - // mf2hd_nak.dsk - 2880, - - // mf2hd_n.dsk - 2880, - - // mf2hd_nk.dsk - 2880, - - // mf2hd_qcopy_2460s.dsk - 2460, - - // mf2hd_qcopy_2720s.dsk - 2720, - - // mf2hd_qcopy_2788s.dsk - 2788, - - // mf2hd_qcopy_2880s.dsk - 2880, - - // mf2hd_qcopy_2952s.dsk - 2952, - - // mf2hd_qcopy_2988s.dsk - 2988, - - // mf2hd_qcopy_3200s.dsk - 3200, - - // mf2hd_qcopy_3320s.dsk - 3320, - - // mf2hd_qcopy_3360s.dsk - 3360, - - // mf2hd_qcopy_3486s.dsk - 3486, - - // mf2hd_xdf_c.dsk - 3680, - - // mf2hd_xdf_ck.dsk - 3680, - - // mf2hd_xdf.dsk - 3680, - - // mf2hd_xdf_na.dsk - 3680, - - // mf2hd_xdf_nak.dsk - 3680, - - // mf2hd_xdf_n.dsk - 3680, - - // mf2hd_xdf_nk.dsk - 3680 - }; - - public override uint[] _sectorSize => new uint[] - { - // 5dd8_c.dsk - 512, - - // 5dd8_ck.dsk - 512, - - // 5dd8_na.dsk - 512, - - // 5dd8_nak.dsk - 512, - - // 5dd8_n.dsk - 512, - - // 5dd8_nk.dsk - 512, - - // 5dd_c.dsk - 512, - - // 5dd_ck.dsk - 512, - - // 5dd_na.dsk - 512, - - // 5dd_nak.dsk - 512, - - // 5dd_n.dsk - 512, - - // 5dd_nk.dsk - 512, - - // 5hd_c.dsk - 512, - - // 5hd_ck.dsk - 512, - - // 5hd_na.dsk - 512, - - // 5hd_nak.dsk - 512, - - // 5hd_n.dsk - 512, - - // 5hd_nk.dsk - 512, - - // 5sd8_c.dsk - 512, - - // 5sd8_ck.dsk - 512, - - // 5sd8_na.dsk - 512, - - // 5sd8_nak.dsk - 512, - - // 5sd8_n.dsk - 512, - - // 5sd8_nk.dsk - 512, - - // 5sd_c.dsk - 512, - - // 5sd_ck.dsk - 512, - - // 5sd_na.dsk - 512, - - // 5sd_nak.dsk - 512, - - // 5sd_n.dsk - 512, - - // 5sd_nk.dsk - 512, - - // md1dd8.dsk - 512, - - // md1dd.dsk - 512, - - // md1dd_fdformat_f200.dsk - 512, - - // md1dd_fdformat_f205.dsk - 512, - - // md2dd_2m_fast.dsk - 512, - - // md2dd_2m_max.dsk - 512, - - // md2dd8.dsk - 512, - - // md2dd.dsk - 512, - - // md2dd_fdformat_f400.dsk - 512, - - // md2dd_fdformat_f410.dsk - 512, - - // md2dd_fdformat_f720.dsk - 512, - - // md2dd_fdformat_f800.dsk - 512, - - // md2dd_fdformat_f820.dsk - 512, - - // md2dd_freedos_800s.dsk - 512, - - // md2dd_maxiform_1640s.dsk - 512, - - // md2dd_maxiform_840s.dsk - 512, - - // md2dd_qcopy_1476s.dsk - 512, - - // md2dd_qcopy_1600s.dsk - 512, - - // md2dd_qcopy_1640s.dsk - 512, - - // md2hd_2m_fast.dsk - 512, - - // md2hd_2m_max.dsk - 512, - - // md2hd.dsk - 512, - - // md2hd_fdformat_f144.dsk - 512, - - // md2hd_fdformat_f148.dsk - 512, - - // md2hd_maxiform_2788s.dsk - 512, - - // md2hd_xdf.dsk - 512, - - // mf2dd_2m.dsk - 512, - - // mf2dd_2m_fast.dsk - 512, - - // mf2dd_2mgui.dsk - 128, - - // mf2dd_2m_max.dsk - 512, - - // mf2dd_c.dsk - 512, - - // mf2dd_ck.dsk - 512, - - // mf2dd.dsk - 512, - - // mf2dd_fdformat_800.dsk - 512, - - // mf2dd_fdformat_820.dsk - 512, - - // mf2dd_fdformat_f800.dsk - 512, - - // mf2dd_fdformat_f820.dsk - 512, - - // mf2dd_freedos_1600s.dsk - 512, - - // mf2dd_maxiform_1600s.dsk - 512, - - // mf2dd_na.dsk - 512, - - // mf2dd_nak.dsk - 512, - - // mf2dd_n.dsk - 512, - - // mf2dd_nk.dsk - 512, - - // mf2dd_qcopy_1494s.dsk - 512, - - // mf2dd_qcopy_1600s.dsk - 512, - - // mf2dd_qcopy_1660s.dsk - 512, - - // mf2ed_c.dsk - 512, - - // mf2ed_ck.dsk - 512, - - // mf2ed.dsk - 512, - - // mf2ed_na.dsk - 512, - - // mf2ed_nak.dsk - 512, - - // mf2ed_n.dsk - 512, - - // mf2ed_nk.dsk - 512, - - // mf2hd_2m.dsk - 512, - - // mf2hd_2m_fast.dsk - 512, - - // mf2hd_2mgui.dsk - 128, - - // mf2hd_2m_max.dsk - 512, - - // mf2hd_c.dsk - 512, - - // mf2hd_ck.dsk - 512, - - // mf2hd_dmf.dsk - 512, - - // mf2hd.dsk - 512, - - // mf2hd_fdformat_168.dsk - 512, - - // mf2hd_fdformat_172.dsk - 512, - - // mf2hd_fdformat_f168.dsk - 512, - - // mf2hd_fdformat_f16.dsk - 512, - - // mf2hd_fdformat_f172.dsk - 512, - - // mf2hd_freedos_3360s.dsk - 512, - - // mf2hd_freedos_3486s.dsk - 512, - - // mf2hd_maxiform_3200s.dsk - 512, - - // mf2hd_na.dsk - 512, - - // mf2hd_nak.dsk - 512, - - // mf2hd_n.dsk - 512, - - // mf2hd_nk.dsk - 512, - - // mf2hd_qcopy_2460s.dsk - 512, - - // mf2hd_qcopy_2720s.dsk - 512, - - // mf2hd_qcopy_2788s.dsk - 512, - - // mf2hd_qcopy_2880s.dsk - 512, - - // mf2hd_qcopy_2952s.dsk - 512, - - // mf2hd_qcopy_2988s.dsk - 512, - - // mf2hd_qcopy_3200s.dsk - 512, - - // mf2hd_qcopy_3320s.dsk - 512, - - // mf2hd_qcopy_3360s.dsk - 512, - - // mf2hd_qcopy_3486s.dsk - 512, - - // mf2hd_xdf_c.dsk - 512, - - // mf2hd_xdf_ck.dsk - 512, - - // mf2hd_xdf.dsk - 512, - - // mf2hd_xdf_na.dsk - 512, - - // mf2hd_xdf_nak.dsk - 512, - - // mf2hd_xdf_n.dsk - 512, - - // mf2hd_xdf_nk.dsk - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // 5dd8_c.dsk - MediaType.DOS_525_DS_DD_8, - - // 5dd8_ck.dsk - MediaType.DOS_525_DS_DD_8, - - // 5dd8_na.dsk - MediaType.DOS_525_DS_DD_8, - - // 5dd8_nak.dsk - MediaType.DOS_525_DS_DD_8, - - // 5dd8_n.dsk - MediaType.DOS_525_DS_DD_8, - - // 5dd8_nk.dsk - MediaType.DOS_525_DS_DD_8, - - // 5dd_c.dsk - MediaType.DOS_525_DS_DD_9, - - // 5dd_ck.dsk - MediaType.DOS_525_DS_DD_9, - - // 5dd_na.dsk - MediaType.DOS_525_DS_DD_9, - - // 5dd_nak.dsk - MediaType.DOS_525_DS_DD_9, - - // 5dd_n.dsk - MediaType.DOS_525_DS_DD_9, - - // 5dd_nk.dsk - MediaType.DOS_525_DS_DD_9, - - // 5hd_c.dsk - MediaType.DOS_525_HD, - - // 5hd_ck.dsk - MediaType.DOS_525_HD, - - // 5hd_na.dsk - MediaType.DOS_525_HD, - - // 5hd_nak.dsk - MediaType.DOS_525_HD, - - // 5hd_n.dsk - MediaType.DOS_525_HD, - - // 5hd_nk.dsk - MediaType.DOS_525_HD, - - // 5sd8_c.dsk - MediaType.DOS_525_SS_DD_8, - - // 5sd8_ck.dsk - MediaType.DOS_525_SS_DD_8, - - // 5sd8_na.dsk - MediaType.DOS_525_SS_DD_8, - - // 5sd8_nak.dsk - MediaType.DOS_525_SS_DD_8, - - // 5sd8_n.dsk - MediaType.DOS_525_SS_DD_8, - - // 5sd8_nk.dsk - MediaType.DOS_525_SS_DD_8, - - // 5sd_c.dsk - MediaType.DOS_525_SS_DD_9, - - // 5sd_ck.dsk - MediaType.DOS_525_SS_DD_9, - - // 5sd_na.dsk - MediaType.DOS_525_SS_DD_9, - - // 5sd_nak.dsk - MediaType.DOS_525_SS_DD_9, - - // 5sd_n.dsk - MediaType.DOS_525_SS_DD_9, - - // 5sd_nk.dsk - MediaType.DOS_525_SS_DD_9, - - // md1dd8.dsk - MediaType.DOS_525_SS_DD_8, - - // md1dd.dsk - MediaType.DOS_525_SS_DD_9, - - // md1dd_fdformat_f200.dsk - MediaType.Unknown, - - // md1dd_fdformat_f205.dsk - MediaType.Unknown, - - // md2dd_2m_fast.dsk - MediaType.FDFORMAT_35_DD, - - // md2dd_2m_max.dsk - MediaType.Unknown, - - // md2dd8.dsk - MediaType.DOS_525_DS_DD_8, - - // md2dd.dsk - MediaType.DOS_525_DS_DD_9, - - // md2dd_fdformat_f400.dsk - MediaType.Unknown, - - // md2dd_fdformat_f410.dsk - MediaType.Unknown, - - // md2dd_fdformat_f720.dsk - MediaType.DOS_35_DS_DD_9, - - // md2dd_fdformat_f800.dsk - MediaType.CBM_35_DD, - - // md2dd_fdformat_f820.dsk - MediaType.FDFORMAT_35_DD, - - // md2dd_freedos_800s.dsk - MediaType.Unknown, - - // md2dd_maxiform_1640s.dsk - MediaType.FDFORMAT_35_DD, - - // md2dd_maxiform_840s.dsk - MediaType.Unknown, - - // md2dd_qcopy_1476s.dsk - MediaType.Unknown, - - // md2dd_qcopy_1600s.dsk - MediaType.CBM_35_DD, - - // md2dd_qcopy_1640s.dsk - MediaType.FDFORMAT_35_DD, - - // md2hd_2m_fast.dsk - MediaType.Unknown, - - // md2hd_2m_max.dsk - MediaType.Unknown, - - // md2hd.dsk - MediaType.DOS_525_HD, - - // md2hd_fdformat_f144.dsk - MediaType.DOS_35_HD, - - // md2hd_fdformat_f148.dsk - MediaType.Unknown, - - // md2hd_maxiform_2788s.dsk - MediaType.FDFORMAT_525_HD, - - // md2hd_xdf.dsk - MediaType.XDF_525, - - // mf2dd_2m.dsk - MediaType.Unknown, - - // mf2dd_2m_fast.dsk - MediaType.Unknown, - - // mf2dd_2mgui.dsk - MediaType.Unknown, - - // mf2dd_2m_max.dsk - MediaType.Unknown, - - // mf2dd_c.dsk - MediaType.DOS_35_DS_DD_9, - - // mf2dd_ck.dsk - MediaType.DOS_35_DS_DD_9, - - // mf2dd.dsk - MediaType.DOS_35_DS_DD_9, - - // mf2dd_fdformat_800.dsk - MediaType.CBM_35_DD, - - // mf2dd_fdformat_820.dsk - MediaType.FDFORMAT_35_DD, - - // mf2dd_fdformat_f800.dsk - MediaType.CBM_35_DD, - - // mf2dd_fdformat_f820.dsk - MediaType.FDFORMAT_35_DD, - - // mf2dd_freedos_1600s.dsk - MediaType.CBM_35_DD, - - // mf2dd_maxiform_1600s.dsk - MediaType.CBM_35_DD, - - // mf2dd_na.dsk - MediaType.DOS_35_DS_DD_9, - - // mf2dd_nak.dsk - MediaType.DOS_35_DS_DD_9, - - // mf2dd_n.dsk - MediaType.DOS_35_DS_DD_9, - - // mf2dd_nk.dsk - MediaType.DOS_35_DS_DD_9, - - // mf2dd_qcopy_1494s.dsk - MediaType.Unknown, - - // mf2dd_qcopy_1600s.dsk - MediaType.CBM_35_DD, - - // mf2dd_qcopy_1660s.dsk - MediaType.Unknown, - - // mf2ed_c.dsk - MediaType.ECMA_147, - - // mf2ed_ck.dsk - MediaType.ECMA_147, - - // mf2ed.dsk - MediaType.ECMA_147, - - // mf2ed_na.dsk - MediaType.ECMA_147, - - // mf2ed_nak.dsk - MediaType.ECMA_147, - - // mf2ed_n.dsk - MediaType.ECMA_147, - - // mf2ed_nk.dsk - MediaType.ECMA_147, - - // mf2hd_2m.dsk - MediaType.Unknown, - - // mf2hd_2m_fast.dsk - MediaType.Unknown, - - // mf2hd_2mgui.dsk - MediaType.Unknown, - - // mf2hd_2m_max.dsk - MediaType.Unknown, - - // mf2hd_c.dsk - MediaType.DOS_35_HD, - - // mf2hd_ck.dsk - MediaType.DOS_35_HD, - - // mf2hd_dmf.dsk - MediaType.DMF, - - // mf2hd.dsk - MediaType.DOS_35_HD, - - // mf2hd_fdformat_168.dsk - MediaType.DMF, - - // mf2hd_fdformat_172.dsk - MediaType.FDFORMAT_35_HD, - - // mf2hd_fdformat_f168.dsk - MediaType.DMF, - - // mf2hd_fdformat_f16.dsk - MediaType.Unknown, - - // mf2hd_fdformat_f172.dsk - MediaType.FDFORMAT_35_HD, - - // mf2hd_freedos_3360s.dsk - MediaType.DMF, - - // mf2hd_freedos_3486s.dsk - MediaType.Unknown, - - // mf2hd_maxiform_3200s.dsk - MediaType.Unknown, - - // mf2hd_na.dsk - MediaType.DOS_35_HD, - - // mf2hd_nak.dsk - MediaType.DOS_35_HD, - - // mf2hd_n.dsk - MediaType.DOS_35_HD, - - // mf2hd_nk.dsk - MediaType.DOS_35_HD, - - // mf2hd_qcopy_2460s.dsk - MediaType.Unknown, - - // mf2hd_qcopy_2720s.dsk - MediaType.Unknown, - - // mf2hd_qcopy_2788s.dsk - MediaType.FDFORMAT_525_HD, - - // mf2hd_qcopy_2880s.dsk - MediaType.DOS_35_HD, - - // mf2hd_qcopy_2952s.dsk - MediaType.Unknown, - - // mf2hd_qcopy_2988s.dsk - MediaType.Unknown, - - // mf2hd_qcopy_3200s.dsk - MediaType.Unknown, - - // mf2hd_qcopy_3320s.dsk - MediaType.Unknown, - - // mf2hd_qcopy_3360s.dsk - MediaType.DMF, - - // mf2hd_qcopy_3486s.dsk - MediaType.Unknown, - - // mf2hd_xdf_c.dsk - MediaType.XDF_35, - - // mf2hd_xdf_ck.dsk - MediaType.XDF_35, - - // mf2hd_xdf.dsk - MediaType.XDF_35, - - // mf2hd_xdf_na.dsk - MediaType.XDF_35, - - // mf2hd_xdf_nak.dsk - MediaType.XDF_35, - - // mf2hd_xdf_n.dsk - MediaType.XDF_35, - - // mf2hd_xdf_nk.dsk - MediaType.XDF_35 - }; - - public override string[] _md5S => new[] - { - // 5dd8_c.dsk - "5a1e0a75d31d88c1ce7429fd333c268f", - - // 5dd8_ck.dsk - "5a1e0a75d31d88c1ce7429fd333c268f", - - // 5dd8_na.dsk - "4989762c82f173f9b52e0bdb8cf5becb", - - // 5dd8_nak.dsk - "4989762c82f173f9b52e0bdb8cf5becb", - - // 5dd8_n.dsk - "5a1e0a75d31d88c1ce7429fd333c268f", - - // 5dd8_nk.dsk - "5a1e0a75d31d88c1ce7429fd333c268f", - - // 5dd_c.dsk - "c1a67b27bc76b64d0845965501b24120", - - // 5dd_ck.dsk - "c1a67b27bc76b64d0845965501b24120", - - // 5dd_na.dsk - "8a4d35dd0d97e6bca8b000170a43a56f", - - // 5dd_nak.dsk - "8a4d35dd0d97e6bca8b000170a43a56f", - - // 5dd_n.dsk - "c1a67b27bc76b64d0845965501b24120", - - // 5dd_nk.dsk - "c1a67b27bc76b64d0845965501b24120", - - // 5hd_c.dsk - "1c28b4c3cdc1dbf19c24a5eca3891a87", - - // 5hd_ck.dsk - "1c28b4c3cdc1dbf19c24a5eca3891a87", - - // 5hd_na.dsk - "2ce745ac23712d3eb03d7a11ba933b12", - - // 5hd_nak.dsk - "2ce745ac23712d3eb03d7a11ba933b12", - - // 5hd_n.dsk - "1c28b4c3cdc1dbf19c24a5eca3891a87", - - // 5hd_nk.dsk - "1c28b4c3cdc1dbf19c24a5eca3891a87", - - // 5sd8_c.dsk - "65ce0cd08d90c882df12637c9c72c1ba", - - // 5sd8_ck.dsk - "65ce0cd08d90c882df12637c9c72c1ba", - - // 5sd8_na.dsk - "6f5d09c13a7b481bad9ea78042e61e00", - - // 5sd8_nak.dsk - "6f5d09c13a7b481bad9ea78042e61e00", - - // 5sd8_n.dsk - "65ce0cd08d90c882df12637c9c72c1ba", - - // 5sd8_nk.dsk - "65ce0cd08d90c882df12637c9c72c1ba", - - // 5sd_c.dsk - "412fdc582506c0d7e76735d403b30759", - - // 5sd_ck.dsk - "412fdc582506c0d7e76735d403b30759", - - // 5sd_na.dsk - "fd81fceb26bda5b02053c5c729a6f67f", - - // 5sd_nak.dsk - "fd81fceb26bda5b02053c5c729a6f67f", - - // 5sd_n.dsk - "412fdc582506c0d7e76735d403b30759", - - // 5sd_nk.dsk - "412fdc582506c0d7e76735d403b30759", - - // md1dd8.dsk - "d81f5cb64fd0b99f138eab34110bbc3c", - - // md1dd.dsk - "a89006a75d13bee9202d1d6e52721ccb", - - // md1dd_fdformat_f200.dsk - "e1ad4a022778d7a0b24a93d8e68a59dc", - - // md1dd_fdformat_f205.dsk - "353f3c2125ab6f74e3a271b60ad34840", - - // md2dd_2m_fast.dsk - "319fa8bef964c2a63e34bdb48e77cc4e", - - // md2dd_2m_max.dsk - "306a61469b4c3c83f3e5f9ae409d83cd", - - // md2dd8.dsk - "beef1cdb004dc69391d6b3d508988b95", - - // md2dd.dsk - "6213897b7dbf263f12abf76901d43862", - - // md2dd_fdformat_f400.dsk - "0aef12c906b744101b932d799ca88a78", - - // md2dd_fdformat_f410.dsk - "348d12add1ed226cd712a4a6a10d1a34", - - // md2dd_fdformat_f720.dsk - "1c36b819cfe355c11360bc120c9216fe", - - // md2dd_fdformat_f800.dsk - "25114403c11e337480e2afc4e6e32108", - - // md2dd_fdformat_f820.dsk - "3d7760ddaa55cd258057773d15106b78", - - // md2dd_freedos_800s.dsk - "29054ef703394ee3b35e849468a412ba", - - // md2dd_maxiform_1640s.dsk - "c91e852828c2aeee2fc94a6adbeed0ae", - - // md2dd_maxiform_840s.dsk - "efb6cfe53a6770f0ae388cb2c7f46264", - - // md2dd_qcopy_1476s.dsk - "6116f7c1397cadd55ba8d79c2aadc9dd", - - // md2dd_qcopy_1600s.dsk - "93100f8d86e5d0d0e6340f59c52a5e0d", - - // md2dd_qcopy_1640s.dsk - "cf7b7d43aa70863bedcc4a8432a5af67", - - // md2hd_2m_fast.dsk - "215198cf2a336e718208fc207bb62c6d", - - // md2hd_2m_max.dsk - "2c96964b5d91444302e21721c25ea120", - - // md2hd.dsk - "02259cd5fbcc20f8484aa6bece7a37c6", - - // md2hd_fdformat_f144.dsk - "073a172879a71339ef4b00ebb47b67fc", - - // md2hd_fdformat_f148.dsk - "d9890897130d0fc1eee3dbf4d9b0440f", - - // md2hd_maxiform_2788s.dsk - "09ca721aa883d5bbaa422c7943b0782c", - - // md2hd_xdf.dsk - "d78dc81491edeec99aa202d02f3daf00", - - // mf2dd_2m.dsk - "9a8670fbaf6307b8d5f32aa10e1be435", - - // mf2dd_2m_fast.dsk - "05d29642cdcddafa0dcaff91682f8fe0", - - // mf2dd_2mgui.dsk - "beb782f6bc970e32ceef79cd112e2e48", - - // mf2dd_2m_max.dsk - "a99603cd3219aab1299e66b2999f0e57", - - // mf2dd_c.dsk - "2aefc1e97f29bf9982e0fd7091dfb9f5", - - // mf2dd_ck.dsk - "2aefc1e97f29bf9982e0fd7091dfb9f5", - - // mf2dd.dsk - "9827ba1b3e9cac41263caabd862e78f9", - - // mf2dd_fdformat_800.dsk - "2e69bbd591ab736e471834ae03dde9a6", - - // mf2dd_fdformat_820.dsk - "81d3bfec7b201f6a4503eb24c4394d4a", - - // mf2dd_fdformat_f800.dsk - "26532a62985b51a2c3b877a57f6d257b", - - // mf2dd_fdformat_f820.dsk - "a7771acff766557cc23b8c6943b588f9", - - // mf2dd_freedos_1600s.dsk - "d07f7ffaee89742c6477aaaf94eb5715", - - // mf2dd_maxiform_1600s.dsk - "56af87802a9852e6e01e08d544740816", - - // mf2dd_na.dsk - "e574be0d057f2ef775dfb685561d27cf", - - // mf2dd_nak.dsk - "e574be0d057f2ef775dfb685561d27cf", - - // mf2dd_n.dsk - "2aefc1e97f29bf9982e0fd7091dfb9f5", - - // mf2dd_nk.dsk - "2aefc1e97f29bf9982e0fd7091dfb9f5", - - // mf2dd_qcopy_1494s.dsk - "fd7fb1ba11cdfe11db54af0322abf59d", - - // mf2dd_qcopy_1600s.dsk - "d9db52d992a76bf3bbc626ff844215a5", - - // mf2dd_qcopy_1660s.dsk - "5949d0be57ce8bffcda7c4be4d1348ee", - - // mf2ed_c.dsk - "e4746aa9629a2325c520db1c8a641ac6", - - // mf2ed_ck.dsk - "e4746aa9629a2325c520db1c8a641ac6", - - // mf2ed.dsk - "4aeafaf2a088d6a7406856dce8118567", - - // mf2ed_na.dsk - "42e73287b23ac985c9825466cae26859", - - // mf2ed_nak.dsk - "42e73287b23ac985c9825466cae26859", - - // mf2ed_n.dsk - "e4746aa9629a2325c520db1c8a641ac6", - - // mf2ed_nk.dsk - "e4746aa9629a2325c520db1c8a641ac6", - - // mf2hd_2m.dsk - "2f6964d410b275c8e9f60fe2f24b361a", - - // mf2hd_2m_fast.dsk - "967726aede85c68f66887672078f8856", - - // mf2hd_2mgui.dsk - "786e45bbfcb369913968aa31365f00bb", - - // mf2hd_2m_max.dsk - "3fa4f87d7058ba940b88e0d80f0d7ded", - - // mf2hd_c.dsk - "003e9130d83a23018f488f9fa89cae5e", - - // mf2hd_ck.dsk - "003e9130d83a23018f488f9fa89cae5e", - - // mf2hd_dmf.dsk - "b042310181410227d0072fef1e98a989", - - // mf2hd.dsk - "00e61c06bf29f0c04a7eabe2dbd7efb6", - - // mf2hd_fdformat_168.dsk - "1e06f21a1c11ea3347212da115bca08f", - - // mf2hd_fdformat_172.dsk - "3fc3a03d049416d81f81cc3b9ea8e5de", - - // mf2hd_fdformat_f168.dsk - "7e3bf04f3660dd1052a335dc99441e44", - - // mf2hd_fdformat_f16.dsk - "8eb8cb310feaf03c69fffd4f6e729847", - - // mf2hd_fdformat_f172.dsk - "a58fd062f024b95714f1223a8bc2232f", - - // mf2hd_freedos_3360s.dsk - "2bfd2e0a81bad704f8fc7758358cfcca", - - // mf2hd_freedos_3486s.dsk - "a79ec33c623697b4562dacaed31523b8", - - // mf2hd_maxiform_3200s.dsk - "3c4becd695ed25866d39966a9a93c2d9", - - // mf2hd_na.dsk - "009cc68e28b2b13814d3afbec9d9e59f", - - // mf2hd_nak.dsk - "009cc68e28b2b13814d3afbec9d9e59f", - - // mf2hd_n.dsk - "003e9130d83a23018f488f9fa89cae5e", - - // mf2hd_nk.dsk - "003e9130d83a23018f488f9fa89cae5e", - - // mf2hd_qcopy_2460s.dsk - "72282e11f7d91bf9c090b550fabfe80d", - - // mf2hd_qcopy_2720s.dsk - "457c1126dc7f36bbbabe9e17e90372e3", - - // mf2hd_qcopy_2788s.dsk - "852181d5913c6f290872c66bbe992314", - - // mf2hd_qcopy_2880s.dsk - "2980cc32504c945598dc50f1db576994", - - // mf2hd_qcopy_2952s.dsk - "c1c58d74fffb3656dd7f60f74ae8a629", - - // mf2hd_qcopy_2988s.dsk - "097bb2fd34cee5ebde7b5641975ffd60", - - // mf2hd_qcopy_3200s.dsk - "e45d41a61fbe48f328c995fcc10a5548", - - // mf2hd_qcopy_3320s.dsk - "c25f2a57c71db1cd4fea2263598f544a", - - // mf2hd_qcopy_3360s.dsk - "15f71b92bd72aba5d80bf70eca4d5b1e", - - // mf2hd_qcopy_3486s.dsk - "d88c8d818e238c9e52b8588b5fd52efe", - - // mf2hd_xdf_c.dsk - "2770e5b1b7935ca6e9695a32008b936a", - - // mf2hd_xdf_ck.dsk - "2770e5b1b7935ca6e9695a32008b936a", - - // mf2hd_xdf.dsk - "3d5fcdaf627257ae9f50a06bdba26965", - - // mf2hd_xdf_na.dsk - "34b4bdab5fcc17076cceb7c1a39ea430", - - // mf2hd_xdf_nak.dsk - "34b4bdab5fcc17076cceb7c1a39ea430", - - // mf2hd_xdf_n.dsk - "2770e5b1b7935ca6e9695a32008b936a", - - // mf2hd_xdf_nk.dsk - "2770e5b1b7935ca6e9695a32008b936a" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "SaveDskF"); public override IMediaImage _plugin => new DiscImages.SaveDskF(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "5dd8_c.dsk", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "5a1e0a75d31d88c1ce7429fd333c268f" + }, + new BlockImageTestExpected + { + TestFile = "5dd8_ck.dsk", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "5a1e0a75d31d88c1ce7429fd333c268f" + }, + new BlockImageTestExpected + { + TestFile = "5dd8_na.dsk", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "4989762c82f173f9b52e0bdb8cf5becb" + }, + new BlockImageTestExpected + { + TestFile = "5dd8_nak.dsk", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "4989762c82f173f9b52e0bdb8cf5becb" + }, + new BlockImageTestExpected + { + TestFile = "5dd8_n.dsk", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "5a1e0a75d31d88c1ce7429fd333c268f" + }, + new BlockImageTestExpected + { + TestFile = "5dd8_nk.dsk", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "5a1e0a75d31d88c1ce7429fd333c268f" + }, + new BlockImageTestExpected + { + TestFile = "5dd_c.dsk", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "c1a67b27bc76b64d0845965501b24120" + }, + new BlockImageTestExpected + { + TestFile = "5dd_ck.dsk", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "c1a67b27bc76b64d0845965501b24120" + }, + new BlockImageTestExpected + { + TestFile = "5dd_na.dsk", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "8a4d35dd0d97e6bca8b000170a43a56f" + }, + new BlockImageTestExpected + { + TestFile = "5dd_nak.dsk", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "8a4d35dd0d97e6bca8b000170a43a56f" + }, + new BlockImageTestExpected + { + TestFile = "5dd_n.dsk", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "c1a67b27bc76b64d0845965501b24120" + }, + new BlockImageTestExpected + { + TestFile = "5dd_nk.dsk", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "c1a67b27bc76b64d0845965501b24120" + }, + new BlockImageTestExpected + { + TestFile = "5hd_c.dsk", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "1c28b4c3cdc1dbf19c24a5eca3891a87" + }, + new BlockImageTestExpected + { + TestFile = "5hd_ck.dsk", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "1c28b4c3cdc1dbf19c24a5eca3891a87" + }, + new BlockImageTestExpected + { + TestFile = "5hd_na.dsk", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "2ce745ac23712d3eb03d7a11ba933b12" + }, + new BlockImageTestExpected + { + TestFile = "5hd_nak.dsk", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "2ce745ac23712d3eb03d7a11ba933b12" + }, + new BlockImageTestExpected + { + TestFile = "5hd_n.dsk", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "1c28b4c3cdc1dbf19c24a5eca3891a87" + }, + new BlockImageTestExpected + { + TestFile = "5hd_nk.dsk", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "1c28b4c3cdc1dbf19c24a5eca3891a87" + }, + new BlockImageTestExpected + { + TestFile = "5sd8_c.dsk", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "65ce0cd08d90c882df12637c9c72c1ba" + }, + new BlockImageTestExpected + { + TestFile = "5sd8_ck.dsk", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "65ce0cd08d90c882df12637c9c72c1ba" + }, + new BlockImageTestExpected + { + TestFile = "5sd8_na.dsk", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6f5d09c13a7b481bad9ea78042e61e00" + }, + new BlockImageTestExpected + { + TestFile = "5sd8_nak.dsk", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "6f5d09c13a7b481bad9ea78042e61e00" + }, + new BlockImageTestExpected + { + TestFile = "5sd8_n.dsk", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "65ce0cd08d90c882df12637c9c72c1ba" + }, + new BlockImageTestExpected + { + TestFile = "5sd8_nk.dsk", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "65ce0cd08d90c882df12637c9c72c1ba" + }, + new BlockImageTestExpected + { + TestFile = "5sd_c.dsk", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "412fdc582506c0d7e76735d403b30759" + }, + new BlockImageTestExpected + { + TestFile = "5sd_ck.dsk", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "412fdc582506c0d7e76735d403b30759" + }, + new BlockImageTestExpected + { + TestFile = "5sd_na.dsk", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "fd81fceb26bda5b02053c5c729a6f67f" + }, + new BlockImageTestExpected + { + TestFile = "5sd_nak.dsk", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "fd81fceb26bda5b02053c5c729a6f67f" + }, + new BlockImageTestExpected + { + TestFile = "5sd_n.dsk", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "412fdc582506c0d7e76735d403b30759" + }, + new BlockImageTestExpected + { + TestFile = "5sd_nk.dsk", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "412fdc582506c0d7e76735d403b30759" + }, + new BlockImageTestExpected + { + TestFile = "md1dd8.dsk", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "d81f5cb64fd0b99f138eab34110bbc3c" + }, + new BlockImageTestExpected + { + TestFile = "md1dd.dsk", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "a89006a75d13bee9202d1d6e52721ccb" + }, + new BlockImageTestExpected + { + TestFile = "md1dd_fdformat_f200.dsk", + MediaType = MediaType.Unknown, + Sectors = 400, + SectorSize = 512, + MD5 = "e1ad4a022778d7a0b24a93d8e68a59dc" + }, + new BlockImageTestExpected + { + TestFile = "md1dd_fdformat_f205.dsk", + MediaType = MediaType.Unknown, + Sectors = 410, + SectorSize = 512, + MD5 = "353f3c2125ab6f74e3a271b60ad34840" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_2m_fast.dsk", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "319fa8bef964c2a63e34bdb48e77cc4e" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_2m_max.dsk", + MediaType = MediaType.Unknown, + Sectors = 1804, + SectorSize = 512, + MD5 = "306a61469b4c3c83f3e5f9ae409d83cd" + }, + new BlockImageTestExpected + { + TestFile = "md2dd8.dsk", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "beef1cdb004dc69391d6b3d508988b95" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.dsk", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "6213897b7dbf263f12abf76901d43862" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f400.dsk", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "0aef12c906b744101b932d799ca88a78" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f410.dsk", + MediaType = MediaType.Unknown, + Sectors = 820, + SectorSize = 512, + MD5 = "348d12add1ed226cd712a4a6a10d1a34" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f720.dsk", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "1c36b819cfe355c11360bc120c9216fe" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f800.dsk", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "25114403c11e337480e2afc4e6e32108" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f820.dsk", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "3d7760ddaa55cd258057773d15106b78" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_freedos_800s.dsk", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "29054ef703394ee3b35e849468a412ba" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_maxiform_1640s.dsk", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "c91e852828c2aeee2fc94a6adbeed0ae" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_maxiform_840s.dsk", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "efb6cfe53a6770f0ae388cb2c7f46264" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1476s.dsk", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "6116f7c1397cadd55ba8d79c2aadc9dd" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1600s.dsk", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "93100f8d86e5d0d0e6340f59c52a5e0d" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1640s.dsk", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "cf7b7d43aa70863bedcc4a8432a5af67" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_2m_fast.dsk", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "215198cf2a336e718208fc207bb62c6d" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_2m_max.dsk", + MediaType = MediaType.Unknown, + Sectors = 3116, + SectorSize = 512, + MD5 = "2c96964b5d91444302e21721c25ea120" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.dsk", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "02259cd5fbcc20f8484aa6bece7a37c6" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_fdformat_f144.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "073a172879a71339ef4b00ebb47b67fc" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_fdformat_f148.dsk", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "d9890897130d0fc1eee3dbf4d9b0440f" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_maxiform_2788s.dsk", + MediaType = MediaType.FDFORMAT_525_HD, + Sectors = 2788, + SectorSize = 512, + MD5 = "09ca721aa883d5bbaa422c7943b0782c" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_xdf.dsk", + MediaType = MediaType.XDF_525, + Sectors = 3040, + SectorSize = 512, + MD5 = "d78dc81491edeec99aa202d02f3daf00" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2m.dsk", + MediaType = MediaType.Unknown, + Sectors = 1968, + SectorSize = 512, + MD5 = "9a8670fbaf6307b8d5f32aa10e1be435" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2m_fast.dsk", + MediaType = MediaType.Unknown, + Sectors = 1968, + SectorSize = 512, + MD5 = "05d29642cdcddafa0dcaff91682f8fe0" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2mgui.dsk", + MediaType = MediaType.Unknown, + Sectors = 9408, + SectorSize = 128, + MD5 = "beb782f6bc970e32ceef79cd112e2e48" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_2m_max.dsk", + MediaType = MediaType.Unknown, + Sectors = 2132, + SectorSize = 512, + MD5 = "a99603cd3219aab1299e66b2999f0e57" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_c.dsk", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "2aefc1e97f29bf9982e0fd7091dfb9f5" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_ck.dsk", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "2aefc1e97f29bf9982e0fd7091dfb9f5" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.dsk", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "9827ba1b3e9cac41263caabd862e78f9" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.dsk", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "2e69bbd591ab736e471834ae03dde9a6" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.dsk", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "81d3bfec7b201f6a4503eb24c4394d4a" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_f800.dsk", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "26532a62985b51a2c3b877a57f6d257b" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_f820.dsk", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "a7771acff766557cc23b8c6943b588f9" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos_1600s.dsk", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "d07f7ffaee89742c6477aaaf94eb5715" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_maxiform_1600s.dsk", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "56af87802a9852e6e01e08d544740816" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_na.dsk", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "e574be0d057f2ef775dfb685561d27cf" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_nak.dsk", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "e574be0d057f2ef775dfb685561d27cf" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_n.dsk", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "2aefc1e97f29bf9982e0fd7091dfb9f5" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_nk.dsk", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "2aefc1e97f29bf9982e0fd7091dfb9f5" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1494s.dsk", + MediaType = MediaType.Unknown, + Sectors = 1494, + SectorSize = 512, + MD5 = "fd7fb1ba11cdfe11db54af0322abf59d" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1600s.dsk", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "d9db52d992a76bf3bbc626ff844215a5" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1660s.dsk", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "5949d0be57ce8bffcda7c4be4d1348ee" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed_c.dsk", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "e4746aa9629a2325c520db1c8a641ac6" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed_ck.dsk", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "e4746aa9629a2325c520db1c8a641ac6" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed.dsk", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "4aeafaf2a088d6a7406856dce8118567" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed_na.dsk", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "42e73287b23ac985c9825466cae26859" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed_nak.dsk", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "42e73287b23ac985c9825466cae26859" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed_n.dsk", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "e4746aa9629a2325c520db1c8a641ac6" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed_nk.dsk", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "e4746aa9629a2325c520db1c8a641ac6" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.dsk", + MediaType = MediaType.Unknown, + Sectors = 3608, + SectorSize = 512, + MD5 = "2f6964d410b275c8e9f60fe2f24b361a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_fast.dsk", + MediaType = MediaType.Unknown, + Sectors = 3608, + SectorSize = 512, + MD5 = "967726aede85c68f66887672078f8856" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2mgui.dsk", + MediaType = MediaType.Unknown, + Sectors = 15776, + SectorSize = 128, + MD5 = "786e45bbfcb369913968aa31365f00bb" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.dsk", + MediaType = MediaType.Unknown, + Sectors = 3772, + SectorSize = 512, + MD5 = "3fa4f87d7058ba940b88e0d80f0d7ded" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_c.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "003e9130d83a23018f488f9fa89cae5e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_ck.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "003e9130d83a23018f488f9fa89cae5e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_dmf.dsk", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "b042310181410227d0072fef1e98a989" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "00e61c06bf29f0c04a7eabe2dbd7efb6" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.dsk", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "1e06f21a1c11ea3347212da115bca08f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.dsk", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "3fc3a03d049416d81f81cc3b9ea8e5de" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f168.dsk", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7e3bf04f3660dd1052a335dc99441e44" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f16.dsk", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "8eb8cb310feaf03c69fffd4f6e729847" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f172.dsk", + MediaType = MediaType.FDFORMAT_35_HD, + Sectors = 3444, + SectorSize = 512, + MD5 = "a58fd062f024b95714f1223a8bc2232f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos_3360s.dsk", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "2bfd2e0a81bad704f8fc7758358cfcca" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos_3486s.dsk", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "a79ec33c623697b4562dacaed31523b8" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_maxiform_3200s.dsk", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "3c4becd695ed25866d39966a9a93c2d9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_na.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "009cc68e28b2b13814d3afbec9d9e59f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_nak.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "009cc68e28b2b13814d3afbec9d9e59f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_n.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "003e9130d83a23018f488f9fa89cae5e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_nk.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "003e9130d83a23018f488f9fa89cae5e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2460s.dsk", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "72282e11f7d91bf9c090b550fabfe80d" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2720s.dsk", + MediaType = MediaType.Unknown, + Sectors = 2720, + SectorSize = 512, + MD5 = "457c1126dc7f36bbbabe9e17e90372e3" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2788s.dsk", + MediaType = MediaType.FDFORMAT_525_HD, + Sectors = 2788, + SectorSize = 512, + MD5 = "852181d5913c6f290872c66bbe992314" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2880s.dsk", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "2980cc32504c945598dc50f1db576994" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2952s.dsk", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "c1c58d74fffb3656dd7f60f74ae8a629" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2988s.dsk", + MediaType = MediaType.Unknown, + Sectors = 2988, + SectorSize = 512, + MD5 = "097bb2fd34cee5ebde7b5641975ffd60" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3200s.dsk", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "e45d41a61fbe48f328c995fcc10a5548" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3320s.dsk", + MediaType = MediaType.Unknown, + Sectors = 3320, + SectorSize = 512, + MD5 = "c25f2a57c71db1cd4fea2263598f544a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3360s.dsk", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "15f71b92bd72aba5d80bf70eca4d5b1e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3486s.dsk", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "d88c8d818e238c9e52b8588b5fd52efe" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_c.dsk", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "2770e5b1b7935ca6e9695a32008b936a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_ck.dsk", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "2770e5b1b7935ca6e9695a32008b936a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.dsk", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "3d5fcdaf627257ae9f50a06bdba26965" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_na.dsk", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "34b4bdab5fcc17076cceb7c1a39ea430" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_nak.dsk", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "34b4bdab5fcc17076cceb7c1a39ea430" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_n.dsk", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "2770e5b1b7935ca6e9695a32008b936a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_nk.dsk", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "2770e5b1b7935ca6e9695a32008b936a" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/ShrinkWrap/DiskCopy42.cs b/Aaru.Tests/Images/ShrinkWrap/DiskCopy42.cs index 4033383a8..02b02d4df 100644 --- a/Aaru.Tests/Images/ShrinkWrap/DiskCopy42.cs +++ b/Aaru.Tests/Images/ShrinkWrap/DiskCopy42.cs @@ -36,98 +36,60 @@ namespace Aaru.Tests.Images.ShrinkWrap [TestFixture] public class DiskCopy42 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "DC6_RW_HFS_1440.image.lz", "DC6_RW_HFS_800.image.lz", "DOS1440.image.lz", "DOS720.image.lz", - "PD1440.image.lz", "PD800.image.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // DC6_RW_HFS_1440.image.lz - 2880, - - // DC6_RW_HFS_800.image.lz - 1600, - - // DOS1440.image.lz - 2880, - - // DOS720.image.lz - 1440, - - // PD1440.image.lz - 2880, - - // PD800.image.lz - 1600 - }; - - public override uint[] _sectorSize => new uint[] - { - // DC6_RW_HFS_1440.image.lz - 512, - - // DC6_RW_HFS_800.image.lz - 512, - - // DOS1440.image.lz - 512, - - // DOS720.image.lz - 512, - - // PD1440.image.lz - 512, - - // PD800.image.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // DC6_RW_HFS_1440.image.lz - MediaType.DOS_35_HD, - - // DC6_RW_HFS_800.image.lz - MediaType.AppleSonyDS, - - // DOS1440.image.lz - MediaType.DOS_35_HD, - - // DOS720.image.lz - MediaType.DOS_35_DS_DD_9, - - // PD1440.image.lz - MediaType.DOS_35_HD, - - // PD800.image.lz - MediaType.AppleSonyDS - }; - - public override string[] _md5S => new[] - { - // DC6_RW_HFS_1440.image.lz - "3160038ca028ccf52ad7863790072145", - - // DC6_RW_HFS_800.image.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DOS1440.image.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS720.image.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // PD1440.image.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // PD800.image.lz - "a72da7aedadbe194c22a3d71c62e4766" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "ShrinkWrap 3", "DiskCopy 4.2"); public override IMediaImage _plugin => new DiscImages.DiskCopy42(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_1440.image.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_800.image.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DOS1440.image.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS720.image.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "PD1440.image.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "PD800.image.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/ShrinkWrap/DiskDup.cs b/Aaru.Tests/Images/ShrinkWrap/DiskDup.cs index a5b39f1ea..f3ed72a64 100644 --- a/Aaru.Tests/Images/ShrinkWrap/DiskDup.cs +++ b/Aaru.Tests/Images/ShrinkWrap/DiskDup.cs @@ -37,146 +37,92 @@ namespace Aaru.Tests.Images.ShrinkWrap [TestFixture] public class DiskDup : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "CDROM.lz", "DC6_RW_HFS_1440.lz", "DC6_RW_HFS_800.lz", "DC6_RW_HFS_DMF.lz", "DOS1440.image.lz", "DOS720.lz", - "DOSDMF.lz", "PD1440.lz", "PD800.lz", "PDDMF.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // CDROM.lz - 91108, - - // DC6_RW_HFS_1440.lz - 2880, - - // DC6_RW_HFS_800.lz - 1600, - - // DC6_RW_HFS_DMF.lz - 3360, - - // DOS1440.image.lz - 2880, - - // DOS720.lz - 1440, - - // DOSDMF.lz - 3360, - - // PD1440.lz - 2880, - - // PD800.lz - 1600, - - // PDDMF.lz - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // CDROM.lz - 512, - - // DC6_RW_HFS_1440.lz - 512, - - // DC6_RW_HFS_800.lz - 512, - - // DC6_RW_HFS_DMF.lz - 512, - - // DOS1440.image.lz - 512, - - // DOS720.lz - 512, - - // DOSDMF.lz - 512, - - // PD1440.lz - 512, - - // PD800.lz - 512, - - // PDDMF.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // CDROM.lz - MediaType.GENERIC_HDD, - - // DC6_RW_HFS_1440.lz - MediaType.DOS_35_HD, - - // DC6_RW_HFS_800.lz - MediaType.AppleSonyDS, - - // DC6_RW_HFS_DMF.lz - MediaType.DMF, - - // DOS1440.image.lz - MediaType.DOS_35_HD, - - // DOS720.lz - MediaType.DOS_35_DS_DD_9, - - // DOSDMF.lz - MediaType.DMF, - - // PD1440.lz - MediaType.DOS_35_HD, - - // PD800.lz - MediaType.AppleSonyDS, - - // PDDMF.lz - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // CDROM.lz - "69e3234920e472b24365060241934ca6", - - // DC6_RW_HFS_1440.lz - "3160038ca028ccf52ad7863790072145", - - // DC6_RW_HFS_800.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RW_HFS_DMF.lz - "652dc979c177f2d8e846587158b38478", - - // DOS1440.image.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS720.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOSDMF.lz - "92ea7a359957012a682ba126cfdef0ce", - - // PD1440.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // PD800.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // PDDMF.lz - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "ShrinkWrap 3", "DiskDup+"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "CDROM.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 91108, + SectorSize = 512, + MD5 = "69e3234920e472b24365060241934ca6" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_1440.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_800.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_DMF.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DOS1440.image.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS720.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOSDMF.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "PD1440.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "PD800.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "PDDMF.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/ShrinkWrap/NDIF/ROCo.cs b/Aaru.Tests/Images/ShrinkWrap/NDIF/ROCo.cs index d93d91807..83c599afd 100644 --- a/Aaru.Tests/Images/ShrinkWrap/NDIF/ROCo.cs +++ b/Aaru.Tests/Images/ShrinkWrap/NDIF/ROCo.cs @@ -37,146 +37,92 @@ namespace Aaru.Tests.Images.ShrinkWrap.NDIF [TestFixture] public class ROCo : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "CDROM.img", "DC6_RW_HFS_1440.img", "DC6_RW_HFS_800.img", "DC6_RW_HFS_DMF.img", "DOS1440.img", "DOS720.img", - "DOSDMF.img", "PD1440.img", "PD800.img", "PDDMF.img" - }; - - public override ulong[] _sectors => new ulong[] - { - // CDROM.img - 91108, - - // DC6_RW_HFS_1440.img - 2880, - - // DC6_RW_HFS_800.img - 1600, - - // DC6_RW_HFS_DMF.img - 3360, - - // DOS1440.img - 2880, - - // DOS720.img - 1440, - - // DOSDMF.img - 3360, - - // PD1440.img - 2880, - - // PD800.img - 1600, - - // PDDMF.img - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // CDROM.img - 512, - - // DC6_RW_HFS_1440.img - 512, - - // DC6_RW_HFS_800.img - 512, - - // DC6_RW_HFS_DMF.img - 512, - - // DOS1440.img - 512, - - // DOS720.img - 512, - - // DOSDMF.img - 512, - - // PD1440.img - 512, - - // PD800.img - 512, - - // PDDMF.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // CDROM.img - MediaType.GENERIC_HDD, - - // DC6_RW_HFS_1440.img - MediaType.DOS_35_HD, - - // DC6_RW_HFS_800.img - MediaType.AppleSonyDS, - - // DC6_RW_HFS_DMF.img - MediaType.DMF, - - // DOS1440.img - MediaType.DOS_35_HD, - - // DOS720.img - MediaType.DOS_35_DS_DD_9, - - // DOSDMF.img - MediaType.DMF, - - // PD1440.img - MediaType.DOS_35_HD, - - // PD800.img - MediaType.AppleSonyDS, - - // PDDMF.img - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // CDROM.img - "69e3234920e472b24365060241934ca6", - - // DC6_RW_HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // DC6_RW_HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RW_HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // DOS1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DOS720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DOSDMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // PD1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // PD800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // PDDMF.img - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "ShrinkWrap 3", "NDIF", "DiskCopy compression"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "CDROM.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 91108, + SectorSize = 512, + MD5 = "69e3234920e472b24365060241934ca6" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DOS1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOSDMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "PD1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "PD800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "PDDMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/ShrinkWrap/NDIF/RdWr.cs b/Aaru.Tests/Images/ShrinkWrap/NDIF/RdWr.cs index 8bc2c61da..69ed020db 100644 --- a/Aaru.Tests/Images/ShrinkWrap/NDIF/RdWr.cs +++ b/Aaru.Tests/Images/ShrinkWrap/NDIF/RdWr.cs @@ -37,146 +37,92 @@ namespace Aaru.Tests.Images.ShrinkWrap.NDIF [TestFixture] public class RdWr : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "CDROM.img", "DC6_RW_HFS_1440.img", "DC6_RW_HFS_800.img", "DC6_RW_HFS_DMF.img", "DOS1440.img", "DOS720.img", - "DOSDMF.img", "PD1440.img", "PD800.img", "PDDMF.img" - }; - - public override ulong[] _sectors => new ulong[] - { - // CDROM.img - 91108, - - // DC6_RW_HFS_1440.img - 2880, - - // DC6_RW_HFS_800.img - 1600, - - // DC6_RW_HFS_DMF.img - 3360, - - // DOS1440.img - 2880, - - // DOS720.img - 1440, - - // DOSDMF.img - 3360, - - // PD1440.img - 2880, - - // PD800.img - 1600, - - // PDDMF.img - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // CDROM.img - 512, - - // DC6_RW_HFS_1440.img - 512, - - // DC6_RW_HFS_800.img - 512, - - // DC6_RW_HFS_DMF.img - 512, - - // DOS1440.img - 512, - - // DOS720.img - 512, - - // DOSDMF.img - 512, - - // PD1440.img - 512, - - // PD800.img - 512, - - // PDDMF.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // CDROM.img - MediaType.GENERIC_HDD, - - // DC6_RW_HFS_1440.img - MediaType.DOS_35_HD, - - // DC6_RW_HFS_800.img - MediaType.AppleSonyDS, - - // DC6_RW_HFS_DMF.img - MediaType.DMF, - - // DOS1440.img - MediaType.DOS_35_HD, - - // DOS720.img - MediaType.DOS_35_DS_DD_9, - - // DOSDMF.img - MediaType.DMF, - - // PD1440.img - MediaType.DOS_35_HD, - - // PD800.img - MediaType.AppleSonyDS, - - // PDDMF.img - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // CDROM.img - "69e3234920e472b24365060241934ca6", - - // DC6_RW_HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // DC6_RW_HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RW_HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // DOS1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DOS720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DOSDMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // PD1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // PD800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // PDDMF.img - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "ShrinkWrap 3", "NDIF", "No compression", "No encryption"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "CDROM.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 91108, + SectorSize = 512, + MD5 = "69e3234920e472b24365060241934ca6" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DOS1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOSDMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "PD1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "PD800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "PDDMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/ShrinkWrap/NDIF/Rdxx.cs b/Aaru.Tests/Images/ShrinkWrap/NDIF/Rdxx.cs index 3718ad346..fc76b0d28 100644 --- a/Aaru.Tests/Images/ShrinkWrap/NDIF/Rdxx.cs +++ b/Aaru.Tests/Images/ShrinkWrap/NDIF/Rdxx.cs @@ -37,146 +37,92 @@ namespace Aaru.Tests.Images.ShrinkWrap.NDIF [TestFixture] public class Rdxx : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "CDROM.img", "DC6_RW_HFS_1440.img", "DC6_RW_HFS_800.img", "DC6_RW_HFS_DMF.img", "DOS1440.img", "DOS720.img", - "DOSDMF.img", "PD1440.img", "PD800.img", "PDDMF.img" - }; - - public override ulong[] _sectors => new ulong[] - { - // CDROM.img - 91108, - - // DC6_RW_HFS_1440.img - 2880, - - // DC6_RW_HFS_800.img - 1600, - - // DC6_RW_HFS_DMF.img - 3360, - - // DOS1440.img - 2880, - - // DOS720.img - 1440, - - // DOSDMF.img - 3360, - - // PD1440.img - 2880, - - // PD800.img - 1600, - - // PDDMF.img - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // CDROM.img - 512, - - // DC6_RW_HFS_1440.img - 512, - - // DC6_RW_HFS_800.img - 512, - - // DC6_RW_HFS_DMF.img - 512, - - // DOS1440.img - 512, - - // DOS720.img - 512, - - // DOSDMF.img - 512, - - // PD1440.img - 512, - - // PD800.img - 512, - - // PDDMF.img - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // CDROM.img - MediaType.GENERIC_HDD, - - // DC6_RW_HFS_1440.img - MediaType.DOS_35_HD, - - // DC6_RW_HFS_800.img - MediaType.AppleSonyDS, - - // DC6_RW_HFS_DMF.img - MediaType.DMF, - - // DOS1440.img - MediaType.DOS_35_HD, - - // DOS720.img - MediaType.DOS_35_DS_DD_9, - - // DOSDMF.img - MediaType.DMF, - - // PD1440.img - MediaType.DOS_35_HD, - - // PD800.img - MediaType.AppleSonyDS, - - // PDDMF.img - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // CDROM.img - "69e3234920e472b24365060241934ca6", - - // DC6_RW_HFS_1440.img - "3160038ca028ccf52ad7863790072145", - - // DC6_RW_HFS_800.img - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RW_HFS_DMF.img - "652dc979c177f2d8e846587158b38478", - - // DOS1440.img - "ff419213080574056ebd9adf7bab3d32", - - // DOS720.img - "c2be571406cf6353269faa59a4a8c0a4", - - // DOSDMF.img - "92ea7a359957012a682ba126cfdef0ce", - - // PD1440.img - "7975e8cf7579a6848d6fb4e546d1f682", - - // PD800.img - "a72da7aedadbe194c22a3d71c62e4766", - - // PDDMF.img - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "ShrinkWrap 3", "NDIF", "Simple compression"); public override IMediaImage _plugin => new Ndif(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "CDROM.img", + MediaType = MediaType.GENERIC_HDD, + Sectors = 91108, + SectorSize = 512, + MD5 = "69e3234920e472b24365060241934ca6" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_DMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DOS1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS720.img", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOSDMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "PD1440.img", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "PD800.img", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "PDDMF.img", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/ShrinkWrap/Raw.cs b/Aaru.Tests/Images/ShrinkWrap/Raw.cs index 234e9f11c..3ab78e321 100644 --- a/Aaru.Tests/Images/ShrinkWrap/Raw.cs +++ b/Aaru.Tests/Images/ShrinkWrap/Raw.cs @@ -37,146 +37,92 @@ namespace Aaru.Tests.Images.ShrinkWrap [TestFixture] public class Raw : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "CDROM.lz", "DC6_RW_HFS_1440.lz", "DC6_RW_HFS_800.lz", "DC6_RW_HFS_DMF.lz", "DOS1440.lz", "DOS720.lz", - "DOSDMF.lz", "PD1440.lz", "PD800.lz", "PDDMF.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // CDROM.lz - 91108, - - // DC6_RW_HFS_1440.lz - 2880, - - // DC6_RW_HFS_800.lz - 1600, - - // DC6_RW_HFS_DMF.lz - 3360, - - // DOS1440.lz - 2880, - - // DOS720.lz - 1440, - - // DOSDMF.lz - 3360, - - // PD1440.lz - 2880, - - // PD800.lz - 1600, - - // PDDMF.lz - 3360 - }; - - public override uint[] _sectorSize => new uint[] - { - // CDROM.lz - 512, - - // DC6_RW_HFS_1440.lz - 512, - - // DC6_RW_HFS_800.lz - 512, - - // DC6_RW_HFS_DMF.lz - 512, - - // DOS1440.lz - 512, - - // DOS720.lz - 512, - - // DOSDMF.lz - 512, - - // PD1440.lz - 512, - - // PD800.lz - 512, - - // PDDMF.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // CDROM.lz - MediaType.GENERIC_HDD, - - // DC6_RW_HFS_1440.lz - MediaType.DOS_35_HD, - - // DC6_RW_HFS_800.lz - MediaType.AppleSonyDS, - - // DC6_RW_HFS_DMF.lz - MediaType.DMF, - - // DOS1440.lz - MediaType.DOS_35_HD, - - // DOS720.lz - MediaType.DOS_35_DS_DD_9, - - // DOSDMF.lz - MediaType.DMF, - - // PD1440.lz - MediaType.DOS_35_HD, - - // PD800.lz - MediaType.AppleSonyDS, - - // PDDMF.lz - MediaType.DMF - }; - - public override string[] _md5S => new[] - { - // CDROM.lz - "69e3234920e472b24365060241934ca6", - - // DC6_RW_HFS_1440.lz - "3160038ca028ccf52ad7863790072145", - - // DC6_RW_HFS_800.lz - "5e255c4bc0f6a26ecd27845b37e65aaa", - - // DC6_RW_HFS_DMF.lz - "652dc979c177f2d8e846587158b38478", - - // DOS1440.lz - "ff419213080574056ebd9adf7bab3d32", - - // DOS720.lz - "c2be571406cf6353269faa59a4a8c0a4", - - // DOSDMF.lz - "92ea7a359957012a682ba126cfdef0ce", - - // PD1440.lz - "7975e8cf7579a6848d6fb4e546d1f682", - - // PD800.lz - "a72da7aedadbe194c22a3d71c62e4766", - - // PDDMF.lz - "7fbf0251a93cb36d98e68b7d19624de5" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "ShrinkWrap 3", "raw"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "CDROM.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 91108, + SectorSize = 512, + MD5 = "69e3234920e472b24365060241934ca6" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_1440.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "3160038ca028ccf52ad7863790072145" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_800.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "5e255c4bc0f6a26ecd27845b37e65aaa" + }, + new BlockImageTestExpected + { + TestFile = "DC6_RW_HFS_DMF.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "652dc979c177f2d8e846587158b38478" + }, + new BlockImageTestExpected + { + TestFile = "DOS1440.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "ff419213080574056ebd9adf7bab3d32" + }, + new BlockImageTestExpected + { + TestFile = "DOS720.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "c2be571406cf6353269faa59a4a8c0a4" + }, + new BlockImageTestExpected + { + TestFile = "DOSDMF.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "92ea7a359957012a682ba126cfdef0ce" + }, + new BlockImageTestExpected + { + TestFile = "PD1440.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "7975e8cf7579a6848d6fb4e546d1f682" + }, + new BlockImageTestExpected + { + TestFile = "PD800.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "a72da7aedadbe194c22a3d71c62e4766" + }, + new BlockImageTestExpected + { + TestFile = "PDDMF.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7fbf0251a93cb36d98e68b7d19624de5" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/TapeMediaImageTest.cs b/Aaru.Tests/Images/TapeMediaImageTest.cs index ae4dcc4c4..cc57af5e1 100644 --- a/Aaru.Tests/Images/TapeMediaImageTest.cs +++ b/Aaru.Tests/Images/TapeMediaImageTest.cs @@ -2,20 +2,18 @@ using System; using Aaru.Checksums; using Aaru.CommonTypes; using Aaru.CommonTypes.Interfaces; -using Aaru.CommonTypes.Structs; using FluentAssertions; using FluentAssertions.Execution; using NUnit.Framework; namespace Aaru.Tests.Images { - public abstract class TapeMediaImageTest : BlockMediaImageTest + public abstract class TapeMediaImageTest : BaseMediaImageTest { // How many sectors to read at once const uint SECTORS_TO_READ = 256; - public abstract TapeFile[][] _tapeFiles { get; } - public abstract TapePartition[][] _tapePartitions { get; } + public abstract TapeImageTestExpected[] Tests { get; } [Test] public void Tape() @@ -24,31 +22,32 @@ namespace Aaru.Tests.Images Assert.Multiple(() => { - for(int i = 0; i < _testFiles.Length; i++) + foreach(TapeImageTestExpected test in Tests) { + string testFile = test.TestFile; var filtersList = new FiltersList(); - IFilter filter = filtersList.GetFilter(_testFiles[i]); - filter.Open(_testFiles[i]); + IFilter filter = filtersList.GetFilter(testFile); + filter.Open(testFile); var image = Activator.CreateInstance(_plugin.GetType()) as ITapeImage; - Assert.NotNull(image, $"Could not instantiate filesystem for {_testFiles[i]}"); + Assert.NotNull(image, $"Could not instantiate filesystem for {testFile}"); bool opened = image.Open(filter); - Assert.AreEqual(true, opened, $"Open: {_testFiles[i]}"); + Assert.AreEqual(true, opened, $"Open: {testFile}"); if(!opened) continue; - Assert.AreEqual(true, image.IsTape, $"Is tape?: {_testFiles[i]}"); + Assert.AreEqual(true, image.IsTape, $"Is tape?: {testFile}"); using(new AssertionScope()) { Assert.Multiple(() => { - image.Files.Should().BeEquivalentTo(_tapeFiles[i], $"Tape files: {_testFiles[i]}"); + image.Files.Should().BeEquivalentTo(test.Files, $"Tape files: {testFile}"); image.TapePartitions.Should(). - BeEquivalentTo(_tapePartitions[i], $"Tape files: {_testFiles[i]}"); + BeEquivalentTo(test.Partitions, $"Tape partitions: {testFile}"); }); } } @@ -62,17 +61,18 @@ namespace Aaru.Tests.Images Assert.Multiple(() => { - for(int i = 0; i < _testFiles.Length; i++) + foreach(TapeImageTestExpected test in Tests) { + string testFile = test.TestFile; var filtersList = new FiltersList(); - IFilter filter = filtersList.GetFilter(_testFiles[i]); - filter.Open(_testFiles[i]); + IFilter filter = filtersList.GetFilter(testFile); + filter.Open(testFile); var image = Activator.CreateInstance(_plugin.GetType()) as IMediaImage; - Assert.NotNull(image, $"Could not instantiate filesystem for {_testFiles[i]}"); + Assert.NotNull(image, $"Could not instantiate filesystem for {testFile}"); bool opened = image.Open(filter); - Assert.AreEqual(true, opened, $"Open: {_testFiles[i]}"); + Assert.AreEqual(true, opened, $"Open: {testFile}"); if(!opened) continue; @@ -81,9 +81,9 @@ namespace Aaru.Tests.Images { Assert.Multiple(() => { - Assert.AreEqual(_sectors[i], image.Info.Sectors, $"Sectors: {_testFiles[i]}"); - Assert.AreEqual(_sectorSize[i], image.Info.SectorSize, $"Sector size: {_testFiles[i]}"); - Assert.AreEqual(_mediaTypes[i], image.Info.MediaType, $"Media type: {_testFiles[i]}"); + Assert.AreEqual(test.Sectors, image.Info.Sectors, $"Sectors: {testFile}"); + Assert.AreEqual(test.SectorSize, image.Info.SectorSize, $"Sector size: {testFile}"); + Assert.AreEqual(test.MediaType, image.Info.MediaType, $"Media type: {testFile}"); }); } } @@ -97,17 +97,18 @@ namespace Aaru.Tests.Images Assert.Multiple(() => { - for(int i = 0; i < _testFiles.Length; i++) + foreach(TapeImageTestExpected test in Tests) { + string testFile = test.TestFile; var filtersList = new FiltersList(); - IFilter filter = filtersList.GetFilter(_testFiles[i]); - filter.Open(_testFiles[i]); + IFilter filter = filtersList.GetFilter(testFile); + filter.Open(testFile); var image = Activator.CreateInstance(_plugin.GetType()) as IMediaImage; - Assert.NotNull(image, $"Could not instantiate filesystem for {_testFiles[i]}"); + Assert.NotNull(image, $"Could not instantiate filesystem for {testFile}"); bool opened = image.Open(filter); - Assert.AreEqual(true, opened, $"Open: {_testFiles[i]}"); + Assert.AreEqual(true, opened, $"Open: {testFile}"); if(!opened) continue; @@ -133,7 +134,7 @@ namespace Aaru.Tests.Images ctx.Update(sector); } - Assert.AreEqual(_md5S[i], ctx.End(), $"Hash: {_testFiles[i]}"); + Assert.AreEqual(test.MD5, ctx.End(), $"Hash: {testFile}"); } }); } diff --git a/Aaru.Tests/Images/TeleDisk.cs b/Aaru.Tests/Images/TeleDisk.cs index 5327449f5..0a82ee060 100644 --- a/Aaru.Tests/Images/TeleDisk.cs +++ b/Aaru.Tests/Images/TeleDisk.cs @@ -36,732 +36,467 @@ namespace Aaru.Tests.Images [TestFixture] public class TeleDisk : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "md2dd8.td0.lz", "md2dd_fdformat_f400.td0.lz", "md2dd_fdformat_f410.td0.lz", "md2dd_fdformat_f720.td0.lz", - "md2dd_fdformat_f800.td0.lz", "md2dd_fdformat_f820.td0.lz", "md2dd_freedos_800s.td0.lz", - "md2dd_maxiform_1640s.td0.lz", "md2dd_maxiform_840s.td0.lz", "md2dd_qcopy_1476s.td0.lz", - "md2dd_qcopy_1600s.td0.lz", "md2dd_qcopy_1640s.td0.lz", "md2dd.td0.lz", "md2hd_fdformat_f144.td0.lz", - "md2hd_fdformat_f148.td0.lz", "md2hd_maxiform_2788s.td0.lz", "md2hd.td0.lz", "md2hd_xdf.td0.lz", - "mf2dd_fdformat_800.td0.lz", "mf2dd_fdformat_820.td0.lz", "mf2dd_fdformat_f800.td0.lz", - "mf2dd_fdformat_f820.td0.lz", "mf2dd_freedos_1600s.td0.lz", "mf2dd_freedos.td0.lz", - "mf2dd_maxiform_1600s.td0.lz", "mf2dd_qcopy_1494s.td0.lz", "mf2dd_qcopy_1600s.td0.lz", - "mf2dd_qcopy_1660s.td0.lz", "mf2dd.td0.lz", /* -"mf2hd_2mgui.td0.lz",*/"mf2hd_2m_max.td0.lz", "mf2hd_2m.td0.lz", "mf2hd_alt_adv.td0.lz", "mf2hd_alt_dos_adv.td0.lz", - "mf2hd_alt_dos.td0.lz", "mf2hd_alt.td0.lz", "mf2hd_dmf.td0.lz", "mf2hd_fdformat_168.td0.lz", - "mf2hd_fdformat_172.td0.lz", "mf2hd_fdformat_f168.td0.lz", "mf2hd_fdformat_f16.td0.lz", - "mf2hd_fdformat_f172.td0.lz", "mf2hd_freedos_3360s.td0.lz", "mf2hd_freedos_3486s.td0.lz", - "mf2hd_freedos.td0.lz", "mf2hd_maxiform_3200s.td0.lz", "mf2hd_qcopy_2460s.td0.lz", - "mf2hd_qcopy_2720s.td0.lz", "mf2hd_qcopy_2788s.td0.lz", "mf2hd_qcopy_2880s.td0.lz", - "mf2hd_qcopy_2952s.td0.lz", "mf2hd_qcopy_3200s.td0.lz", "mf2hd_qcopy_3320s.td0.lz", - "mf2hd_qcopy_3360s.td0.lz", "mf2hd_qcopy_3486s.td0.lz", "mf2hd.td0.lz", "mf2hd_xdf_adv.td0.lz", - "mf2hd_xdf.td0.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // md2dd8.td0.lz - 640, - - // md2dd_fdformat_f400.td0.lz - 800, - - // md2dd_fdformat_f410.td0.lz - 820, - - // md2dd_fdformat_f720.td0.lz - 1440, - - // md2dd_fdformat_f800.td0.lz - 1600, - - // md2dd_fdformat_f820.td0.lz - 1640, - - // md2dd_freedos_800s.td0.lz - 800, - - // md2dd_maxiform_1640s.td0.lz - 1640, - - // md2dd_maxiform_840s.td0.lz - 840, - - // md2dd_qcopy_1476s.td0.lz - 1476, - - // md2dd_qcopy_1600s.td0.lz - 1600, - - // md2dd_qcopy_1640s.td0.lz - 1640, - - // md2dd.td0.lz - 720, - - // md2hd_fdformat_f144.td0.lz - 2880, - - // md2hd_fdformat_f148.td0.lz - 2952, - - // md2hd_maxiform_2788s.td0.lz - 2788, - - // md2hd.td0.lz - 2400, - - // md2hd_xdf.td0.lz - 640, - - // mf2dd_fdformat_800.td0.lz - 1600, - - // mf2dd_fdformat_820.td0.lz - 1640, - - // mf2dd_fdformat_f800.td0.lz - 1600, - - // mf2dd_fdformat_f820.td0.lz - 1640, - - // mf2dd_freedos_1600s.td0.lz - 1600, - - // mf2dd_freedos.td0.lz - 1640, - - // mf2dd_maxiform_1600s.td0.lz - 1600, - - // mf2dd_qcopy_1494s.td0.lz - 1494, - - // mf2dd_qcopy_1600s.td0.lz - 1600, - - // mf2dd_qcopy_1660s.td0.lz - 1660, - - // mf2dd.td0.lz - 1440, /* -// mf2hd_2mgui.td0.lz -0,*/ - // mf2hd_2m_max.td0.lz - 1148, - - // mf2hd_2m.td0.lz - 1804, - - // mf2hd_alt_adv.td0.lz - 2880, - - // mf2hd_alt_dos_adv.td0.lz - 2880, - - // mf2hd_alt_dos.td0.lz - 2880, - - // mf2hd_alt.td0.lz - 2880, - - // mf2hd_dmf.td0.lz - 3360, - - // mf2hd_fdformat_168.td0.lz - 332, - - // mf2hd_fdformat_172.td0.lz - 3444, - - // mf2hd_fdformat_f168.td0.lz - 3360, - - // mf2hd_fdformat_f16.td0.lz - 3200, - - // mf2hd_fdformat_f172.td0.lz - 3444, - - // mf2hd_freedos_3360s.td0.lz - 3360, - - // mf2hd_freedos_3486s.td0.lz - 3486, - - // mf2hd_freedos.td0.lz - 3486, - - // mf2hd_maxiform_3200s.td0.lz - 3200, - - // mf2hd_qcopy_2460s.td0.lz - 2460, - - // mf2hd_qcopy_2720s.td0.lz - 2720, - - // mf2hd_qcopy_2788s.td0.lz - 2788, - - // mf2hd_qcopy_2880s.td0.lz - 2880, - - // mf2hd_qcopy_2952s.td0.lz - 2952, - - // mf2hd_qcopy_3200s.td0.lz - 3200, - - // mf2hd_qcopy_3320s.td0.lz - 3320, - - // mf2hd_qcopy_3360s.td0.lz - 3360, - - // mf2hd_qcopy_3486s.td0.lz - 3486, - - // mf2hd.td0.lz - 2880, - - // mf2hd_xdf_adv.td0.lz - 640, - - // mf2hd_xdf.td0.lz - 640 - }; - - public override uint[] _sectorSize => new uint[] - { - // md2dd8.td0.lz - 512, - - // md2dd_fdformat_f400.td0.lz - 512, - - // md2dd_fdformat_f410.td0.lz - 512, - - // md2dd_fdformat_f720.td0.lz - 512, - - // md2dd_fdformat_f800.td0.lz - 512, - - // md2dd_fdformat_f820.td0.lz - 512, - - // md2dd_freedos_800s.td0.lz - 512, - - // md2dd_maxiform_1640s.td0.lz - 512, - - // md2dd_maxiform_840s.td0.lz - 512, - - // md2dd_qcopy_1476s.td0.lz - 512, - - // md2dd_qcopy_1600s.td0.lz - 512, - - // md2dd_qcopy_1640s.td0.lz - 512, - - // md2dd.td0.lz - 512, - - // md2hd_fdformat_f144.td0.lz - 512, - - // md2hd_fdformat_f148.td0.lz - 512, - - // md2hd_maxiform_2788s.td0.lz - 512, - - // md2hd.td0.lz - 512, - - // md2hd_xdf.td0.lz - 128, - - // mf2dd_fdformat_800.td0.lz - 512, - - // mf2dd_fdformat_820.td0.lz - 512, - - // mf2dd_fdformat_f800.td0.lz - 512, - - // mf2dd_fdformat_f820.td0.lz - 512, - - // mf2dd_freedos_1600s.td0.lz - 512, - - // mf2dd_freedos.td0.lz - 512, - - // mf2dd_maxiform_1600s.td0.lz - 512, - - // mf2dd_qcopy_1494s.td0.lz - 512, - - // mf2dd_qcopy_1600s.td0.lz - 512, - - // mf2dd_qcopy_1660s.td0.lz - 512, - - // mf2dd.td0.lz - 512, - - // mf2hd_2mgui.td0.lz - //0, - // mf2hd_2m_max.td0.lz - 512, - - // mf2hd_2m.td0.lz - 512, - - // mf2hd_alt_adv.td0.lz - 512, - - // mf2hd_alt_dos_adv.td0.lz - 512, - - // mf2hd_alt_dos.td0.lz - 512, - - // mf2hd_alt.td0.lz - 512, - - // mf2hd_dmf.td0.lz - 512, - - // mf2hd_fdformat_168.td0.lz - 512, - - // mf2hd_fdformat_172.td0.lz - 512, - - // mf2hd_fdformat_f168.td0.lz - 512, - - // mf2hd_fdformat_f16.td0.lz - 512, - - // mf2hd_fdformat_f172.td0.lz - 512, - - // mf2hd_freedos_3360s.td0.lz - 512, - - // mf2hd_freedos_3486s.td0.lz - 512, - - // mf2hd_freedos.td0.lz - 512, - - // mf2hd_maxiform_3200s.td0.lz - 512, - - // mf2hd_qcopy_2460s.td0.lz - 512, - - // mf2hd_qcopy_2720s.td0.lz - 512, - - // mf2hd_qcopy_2788s.td0.lz - 512, - - // mf2hd_qcopy_2880s.td0.lz - 512, - - // mf2hd_qcopy_2952s.td0.lz - 512, - - // mf2hd_qcopy_3200s.td0.lz - 512, - - // mf2hd_qcopy_3320s.td0.lz - 512, - - // mf2hd_qcopy_3360s.td0.lz - 512, - - // mf2hd_qcopy_3486s.td0.lz - 512, - - // mf2hd.td0.lz - 512, - - // mf2hd_xdf_adv.td0.lz - 512, - - // mf2hd_xdf.td0.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // md2dd8.td0.lz - MediaType.DOS_525_DS_DD_8, - - // md2dd_fdformat_f400.td0.lz - MediaType.Unknown, - - // md2dd_fdformat_f410.td0.lz - MediaType.Unknown, - - // md2dd_fdformat_f720.td0.lz - MediaType.ECMA_78_2, - - // md2dd_fdformat_f800.td0.lz - MediaType.Unknown, - - // md2dd_fdformat_f820.td0.lz - MediaType.FDFORMAT_525_DD, - - // md2dd_freedos_800s.td0.lz - MediaType.Unknown, - - // md2dd_maxiform_1640s.td0.lz - MediaType.FDFORMAT_525_DD, - - // md2dd_maxiform_840s.td0.lz - MediaType.Unknown, - - // md2dd_qcopy_1476s.td0.lz - MediaType.Unknown, - - // md2dd_qcopy_1600s.td0.lz - MediaType.Unknown, - - // md2dd_qcopy_1640s.td0.lz - MediaType.FDFORMAT_525_DD, - - // md2dd.td0.lz - MediaType.DOS_525_DS_DD_9, - - // md2hd_fdformat_f144.td0.lz - MediaType.Unknown, - - // md2hd_fdformat_f148.td0.lz - MediaType.Unknown, - - // md2hd_maxiform_2788s.td0.lz - MediaType.Unknown, - - // md2hd.td0.lz - MediaType.DOS_525_HD, - - // md2hd_xdf.td0.lz - MediaType.Unknown, - - // mf2dd_fdformat_800.td0.lz - MediaType.CBM_35_DD, - - // mf2dd_fdformat_820.td0.lz - MediaType.Unknown, - - // mf2dd_fdformat_f800.td0.lz - MediaType.CBM_35_DD, - - // mf2dd_fdformat_f820.td0.lz - MediaType.Unknown, - - // mf2dd_freedos_1600s.td0.lz - MediaType.CBM_35_DD, - - // mf2dd_freedos.td0.lz - MediaType.Unknown, - - // mf2dd_maxiform_1600s.td0.lz - MediaType.CBM_35_DD, - - // mf2dd_qcopy_1494s.td0.lz - MediaType.Unknown, - - // mf2dd_qcopy_1600s.td0.lz - MediaType.CBM_35_DD, - - // mf2dd_qcopy_1660s.td0.lz - MediaType.Unknown, - - // mf2dd.td0.lz - MediaType.DOS_35_DS_DD_9, - - // mf2hd_2mgui.td0.lz - //MediaType.CD, - // mf2hd_2m_max.td0.lz - MediaType.Unknown, - - // mf2hd_2m.td0.lz - MediaType.Unknown, - - // mf2hd_alt_adv.td0.lz - MediaType.Unknown, - - // mf2hd_alt_dos_adv.td0.lz - MediaType.DOS_35_HD, - - // mf2hd_alt_dos.td0.lz - MediaType.DOS_35_HD, - - // mf2hd_alt.td0.lz - MediaType.Unknown, - - // mf2hd_dmf.td0.lz - MediaType.DMF, - - // mf2hd_fdformat_168.td0.lz - MediaType.Unknown, - - // mf2hd_fdformat_172.td0.lz - MediaType.Unknown, - - // mf2hd_fdformat_f168.td0.lz - MediaType.DMF, - - // mf2hd_fdformat_f16.td0.lz - MediaType.Unknown, - - // mf2hd_fdformat_f172.td0.lz - MediaType.DMF_82, - - // mf2hd_freedos_3360s.td0.lz - MediaType.DMF, - - // mf2hd_freedos_3486s.td0.lz - MediaType.Unknown, - - // mf2hd_freedos.td0.lz - MediaType.Unknown, - - // mf2hd_maxiform_3200s.td0.lz - MediaType.Unknown, - - // mf2hd_qcopy_2460s.td0.lz - MediaType.Unknown, - - // mf2hd_qcopy_2720s.td0.lz - MediaType.Unknown, - - // mf2hd_qcopy_2788s.td0.lz - MediaType.Unknown, - - // mf2hd_qcopy_2880s.td0.lz - MediaType.Unknown, - - // mf2hd_qcopy_2952s.td0.lz - MediaType.Unknown, - - // mf2hd_qcopy_3200s.td0.lz - MediaType.Unknown, - - // mf2hd_qcopy_3320s.td0.lz - MediaType.Unknown, - - // mf2hd_qcopy_3360s.td0.lz - MediaType.DMF, - - // mf2hd_qcopy_3486s.td0.lz - MediaType.Unknown, - - // mf2hd.td0.lz - MediaType.Unknown, - - // mf2hd_xdf_adv.td0.lz - MediaType.XDF_35, - - // mf2hd_xdf.td0.lz - MediaType.XDF_35 - }; - - public override string[] _md5S => new[] - { - // md2dd8.td0.lz - "beef1cdb004dc69391d6b3d508988b95", - - // md2dd_fdformat_f400.td0.lz - "0aef12c906b744101b932d799ca88a78", - - // md2dd_fdformat_f410.td0.lz - "348d12add1ed226cd712a4a6a10d1a34", - - // md2dd_fdformat_f720.td0.lz - "1c36b819cfe355c11360bc120c9216fe", - - // md2dd_fdformat_f800.td0.lz - "25114403c11e337480e2afc4e6e32108", - - // md2dd_fdformat_f820.td0.lz - "3d7760ddaa55cd258057773d15106b78", - - // md2dd_freedos_800s.td0.lz - "29054ef703394ee3b35e849468a412ba", - - // md2dd_maxiform_1640s.td0.lz - "c91e852828c2aeee2fc94a6adbeed0ae", - - // md2dd_maxiform_840s.td0.lz - "efb6cfe53a6770f0ae388cb2c7f46264", - - // md2dd_qcopy_1476s.td0.lz - "6116f7c1397cadd55ba8d79c2aadc9dd", - - // md2dd_qcopy_1600s.td0.lz - "93100f8d86e5d0d0e6340f59c52a5e0d", - - // md2dd_qcopy_1640s.td0.lz - "cf7b7d43aa70863bedcc4a8432a5af67", - - // md2dd.td0.lz - "6213897b7dbf263f12abf76901d43862", - - // md2hd_fdformat_f144.td0.lz - "073a172879a71339ef4b00ebb47b67fc", - - // md2hd_fdformat_f148.td0.lz - "d9890897130d0fc1eee3dbf4d9b0440f", - - // md2hd_maxiform_2788s.td0.lz - "09ca721aa883d5bbaa422c7943b0782c", - - // md2hd.td0.lz - "02259cd5fbcc20f8484aa6bece7a37c6", - - // md2hd_xdf.td0.lz - "b903ea7e0c9d7e4c6251df4825212db4", - - // mf2dd_fdformat_800.td0.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_fdformat_820.td0.lz - "db9cfb6eea18820b7a7e0b5b45594471", - - // mf2dd_fdformat_f800.td0.lz - "26532a62985b51a2c3b877a57f6d257b", - - // mf2dd_fdformat_f820.td0.lz - "a7771acff766557cc23b8c6943b588f9", - - // mf2dd_freedos_1600s.td0.lz - "d07f7ffaee89742c6477aaaf94eb5715", - - // mf2dd_freedos.td0.lz - "456390a9c6ab05cb458a03c47296de08", - - // mf2dd_maxiform_1600s.td0.lz - "56af87802a9852e6e01e08d544740816", - - // mf2dd_qcopy_1494s.td0.lz - "fd7fb1ba11cdfe11db54af0322abf59d", - - // mf2dd_qcopy_1600s.td0.lz - "d9db52d992a76bf3bbc626ff844215a5", - - // mf2dd_qcopy_1660s.td0.lz - "5949d0be57ce8bffcda7c4be4d1348ee", - - // mf2dd.td0.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2hd_2mgui.td0.lz - //"UNKNOWN", - // mf2hd_2m_max.td0.lz - "4b88a3e43b57778422e8b1e851a9c902", - - // mf2hd_2m.td0.lz - "d032d928c43b66419b7404b016ec07ff", - - // mf2hd_alt_adv.td0.lz - "1d32a686b7675c7a4f88c15522738432", - - // mf2hd_alt_dos_adv.td0.lz - "8aea37782c507baf6b294467249b4608", - - // mf2hd_alt_dos.td0.lz - "8aea37782c507baf6b294467249b4608", - - // mf2hd_alt.td0.lz - "1d32a686b7675c7a4f88c15522738432", - - // mf2hd_dmf.td0.lz - "28764d4f69c3865e2af71a41ca3f432f", - - // mf2hd_fdformat_168.td0.lz - "62b900808c3e9f91f8361fd1716155a1", - - // mf2hd_fdformat_172.td0.lz - "9dea1e119a73a21a38d134f36b2e5564", - - // mf2hd_fdformat_f168.td0.lz - "7e3bf04f3660dd1052a335dc99441e44", - - // mf2hd_fdformat_f16.td0.lz - "8eb8cb310feaf03c69fffd4f6e729847", - - // mf2hd_fdformat_f172.td0.lz - "a58fd062f024b95714f1223a8bc2232f", - - // mf2hd_freedos_3360s.td0.lz - "2bfd2e0a81bad704f8fc7758358cfcca", - - // mf2hd_freedos_3486s.td0.lz - "a79ec33c623697b4562dacaed31523b8", - - // mf2hd_freedos.td0.lz - "dbd52e9e684f97d9e2292811242bb24e", - - // mf2hd_maxiform_3200s.td0.lz - "3c4becd695ed25866d39966a9a93c2d9", - - // mf2hd_qcopy_2460s.td0.lz - "72282e11f7d91bf9c090b550fabfe80d", - - // mf2hd_qcopy_2720s.td0.lz - "457c1126dc7f36bbbabe9e17e90372e3", - - // mf2hd_qcopy_2788s.td0.lz - "852181d5913c6f290872c66bbe992314", - - // mf2hd_qcopy_2880s.td0.lz - "2980cc32504c945598dc50f1db576994", - - // mf2hd_qcopy_2952s.td0.lz - "c1c58d74fffb3656dd7f60f74ae8a629", - - // mf2hd_qcopy_3200s.td0.lz - "e45d41a61fbe48f328c995fcc10a5548", - - // mf2hd_qcopy_3320s.td0.lz - "c25f2a57c71db1cd4fea2263598f544a", - - // mf2hd_qcopy_3360s.td0.lz - "15f71b92bd72aba5d80bf70eca4d5b1e", - - // mf2hd_qcopy_3486s.td0.lz - "d88c8d818e238c9e52b8588b5fd52efe", - - // mf2hd.td0.lz - "b4a602f67903c46eef62addb0780aa56", - - // mf2hd_xdf_adv.td0.lz - "728f9361203dc39961b1413aa050f70d", - - // mf2hd_xdf.td0.lz - "728f9361203dc39961b1413aa050f70d" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "TeleDisk"); public override IMediaImage _plugin => new DiscImages.TeleDisk(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "md2dd8.td0.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "beef1cdb004dc69391d6b3d508988b95" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f400.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "0aef12c906b744101b932d799ca88a78" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f410.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 820, + SectorSize = 512, + MD5 = "348d12add1ed226cd712a4a6a10d1a34" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f720.td0.lz", + MediaType = MediaType.ECMA_78_2, + Sectors = 1440, + SectorSize = 512, + MD5 = "1c36b819cfe355c11360bc120c9216fe" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f800.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1600, + SectorSize = 512, + MD5 = "25114403c11e337480e2afc4e6e32108" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_fdformat_f820.td0.lz", + MediaType = MediaType.FDFORMAT_525_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "3d7760ddaa55cd258057773d15106b78" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_freedos_800s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "29054ef703394ee3b35e849468a412ba" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_maxiform_1640s.td0.lz", + MediaType = MediaType.FDFORMAT_525_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "c91e852828c2aeee2fc94a6adbeed0ae" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_maxiform_840s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 840, + SectorSize = 512, + MD5 = "efb6cfe53a6770f0ae388cb2c7f46264" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1476s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1476, + SectorSize = 512, + MD5 = "6116f7c1397cadd55ba8d79c2aadc9dd" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1600s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1600, + SectorSize = 512, + MD5 = "93100f8d86e5d0d0e6340f59c52a5e0d" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_qcopy_1640s.td0.lz", + MediaType = MediaType.FDFORMAT_525_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "cf7b7d43aa70863bedcc4a8432a5af67" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.td0.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "6213897b7dbf263f12abf76901d43862" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_fdformat_f144.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2880, + SectorSize = 512, + MD5 = "073a172879a71339ef4b00ebb47b67fc" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_fdformat_f148.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "d9890897130d0fc1eee3dbf4d9b0440f" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_maxiform_2788s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2788, + SectorSize = 512, + MD5 = "09ca721aa883d5bbaa422c7943b0782c" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.td0.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "02259cd5fbcc20f8484aa6bece7a37c6" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_xdf.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 640, + SectorSize = 128, + MD5 = "b903ea7e0c9d7e4c6251df4825212db4" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.td0.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1640, + SectorSize = 512, + MD5 = "db9cfb6eea18820b7a7e0b5b45594471" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_f800.td0.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "26532a62985b51a2c3b877a57f6d257b" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_f820.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1640, + SectorSize = 512, + MD5 = "a7771acff766557cc23b8c6943b588f9" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos_1600s.td0.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "d07f7ffaee89742c6477aaaf94eb5715" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1640, + SectorSize = 512, + MD5 = "456390a9c6ab05cb458a03c47296de08" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_maxiform_1600s.td0.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "56af87802a9852e6e01e08d544740816" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1494s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1494, + SectorSize = 512, + MD5 = "fd7fb1ba11cdfe11db54af0322abf59d" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1600s.td0.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "d9db52d992a76bf3bbc626ff844215a5" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_qcopy_1660s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1660, + SectorSize = 512, + MD5 = "5949d0be57ce8bffcda7c4be4d1348ee" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.td0.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1148, + SectorSize = 512, + MD5 = "4b88a3e43b57778422e8b1e851a9c902" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1804, + SectorSize = 512, + MD5 = "d032d928c43b66419b7404b016ec07ff" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_alt_adv.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2880, + SectorSize = 512, + MD5 = "1d32a686b7675c7a4f88c15522738432" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_alt_dos_adv.td0.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "8aea37782c507baf6b294467249b4608" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_alt_dos.td0.lz", + MediaType = MediaType.DOS_35_HD, + Sectors = 2880, + SectorSize = 512, + MD5 = "8aea37782c507baf6b294467249b4608" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_alt.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2880, + SectorSize = 512, + MD5 = "1d32a686b7675c7a4f88c15522738432" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_dmf.td0.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "28764d4f69c3865e2af71a41ca3f432f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 332, + SectorSize = 512, + MD5 = "62b900808c3e9f91f8361fd1716155a1" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3444, + SectorSize = 512, + MD5 = "9dea1e119a73a21a38d134f36b2e5564" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f168.td0.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "7e3bf04f3660dd1052a335dc99441e44" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f16.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "8eb8cb310feaf03c69fffd4f6e729847" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_f172.td0.lz", + MediaType = MediaType.DMF_82, + Sectors = 3444, + SectorSize = 512, + MD5 = "a58fd062f024b95714f1223a8bc2232f" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos_3360s.td0.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "2bfd2e0a81bad704f8fc7758358cfcca" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos_3486s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "a79ec33c623697b4562dacaed31523b8" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "dbd52e9e684f97d9e2292811242bb24e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_maxiform_3200s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "3c4becd695ed25866d39966a9a93c2d9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2460s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2460, + SectorSize = 512, + MD5 = "72282e11f7d91bf9c090b550fabfe80d" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2720s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2720, + SectorSize = 512, + MD5 = "457c1126dc7f36bbbabe9e17e90372e3" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2788s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2788, + SectorSize = 512, + MD5 = "852181d5913c6f290872c66bbe992314" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2880s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2880, + SectorSize = 512, + MD5 = "2980cc32504c945598dc50f1db576994" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_2952s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2952, + SectorSize = 512, + MD5 = "c1c58d74fffb3656dd7f60f74ae8a629" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3200s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3200, + SectorSize = 512, + MD5 = "e45d41a61fbe48f328c995fcc10a5548" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3320s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3320, + SectorSize = 512, + MD5 = "c25f2a57c71db1cd4fea2263598f544a" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3360s.td0.lz", + MediaType = MediaType.DMF, + Sectors = 3360, + SectorSize = 512, + MD5 = "15f71b92bd72aba5d80bf70eca4d5b1e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_qcopy_3486s.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "d88c8d818e238c9e52b8588b5fd52efe" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2880, + SectorSize = 512, + MD5 = "b4a602f67903c46eef62addb0780aa56" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_adv.td0.lz", + MediaType = MediaType.XDF_35, + Sectors = 640, + SectorSize = 512, + MD5 = "728f9361203dc39961b1413aa050f70d" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.td0.lz", + MediaType = MediaType.XDF_35, + Sectors = 640, + SectorSize = 512, + MD5 = "728f9361203dc39961b1413aa050f70d" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Toast.cs b/Aaru.Tests/Images/Toast.cs index c99675ab3..6f717004b 100644 --- a/Aaru.Tests/Images/Toast.cs +++ b/Aaru.Tests/Images/Toast.cs @@ -37,872 +37,332 @@ namespace Aaru.Tests.Images [TestFixture] public class Toast : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "toast_3.5.7_iso9660_xa_apple.toast.lz", "toast_3.5.7_iso9660_xa_dos_apple.toast.lz", - "toast_3.5.7_iso9660_xa_dos.toast.lz", "toast_3.5.7_iso9660_xa_ebook_eng.toast.lz", - "toast_3.5.7_iso9660_xa_ebook_fra.toast.lz", "toast_3.5.7_iso9660_xa_joliet_apple.toast.lz", - "toast_3.5.7_iso9660_xa_joliet.toast.lz", "toast_3.5.7_iso9660_xa_mac_apple.toast.lz", - "toast_3.5.7_iso9660_xa_mac.toast.lz", "toast_3.5.7_iso9660_xa.toast.lz", - "toast_3.5.7_iso9660_xa_ver_apple.toast.lz", "toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz", - "toast_3.5.7_iso9660_xa_ver_dos.toast.lz", "toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz", - "toast_3.5.7_iso9660_xa_ver_joliet.toast.lz", "toast_3.5.7_iso9660_xa_ver.toast.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - 0, - - // toast_3.5.7_iso9660_xa.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - 0 - }; - - public override uint[] _sectorSize => new uint[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - 0, - - // toast_3.5.7_iso9660_xa.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - 0, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - 0 - }; - - public override MediaType[] _mediaTypes => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - MediaType.CD, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - MediaType.CD - }; - - public override string[] _md5S => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_dos.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_mac.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver.toast.lz - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_dos.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_mac.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver.toast.lz - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_dos.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_mac.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - "UNKNOWN", - - // toast_3.5.7_iso9660_xa_ver.toast.lz - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - 1, - - // toast_3.5.7_iso9660_xa.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - 1, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - 1 - }; - - public override int[][] _trackSessions => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - new[] - { - 1 - }, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - new[] - { - 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - new ulong[] - { - 0 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - new ulong[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - new ulong[] - { - 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // toast_3.5.7_iso9660_xa_apple.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_dos_apple.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_dos.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ebook_eng.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ebook_fra.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_joliet_apple.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_joliet.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_mac_apple.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_mac.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_apple.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_dos.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver_joliet.toast.lz - new byte[] - { - 0 - }, - - // toast_3.5.7_iso9660_xa_ver.toast.lz - new byte[] - { - 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Roxio Toast"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_apple.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_dos_apple.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_dos.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_ebook_eng.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_ebook_fra.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_joliet_apple.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_joliet.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_mac_apple.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_mac.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_ver_apple.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_ver_dos_apple.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_ver_dos.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_ver_joliet_apple.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_ver_joliet.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "toast_3.5.7_iso9660_xa_ver.toast.lz", + MediaType = MediaType.CD, + Sectors = 0, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 0, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/UltraISO/Alcohol.cs b/Aaru.Tests/Images/UltraISO/Alcohol.cs index eb84177de..a3c23dd73 100644 --- a/Aaru.Tests/Images/UltraISO/Alcohol.cs +++ b/Aaru.Tests/Images/UltraISO/Alcohol.cs @@ -36,477 +36,676 @@ namespace Aaru.Tests.Images.UltraISO [TestFixture] public class Alcohol : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.mds", "report_audiocd.mds", "report_cdrom.mds", "report_cdrw.mds", - "report_dvdram_v2.mds", "report_dvd-r+dl.mds", "report_dvdrom.mds", "report_enhancedcd.mds", - "test_multi_karaoke_sampler.mds" - }; - public override uint[] _sectorSize => null; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.mds - 279300, - - // report_audiocd.mds - 247073, - - // report_cdrom.mds - 254265, - - // report_cdrw.mds - 308224, - - // report_dvdram_v2.mds - 471090, - - // report_dvd-r+dl.mds - 3455920, - - // report_dvdrom.mds - 2146357, - - // report_enhancedcd.mds - 303316, - - // test_multi_karaoke_sampler.mds - 329158 - }; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.mds - MediaType.CDDA, - - // report_audiocd.mds - MediaType.CDDA, - - // report_cdrom.mds - MediaType.CDROM, - - // report_cdrw.mds - MediaType.CDROM, - - // report_dvdram_v2.mds - MediaType.DVDROM, - - // report_dvd-r+dl.mds - MediaType.DVDROM, - - // report_dvdrom.mds - MediaType.DVDROM, - - // report_enhancedcd.mds - MediaType.CDPLUS, - - // test_multi_karaoke_sampler.mds - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.mds - "f6bd226d3f249fa821460aeb1393cf3b", - - // report_audiocd.mds - "c96a7bf12427078bab252d941716cc32", - - // report_cdrom.mds - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.mds - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // report_dvdram_v2.mds - "35cb08dd5fedfb8e9ad2918292e51791", - - // report_dvd-r+dl.mds - "1cd9b9be5c5e337c5e6576156b84b726", - - // report_dvdrom.mds - "5e1841b7cd6ac0a95b8ae6f110fd89f2", - - // report_enhancedcd.mds - "588d8ff1fef693bbe5719ac6c2f96bc1", - - // test_multi_karaoke_sampler.mds - "9a19aa0df066732a8ec34025e8160248" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.mds - "f6bd226d3f249fa821460aeb1393cf3b", - - // report_audiocd.mds - "c96a7bf12427078bab252d941716cc32", - - // report_cdrom.mds - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw.mds - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_dvdram_v2.mds - "35cb08dd5fedfb8e9ad2918292e51791", - - // report_dvd-r+dl.mds - "1cd9b9be5c5e337c5e6576156b84b726", - - // report_dvdrom.mds - "5e1841b7cd6ac0a95b8ae6f110fd89f2", - - // report_enhancedcd.mds - "d72e737f49482d1330e8fe03b9f40b79", - - // test_multi_karaoke_sampler.mds - "e981f7dfdb522ba937fe75474e23a446" - }; - - public override string[] _subchannelMd5S => new string[] - { - // cdiready_the_apprentice.mds - null, - - // report_audiocd.mds - null, - - // report_cdrom.mds - null, - - // report_cdrw.mds - null, - - // report_dvdram_v2.mds - null, - - // report_dvd-r+dl.mds - null, - - // report_dvdrom.mds - null, - - // report_enhancedcd.mds - null, - - // test_multi_karaoke_sampler.mds - null - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.mds - 22, - - // report_audiocd.mds - 14, - - // report_cdrom.mds - 1, - - // report_cdrw.mds - 1, - - // report_dvdram_v2.mds - 1, - - // report_dvd-r+dl.mds - 1, - - // report_dvdrom.mds - 1, - - // report_enhancedcd.mds - 14, - - // test_multi_karaoke_sampler.mds - 16 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.mds - new[] - { - 1 - }, - - // report_cdrw.mds - new[] - { - 1 - }, - - // report_dvdram_v2.mds - new[] - { - 1 - }, - - // report_dvd-r+dl.mds - new[] - { - 1 - }, - - // report_dvdrom.mds - new[] - { - 1 - }, - - // report_enhancedcd.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // test_multi_karaoke_sampler.mds - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.mds - new ulong[] - { - 69150, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // report_audiocd.mds - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdrom.mds - new ulong[] - { - 0 - }, - - // report_cdrw.mds - new ulong[] - { - 0 - }, - - // report_dvdram_v2.mds - new ulong[] - { - 0 - }, - - // report_dvd-r+dl.mds - new ulong[] - { - 0 - }, - - // report_dvdrom.mds - new ulong[] - { - 0 - }, - - // report_enhancedcd.mds - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234180 - }, - - // test_multi_karaoke_sampler.mds - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.mds - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 279299 - }, - - // report_audiocd.mds - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdrom.mds - new ulong[] - { - 254264 - }, - - // report_cdrw.mds - new ulong[] - { - 308223 - }, - - // report_dvdram_v2.mds - new ulong[] - { - 471089 - }, - - // report_dvd-r+dl.mds - new ulong[] - { - 3455919 - }, - - // report_dvdrom.mds - new ulong[] - { - 2146356 - }, - - // report_enhancedcd.mds - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 222779, - 303315 - }, - - // test_multi_karaoke_sampler.mds - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.mds - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.mds - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.mds - new ulong[] - { - 150 - }, - - // report_cdrw.mds - new ulong[] - { - 150 - }, - - // report_dvdram_v2.mds - new ulong[] - { - 0 - }, - - // report_dvd-r+dl.mds - new ulong[] - { - 0 - }, - - // report_dvdrom.mds - new ulong[] - { - 0 - }, - - // report_enhancedcd.mds - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_multi_karaoke_sampler.mds - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.mds - new byte[] - { - 4 - }, - - // report_audiocd.mds - new byte[] - { - 4 - }, - - // report_cdrom.mds - new byte[] - { - 4 - }, - - // report_cdrw.mds - new byte[] - { - 4 - }, - - // report_dvdram_v2.mds - null, - - // report_dvd-r+dl.mds - null, - - // report_dvdrom.mds - null, - - // report_enhancedcd.mds - new byte[] - { - 4 - }, - - // test_multi_karaoke_sampler.mds - new byte[] - { - 4 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "UltraISO", "Alcohol"); public override IMediaImage _plugin => new DiscImages.Alcohol120(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.mds", + MediaType = MediaType.CDDA, + Sectors = 279300, + MD5 = "f6bd226d3f249fa821460aeb1393cf3b", + LongMD5 = "f6bd226d3f249fa821460aeb1393cf3b", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88799, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279299, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.mds", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c96a7bf12427078bab252d941716cc32", + LongMD5 = "c96a7bf12427078bab252d941716cc32", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.mds", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.mds", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.mds", + MediaType = MediaType.DVDROM, + Sectors = 471090, + MD5 = "35cb08dd5fedfb8e9ad2918292e51791", + LongMD5 = "35cb08dd5fedfb8e9ad2918292e51791", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 471089, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-r+dl.mds", + MediaType = MediaType.DVDROM, + Sectors = 3455920, + MD5 = "1cd9b9be5c5e337c5e6576156b84b726", + LongMD5 = "1cd9b9be5c5e337c5e6576156b84b726", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3455919, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdrom.mds", + MediaType = MediaType.DVDROM, + Sectors = 2146357, + MD5 = "5e1841b7cd6ac0a95b8ae6f110fd89f2", + LongMD5 = "5e1841b7cd6ac0a95b8ae6f110fd89f2", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146356, + Pregap = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.mds", + MediaType = MediaType.CDPLUS, + Sectors = 303316, + MD5 = "588d8ff1fef693bbe5719ac6c2f96bc1", + LongMD5 = "d72e737f49482d1330e8fe03b9f40b79", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 222779, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 234180, + End = 303315, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.mds", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "9a19aa0df066732a8ec34025e8160248", + LongMD5 = "e981f7dfdb522ba937fe75474e23a446", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/UltraISO/CloneCD.cs b/Aaru.Tests/Images/UltraISO/CloneCD.cs index 0afefdb96..4c1200187 100644 --- a/Aaru.Tests/Images/UltraISO/CloneCD.cs +++ b/Aaru.Tests/Images/UltraISO/CloneCD.cs @@ -37,341 +37,628 @@ namespace Aaru.Tests.Images.UltraISO [TestFixture] public class CloneCD : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.ccd", "report_audiocd.ccd", "report_cdrom.ccd", "report_cdrw.ccd", - "report_enhancedcd.ccd", "test_multi_karaoke_sampler.ccd" - }; - public override uint[] _sectorSize => null; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.ccd - 210150, - - // report_audiocd.ccd - 247073, - - // report_cdrom.ccd - 254265, - - // report_cdrw.ccd - 308224, - - // report_enhancedcd.ccd - 291916, - - // test_multi_karaoke_sampler.ccd - 329158 - }; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.ccd - MediaType.CDDA, - - // report_audiocd.ccd - MediaType.CDDA, - - // report_cdrom.ccd - MediaType.CDROM, - - // report_cdrw.ccd - MediaType.CDROM, - - // report_enhancedcd.ccd - MediaType.CDROMXA, - - // test_multi_karaoke_sampler.ccd - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.ccd - "f6bd226d3f249fa821460aeb1393cf3b", - - // report_audiocd.ccd - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdrom.ccd - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.ccd - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // report_enhancedcd.ccd - "588d8ff1fef693bbe5719ac6c2f96bc1", - - // test_multi_karaoke_sampler.ccd - "8d8493eb8eba6c67be7a8f47d4fde971" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.ccd - "f6bd226d3f249fa821460aeb1393cf3b", - - // report_audiocd.ccd - "c09f408a4416634d8ac1c1ffd0ed75a5", - - // report_cdrom.ccd - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw.ccd - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_enhancedcd.ccd - "d72e737f49482d1330e8fe03b9f40b79", - - // test_multi_karaoke_sampler.ccd - "5a9eb4f35ecc39de5c011a2bac8549b5" - }; - - public override string[] _subchannelMd5S => new[] - { - // cdiready_the_apprentice.ccd - "864c1fc074773d109fe556f93b70be24", - - // report_audiocd.ccd - "e6b61ad780c72d162c3ceb784de1fbd2", - - // report_cdrom.ccd - "292b671b4b296a20511516557dbbd2b1", - - // report_cdrw.ccd - "4b054ac37c290a91a47997c84c9978d6", - - // report_enhancedcd.ccd - "266d259c5ac40b253f28ccfc452d0046", - - // test_multi_karaoke_sampler.ccd - "159b910e0ec1a88e004b9bcebdbde747" - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.ccd - 22, - - // report_audiocd.ccd - 14, - - // report_cdrom.ccd - 1, - - // report_cdrw.ccd - 1, - - // report_enhancedcd.ccd - 14, - - // test_multi_karaoke_sampler.ccd - 16 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.ccd - new[] - { - 1 - }, - - // report_cdrw.ccd - new[] - { - 1 - }, - - // report_enhancedcd.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_multi_karaoke_sampler.ccd - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.ccd - new ulong[] - { - 69150, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // report_audiocd.ccd - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449 - }, - - // report_cdrom.ccd - new ulong[] - { - 0 - }, - - // report_cdrw.ccd - new ulong[] - { - 0 - }, - - // report_enhancedcd.ccd - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234180 - }, - - // test_multi_karaoke_sampler.ccd - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.ccd - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 279299 - }, - - // report_audiocd.ccd - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdrom.ccd - new ulong[] - { - 254264 - }, - - // report_cdrw.ccd - new ulong[] - { - 308223 - }, - - // report_enhancedcd.ccd - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 222779, - 303315 - }, - - // test_multi_karaoke_sampler.ccd - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.ccd - new ulong[] - { - 150 - }, - - // report_cdrw.ccd - new ulong[] - { - 150 - }, - - // report_enhancedcd.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_multi_karaoke_sampler.ccd - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.ccd - new byte[] - { - 4 - }, - - // report_audiocd.ccd - new byte[] - { - 4 - }, - - // report_cdrom.ccd - new byte[] - { - 4 - }, - - // report_cdrw.ccd - new byte[] - { - 4 - }, - - // report_enhancedcd.ccd - new byte[] - { - 4 - }, - - // test_multi_karaoke_sampler.ccd - new byte[] - { - 4 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "UltraISO", "CloneCD"); public override IMediaImage _plugin => new CloneCd(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.ccd", + MediaType = MediaType.CDDA, + Sectors = 210150, + MD5 = "f6bd226d3f249fa821460aeb1393cf3b", + LongMD5 = "f6bd226d3f249fa821460aeb1393cf3b", + SubchannelMD5 = "864c1fc074773d109fe556f93b70be24", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88799, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279299, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.ccd", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + LongMD5 = "c09f408a4416634d8ac1c1ffd0ed75a5", + SubchannelMD5 = "e6b61ad780c72d162c3ceb784de1fbd2", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.ccd", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + SubchannelMD5 = "292b671b4b296a20511516557dbbd2b1", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.ccd", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + SubchannelMD5 = "4b054ac37c290a91a47997c84c9978d6", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 291916, + MD5 = "588d8ff1fef693bbe5719ac6c2f96bc1", + LongMD5 = "d72e737f49482d1330e8fe03b9f40b79", + SubchannelMD5 = "266d259c5ac40b253f28ccfc452d0046", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 222779, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234180, + End = 303315, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.ccd", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "8d8493eb8eba6c67be7a8f47d4fde971", + LongMD5 = "5a9eb4f35ecc39de5c011a2bac8549b5", + SubchannelMD5 = "159b910e0ec1a88e004b9bcebdbde747", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/UltraISO/Cuesheet.cs b/Aaru.Tests/Images/UltraISO/Cuesheet.cs index 12a6173e3..6569f2ab9 100644 --- a/Aaru.Tests/Images/UltraISO/Cuesheet.cs +++ b/Aaru.Tests/Images/UltraISO/Cuesheet.cs @@ -37,487 +37,679 @@ namespace Aaru.Tests.Images.UltraISO [TestFixture] public class Cuesheet : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.cue", "report_audiocd.cue", "report_cdrom.cue", "report_cdrw.cue", - "report_dvdram_v2.cue", "report_dvd-r+dl.cue", "report_dvdrom.cue", "report_enhancedcd.cue", - "test_multi_karaoke_sampler.cue" - }; - public override uint[] _sectorSize => null; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.cue - 210150, - - // report_audiocd.cue - 247073, - - // report_cdrom.cue - 254265, - - // report_cdrw.cue - 308224, - - // report_dvdram_v2.cue - 471090, - - // report_dvd-r+dl.cue - 3455920, - - // report_dvdrom.cue - 2146357, - - // report_enhancedcd.cue - 303616, - - // test_multi_karaoke_sampler.cue - 329158 - }; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.cue - MediaType.CDDA, - - // report_audiocd.cue - MediaType.CDDA, - - // report_cdrom.cue - MediaType.CDROM, - - // report_cdrw.cue - MediaType.CDROM, - - // report_dvdram_v2.cue - MediaType.CDROM, - - // report_dvd-r+dl.cue - MediaType.CDROM, - - // report_dvdrom.cue - MediaType.CDROM, - - // report_enhancedcd.cue - MediaType.CDPLUS, - - // test_multi_karaoke_sampler.cue - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.cue - "d3b069721052a1093151c6f7504ca593", - - // report_audiocd.cue - "c041297aca68c206d95d20aa9435e01b", - - // report_cdrom.cue - "bf4bbec517101d0d6f45d2e4d50cb875", - - // report_cdrw.cue - "1e55aa420ca8f8ea77d5b597c9cfc19b", - - // report_dvdram_v2.cue - "35cb08dd5fedfb8e9ad2918292e51791", - - // report_dvd-r+dl.cue - "ea4cfa28a4e449d7b59251b98394c7f4", - - // report_dvdrom.cue - "5e1841b7cd6ac0a95b8ae6f110fd89f2", - - // report_enhancedcd.cue - "026acd68cecc7b2d49a3f9a42312a18f", - - // test_multi_karaoke_sampler.cue - "9a19aa0df066732a8ec34025e8160248" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.cue - "d3b069721052a1093151c6f7504ca593", - - // report_audiocd.cue - "c041297aca68c206d95d20aa9435e01b", - - // report_cdrom.cue - "3d3f9cf7d1ba2249b1e7960071e5af46", - - // report_cdrw.cue - "3af5f943ddb9427d9c63a4ce3b704db9", - - // report_dvdram_v2.cue - "c7ee3dc509bb40948c383686b6f66da9", - - // report_dvd-r+dl.cue - "282de41e0118781f8a9216b0a4a31088", - - // report_dvdrom.cue - "8325ba263cfa419f9566de93e55248d5", - - // report_enhancedcd.cue - "31a4c8805b6e8fa7edf93d41b1785661", - - // test_multi_karaoke_sampler.cue - "e981f7dfdb522ba937fe75474e23a446" - }; - - public override string[] _subchannelMd5S => new string[] - { - // cdiready_the_apprentice.cue - null, - - // report_audiocd.cue - null, - - // report_cdrom.cue - null, - - // report_cdrw.cue - null, - - // report_dvdram_v2.cue - null, - - // report_dvd-r+dl.cue - null, - - // report_dvdrom.cue - null, - - // report_enhancedcd.cue - null, - - // test_multi_karaoke_sampler.cue - null - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.cue - 22, - - // report_audiocd.cue - 14, - - // report_cdrom.cue - 1, - - // report_cdrw.cue - 1, - - // report_dvdram_v2.cue - 1, - - // report_dvd-r+dl.cue - 1, - - // report_dvdrom.cue - 1, - - // report_enhancedcd.cue - 14, - - // test_multi_karaoke_sampler.cue - 16 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.cue - new[] - { - 1 - }, - - // report_cdrw.cue - new[] - { - 1 - }, - - // report_dvdram_v2.cue - new[] - { - 1 - }, - - // report_dvd-r+dl.cue - new[] - { - 1 - }, - - // report_dvdrom.cue - new[] - { - 1 - }, - - // report_enhancedcd.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_multi_karaoke_sampler.cue - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.cue - new ulong[] - { - 69150, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 190125, 208875, 213000, 232200, - 236700, 241875, 256125, 256875, 265650, 267375, 270000, 271650, 274275 - }, - - // report_audiocd.cue - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154072, 170751, 186539, 201799, 224449U - }, - - // report_cdrom.cue - new ulong[] - { - 0 - }, - - // report_cdrw.cue - new ulong[] - { - 0 - }, - - // report_dvdram_v2.cue - new ulong[] - { - 0 - }, - - // report_dvd-r+dl.cue - new ulong[] - { - 0 - }, - - // report_dvdrom.cue - new ulong[] - { - 0 - }, - - // report_enhancedcd.cue - new ulong[] - { - 0, 15511, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153418, 166932, 187113, 201441, 234030 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 0, 1887, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175826, 206461, 226450, 244355, 273965, - 293752, 310711 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.cue - new ulong[] - { - 88799, 107624, 112199, 133649, 138224, 159824, 164774, 185399, 190124, 208874, 212999, 232199, 236699, - 241874, 256124, 256874, 265649, 267374, 269999, 271649, 274274, 279299 - }, - - // report_audiocd.cue - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170750, 186538, 201798, 224448, 247072 - }, - - // report_cdrom.cue - new ulong[] - { - 254264 - }, - - // report_cdrw.cue - new ulong[] - { - 308223 - }, - - // report_dvdram_v2.cue - new ulong[] - { - 471089 - }, - - // report_dvd-r+dl.cue - new ulong[] - { - 3455919 - }, - - // report_dvdrom.cue - new ulong[] - { - 2146356 - }, - - // report_enhancedcd.cue - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 166931, 187112, 201440, 234179, - 303315 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 1886, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206460, 226449, 244354, 273964, - 293751, 310710, 329157 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.cue - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.cue - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.cue - new ulong[] - { - 150 - }, - - // report_cdrw.cue - new ulong[] - { - 150 - }, - - // report_dvdram_v2.cue - new ulong[] - { - 150 - }, - - // report_dvd-r+dl.cue - new ulong[] - { - 150 - }, - - // report_dvdrom.cue - new ulong[] - { - 150 - }, - - // report_enhancedcd.cue - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_multi_karaoke_sampler.cue - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.cue - new byte[] - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00 - }, - - // report_audiocd.cue - new byte[] - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - - // report_cdrom.cue - new byte[] - { - 4 - }, - - // report_cdrw.cue - new byte[] - { - 4 - }, - - // report_dvdram_v2.cue - new byte[] - { - 4 - }, - - // report_dvd-r+dl.cue - new byte[] - { - 4 - }, - - // report_dvdrom.cue - new byte[] - { - 4 - }, - - // report_enhancedcd.cue - new byte[] - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04 - }, - - // test_multi_karaoke_sampler.cue - new byte[] - { - 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "UltraISO", "Cuesheet"); public override IMediaImage _plugin => new CdrWin(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.cue", + MediaType = MediaType.CDDA, + Sectors = 210150, + MD5 = "d3b069721052a1093151c6f7504ca593", + LongMD5 = "d3b069721052a1093151c6f7504ca593", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 69150, + End = 88799, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 107624, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 112199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 133649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 138224, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 159824, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 164774, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 185399, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 190124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 208874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 212999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 232199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 236699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 241874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 256124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 256874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256875, + End = 265649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 265650, + End = 267374, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 267375, + End = 269999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 270000, + End = 271649, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 271650, + End = 274274, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 274275, + End = 279299, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.cue", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "c041297aca68c206d95d20aa9435e01b", + LongMD5 = "c041297aca68c206d95d20aa9435e01b", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154072, + End = 170750, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170751, + End = 186538, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186539, + End = 201798, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201799, + End = 224448, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224449, + End = 247072, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.cue", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "bf4bbec517101d0d6f45d2e4d50cb875", + LongMD5 = "3d3f9cf7d1ba2249b1e7960071e5af46", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.cue", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "1e55aa420ca8f8ea77d5b597c9cfc19b", + LongMD5 = "3af5f943ddb9427d9c63a4ce3b704db9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.cue", + MediaType = MediaType.CDROM, + Sectors = 471090, + MD5 = "35cb08dd5fedfb8e9ad2918292e51791", + LongMD5 = "c7ee3dc509bb40948c383686b6f66da9", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 471089, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-r+dl.cue", + MediaType = MediaType.CDROM, + Sectors = 3455920, + MD5 = "ea4cfa28a4e449d7b59251b98394c7f4", + LongMD5 = "282de41e0118781f8a9216b0a4a31088", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 3455919, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdrom.cue", + MediaType = MediaType.CDROM, + Sectors = 2146357, + MD5 = "5e1841b7cd6ac0a95b8ae6f110fd89f2", + LongMD5 = "8325ba263cfa419f9566de93e55248d5", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 2146356, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.cue", + MediaType = MediaType.CDPLUS, + Sectors = 303616, + MD5 = "026acd68cecc7b2d49a3f9a42312a18f", + LongMD5 = "31a4c8805b6e8fa7edf93d41b1785661", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15511, + End = 33958, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153418, + End = 166931, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 166932, + End = 187112, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187113, + End = 201440, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201441, + End = 234179, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 234030, + End = 303315, + Pregap = 150, + Flags = 4 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.cue", + MediaType = MediaType.CDROMXA, + Sectors = 329158, + MD5 = "9a19aa0df066732a8ec34025e8160248", + LongMD5 = "e981f7dfdb522ba937fe75474e23a446", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1886, + Pregap = 150, + Flags = 4 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1887, + End = 32748, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 206460, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206461, + End = 226449, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226450, + End = 244354, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244355, + End = 273964, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273965, + End = 293751, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293752, + End = 310710, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 310711, + End = 329157, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/UltraISO/Nero.cs b/Aaru.Tests/Images/UltraISO/Nero.cs index 2002601ce..2056ee1bc 100644 --- a/Aaru.Tests/Images/UltraISO/Nero.cs +++ b/Aaru.Tests/Images/UltraISO/Nero.cs @@ -36,489 +36,685 @@ namespace Aaru.Tests.Images.UltraISO [TestFixture] public class Nero : OpticalMediaImageTest { - public override string[] _testFiles => new[] - { - "cdiready_the_apprentice.nrg", "report_audiocd.nrg", "report_cdrom.nrg", "report_cdrw.nrg", - "report_dvdram_v2.nrg", "report_dvd-r+dl.nrg", "report_dvdrom.nrg", "report_enhancedcd.nrg", - "test_multi_karaoke_sampler.nrg" - }; - - public override ulong[] _sectors => new ulong[] - { - // cdiready_the_apprentice.nrg - 210150, - - // report_audiocd.nrg - 247073, - - // report_cdrom.nrg - 254265, - - // report_cdrw.nrg - 308224, - - // report_dvdram_v2.nrg - 471090, - - // report_dvd-r+dl.nrg - 3455920, - - // report_dvdrom.nrg - 2146357, - - // report_enhancedcd.nrg - 292066, - - // test_multi_karaoke_sampler.nrg - 329008 - }; - public override uint[] _sectorSize => null; - - public override MediaType[] _mediaTypes => new[] - { - // cdiready_the_apprentice.nrg - MediaType.CDDA, - - // report_audiocd.nrg - MediaType.CDDA, - - // report_cdrom.nrg - MediaType.CDROM, - - // report_cdrw.nrg - MediaType.CDROM, - - // report_dvdram_v2.nrg - MediaType.DVDROM, - - // report_dvd-r+dl.nrg - MediaType.DVDROM, - - // report_dvdrom.nrg - MediaType.DVDROM, - - // report_enhancedcd.nrg - MediaType.CDPLUS, - - // test_multi_karaoke_sampler.nrg - MediaType.CDROMXA - }; - - public override string[] _md5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // report_audiocd.nrg - "UNKNOWN", - - // report_cdrom.nrg - "UNKNOWN", - - // report_cdrw.nrg - "UNKNOWN", - - // report_dvdram_v2.nrg - "UNKNOWN", - - // report_dvd-r+dl.nrg - "UNKNOWN", - - // report_dvdrom.nrg - "UNKNOWN", - - // report_enhancedcd.nrg - "UNKNOWN", - - // test_multi_karaoke_sampler.nrg - "UNKNOWN" - }; - - public override string[] _longMd5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // report_audiocd.nrg - "UNKNOWN", - - // report_cdrom.nrg - "UNKNOWN", - - // report_cdrw.nrg - "UNKNOWN", - - // report_dvdram_v2.nrg - "UNKNOWN", - - // report_dvd-r+dl.nrg - "UNKNOWN", - - // report_dvdrom.nrg - "UNKNOWN", - - // report_enhancedcd.nrg - "UNKNOWN", - - // test_multi_karaoke_sampler.nrg - "UNKNOWN" - }; - - public override string[] _subchannelMd5S => new[] - { - // cdiready_the_apprentice.nrg - "UNKNOWN", - - // report_audiocd.nrg - "UNKNOWN", - - // report_cdrom.nrg - "UNKNOWN", - - // report_cdrw.nrg - "UNKNOWN", - - // report_dvdram_v2.nrg - null, - - // report_dvd-r+dl.nrg - null, - - // report_dvdrom.nrg - null, - - // report_enhancedcd.nrg - "UNKNOWN", - - // test_multi_karaoke_sampler.nrg - "UNKNOWN" - }; - - public override int[] _tracks => new[] - { - // cdiready_the_apprentice.nrg - 22, - - // report_audiocd.nrg - 14, - - // report_cdrom.nrg - 1, - - // report_cdrw.nrg - 1, - - // report_dvdram_v2.nrg - 1, - - // report_dvd-r+dl.nrg - 1, - - // report_dvdrom.nrg - 1, - - // report_enhancedcd.nrg - 14, - - // test_multi_karaoke_sampler.nrg - 16 - }; - - public override int[][] _trackSessions => new[] - { - // cdiready_the_apprentice.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_audiocd.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - }, - - // report_cdrom.nrg - new[] - { - 1 - }, - - // report_cdrw.nrg - new[] - { - 1 - }, - - // report_dvdram_v2.nrg - new[] - { - 1 - }, - - // report_dvd-r+dl.nrg - new[] - { - 1 - }, - - // report_dvdrom.nrg - new[] - { - 1 - }, - - // report_enhancedcd.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2 - }, - - // test_multi_karaoke_sampler.nrg - new[] - { - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; - - public override ulong[][] _trackStarts => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 0, 88800, 107625, 112200, 133650, 138225, 159825, 164775, 185400, 121125, 139875, 144000, 163200, - 167700, 172875, 190125, 208875, 213000, 232200, 236700, 241875, 256125 - }, - - // report_audiocd.nrg - new ulong[] - { - 0, 16549, 30051, 47950, 63314, 78925, 94732, 117125, 136166, 154222, 170901, 186689, 201949, 224599 - }, - - // report_cdrom.nrg - new ulong[] - { - 0 - }, - - // report_cdrw.nrg - new ulong[] - { - 0 - }, - - // report_dvdram_v2.nrg - new[] - { - 18446744073709551466 - }, - - // report_dvd-r+dl.nrg - new[] - { - 18446744073709551466 - }, - - // report_dvdrom.nrg - new[] - { - 18446744073709551466 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 0, 15661, 33959, 51330, 71973, 87582, 103305, 117691, 136167, 153568, 167082, 187263, 201591, 256021 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 0, 1737, 32749, 52672, 70304, 100098, 119761, 136999, 155790, 175732, 206367, 226356, 244261, 273871, - 293658, 175826 - } - }; - - public override ulong[][] _trackEnds => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 19649, 38474, 43049, 64499, 69074, 90674, 95624, 116249, 120974, 139874, 143999, 163199, 167699, 172874, - 187124, 121724, 148499, 145574, 165674, 169199, 175349, 191999 - }, - - // report_audiocd.nrg - new ulong[] - { - 16548, 30050, 47949, 63313, 78924, 94731, 117124, 136165, 154071, 170900, 186688, 201948, 224598, 247222 - }, - - // report_cdrom.nrg - new ulong[] - { - 254264 - }, - - // report_cdrw.nrg - new ulong[] - { - 308223 - }, - - // report_dvdram_v2.nrg - new ulong[] - { - 471089 - }, - - // report_dvd-r+dl.nrg - new ulong[] - { - 3455919 - }, - - // report_dvdrom.nrg - new ulong[] - { - 2146356 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 15660, 33958, 51329, 71972, 87581, 103304, 117690, 136166, 153417, 167081, 187262, 201590, 222929, - 325456 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 1736, 32748, 52671, 70303, 100097, 119760, 136998, 155789, 175825, 206366, 226355, 244260, 273870, - 293657, 310616, 194272 - } - }; - - public override ulong[][] _trackPregaps => new[] - { - // cdiready_the_apprentice.nrg - new ulong[] - { - 150, 18446744073709482466, 18446744073709482466, 18446744073709482466, 18446744073709482466, - 18446744073709482466, 18446744073709482466, 18446744073709482466, 18446744073709482466, 0, 0, 0, 0, 0, - 0, 18446744073709482466, 18446744073709482466, 18446744073709482466, 18446744073709482466, - 18446744073709482466, 18446744073709482466, 18446744073709482466 - }, - - // report_audiocd.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.nrg - new ulong[] - { - 150 - }, - - // report_cdrw.nrg - new ulong[] - { - 150 - }, - - // report_dvdram_v2.nrg - new ulong[] - { - 0 - }, - - // report_dvd-r+dl.nrg - new ulong[] - { - 0 - }, - - // report_dvdrom.nrg - new ulong[] - { - 0 - }, - - // report_enhancedcd.nrg - new ulong[] - { - 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150 - }, - - // test_multi_karaoke_sampler.nrg - new ulong[] - { - 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - - public override byte[][] _trackFlags => new[] - { - // cdiready_the_apprentice.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_audiocd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // report_cdrom.nrg - new byte[] - { - 0 - }, - - // report_cdrw.nrg - new byte[] - { - 0 - }, - - // report_dvdram_v2.nrg - new byte[] - { - 0 - }, - - // report_dvd-r+dl.nrg - new byte[] - { - 0 - }, - - // report_dvdrom.nrg - new byte[] - { - 0 - }, - - // report_enhancedcd.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - - // test_multi_karaoke_sampler.nrg - new byte[] - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - } - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "UltraISO", "Nero"); public override IMediaImage _plugin => new DiscImages.Nero(); + + public override OpticalImageTestExpected[] Tests => new[] + { + new OpticalImageTestExpected + { + TestFile = "cdiready_the_apprentice.nrg", + MediaType = MediaType.CDDA, + Sectors = 210150, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 19649, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 88800, + End = 38474, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 107625, + End = 43049, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 112200, + End = 64499, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 133650, + End = 69074, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 138225, + End = 90674, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 159825, + End = 95624, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 164775, + End = 116249, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 185400, + End = 120974, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 121125, + End = 139874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 139875, + End = 143999, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 144000, + End = 163199, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 163200, + End = 167699, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 167700, + End = 172874, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 172875, + End = 187124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 190125, + End = 121724, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 208875, + End = 148499, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 213000, + End = 145574, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 232200, + End = 165674, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 236700, + End = 169199, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 241875, + End = 175349, + Pregap = 18446744073709482466, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 256125, + End = 191999, + Pregap = 18446744073709482466, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_audiocd.nrg", + MediaType = MediaType.CDDA, + Sectors = 247073, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 16548, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 16549, + End = 30050, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 30051, + End = 47949, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 47950, + End = 63313, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 63314, + End = 78924, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 78925, + End = 94731, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 94732, + End = 117124, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117125, + End = 136165, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136166, + End = 154071, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 154222, + End = 170900, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 170901, + End = 186688, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 186689, + End = 201948, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201949, + End = 224598, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 224599, + End = 247222, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrom.nrg", + MediaType = MediaType.CDROM, + Sectors = 254265, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 254264, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_cdrw.nrg", + MediaType = MediaType.CDROM, + Sectors = 308224, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 308223, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdram_v2.nrg", + MediaType = MediaType.DVDROM, + Sectors = 471090, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 18446744073709551466, + End = 471089, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvd-r+dl.nrg", + MediaType = MediaType.DVDROM, + Sectors = 3455920, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 18446744073709551466, + End = 3455919, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_dvdrom.nrg", + MediaType = MediaType.DVDROM, + Sectors = 2146357, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 18446744073709551466, + End = 2146356, + Pregap = 0, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "report_enhancedcd.nrg", + MediaType = MediaType.CDPLUS, + Sectors = 292066, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 15660, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 15661, + End = 33958, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 33959, + End = 51329, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 51330, + End = 71972, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 71973, + End = 87581, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 87582, + End = 103304, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 103305, + End = 117690, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 117691, + End = 136166, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136167, + End = 153417, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 153568, + End = 167081, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 167082, + End = 187262, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 187263, + End = 201590, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 201591, + End = 222929, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 2, + Start = 256021, + End = 325456, + Pregap = 150, + Flags = 0 + } + } + }, + new OpticalImageTestExpected + { + TestFile = "test_multi_karaoke_sampler.nrg", + MediaType = MediaType.CDROMXA, + Sectors = 329008, + MD5 = "UNKNOWN", + LongMD5 = "UNKNOWN", + SubchannelMD5 = "UNKNOWN", + Tracks = new[] + { + new TrackInfoTestExpected + { + Session = 1, + Start = 0, + End = 1736, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 1737, + End = 32748, + Pregap = 150, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 32749, + End = 52671, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 52672, + End = 70303, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 70304, + End = 100097, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 100098, + End = 119760, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 119761, + End = 136998, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 136999, + End = 155789, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 155790, + End = 175825, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175732, + End = 206366, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 206367, + End = 226355, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 226356, + End = 244260, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 244261, + End = 273870, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 273871, + End = 293657, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 293658, + End = 310616, + Pregap = 0, + Flags = 0 + }, + new TrackInfoTestExpected + { + Session = 1, + Start = 175826, + End = 194272, + Pregap = 0, + Flags = 0 + } + } + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/Virtual98.cs b/Aaru.Tests/Images/Virtual98.cs index 02dec0392..8f4afbbaf 100644 --- a/Aaru.Tests/Images/Virtual98.cs +++ b/Aaru.Tests/Images/Virtual98.cs @@ -36,109 +36,67 @@ namespace Aaru.Tests.Images [TestFixture] public class Virtual98 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "v98_128.hdd.lz", "v98_20.hdd.lz", "v98_256.hdd.lz", "v98_41.hdd.lz", "v98_512.hdd.lz", "v98_65.hdd.lz", - "v98_80.hdd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // v98_128.hdd.lz - 524288, - - // v98_20.hdd.lz - 81920, - - // v98_256.hdd.lz - 1048576, - - // v98_41.hdd.lz - 167936, - - // v98_512.hdd.lz - 2097152, - - // v98_65.hdd.lz - 266240, - - // v98_80.hdd.lz - 327680 - }; - - public override uint[] _sectorSize => new uint[] - { - // v98_128.hdd.lz - 256, - - // v98_20.hdd.lz - 256, - - // v98_256.hdd.lz - 256, - - // v98_41.hdd.lz - 256, - - // v98_512.hdd.lz - 256, - - // v98_65.hdd.lz - 256, - - // v98_80.hdd.lz - 256 - }; - - public override MediaType[] _mediaTypes => new[] - { - // v98_128.hdd.lz - MediaType.GENERIC_HDD, - - // v98_20.hdd.lz - MediaType.GENERIC_HDD, - - // v98_256.hdd.lz - MediaType.GENERIC_HDD, - - // v98_41.hdd.lz - MediaType.GENERIC_HDD, - - // v98_512.hdd.lz - MediaType.GENERIC_HDD, - - // v98_65.hdd.lz - MediaType.GENERIC_HDD, - - // v98_80.hdd.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // v98_128.hdd.lz - "be3693b92a5242101e80087611b33092", - - // v98_20.hdd.lz - "811b2a9d08abbecf4cb75531d5e51808", - - // v98_256.hdd.lz - "cf4375422f50d62e163d697a18542eca", - - // v98_41.hdd.lz - "fe4fc08015f1e3a4562e8e867107b561", - - // v98_512.hdd.lz - "afb49485f0ef2b39e8377c1fe880e77b", - - // v98_65.hdd.lz - "9e4c0bc8bc955b1a21a94df0f7bec3ab", - - // v98_80.hdd.lz - "f5906261c390ea5c5a0e46864fb066cd" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "Virtual98"); public override IMediaImage _plugin => new DiscImages.Virtual98(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "v98_128.hdd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 524288, + SectorSize = 256, + MD5 = "be3693b92a5242101e80087611b33092" + }, + new BlockImageTestExpected + { + TestFile = "v98_20.hdd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 81920, + SectorSize = 256, + MD5 = "811b2a9d08abbecf4cb75531d5e51808" + }, + new BlockImageTestExpected + { + TestFile = "v98_256.hdd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1048576, + SectorSize = 256, + MD5 = "cf4375422f50d62e163d697a18542eca" + }, + new BlockImageTestExpected + { + TestFile = "v98_41.hdd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 167936, + SectorSize = 256, + MD5 = "fe4fc08015f1e3a4562e8e867107b561" + }, + new BlockImageTestExpected + { + TestFile = "v98_512.hdd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2097152, + SectorSize = 256, + MD5 = "afb49485f0ef2b39e8377c1fe880e77b" + }, + new BlockImageTestExpected + { + TestFile = "v98_65.hdd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 266240, + SectorSize = 256, + MD5 = "9e4c0bc8bc955b1a21a94df0f7bec3ab" + }, + new BlockImageTestExpected + { + TestFile = "v98_80.hdd.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 327680, + SectorSize = 256, + MD5 = "f5906261c390ea5c5a0e46864fb066cd" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/VirtualBox/VirtualPC.cs b/Aaru.Tests/Images/VirtualBox/VirtualPC.cs index a2bffd7b8..d810be2e5 100644 --- a/Aaru.Tests/Images/VirtualBox/VirtualPC.cs +++ b/Aaru.Tests/Images/VirtualBox/VirtualPC.cs @@ -37,99 +37,60 @@ namespace Aaru.Tests.Images.VirtualBox [TestFixture] public class VirtualPc : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "virtualbox_linux_dynamic_250mb.vhd.lz", "virtualbox_linux_fixed_10mb.vhd.lz", - "virtualbox_macos_dynamic_250mb.vhd.lz", "virtualbox_macos_fixed_10mb.vhd.lz", - "virtualbox_windows_dynamic_250mb.vhd.lz", "virtualbox_windows_fixed_10mb.vhd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // virtualbox_linux_dynamic_250mb.vhd.lz - 512000, - - // virtualbox_linux_fixed_10mb.vhd.lz - 20480, - - // virtualbox_macos_dynamic_250mb.vhd.lz - 512000, - - // virtualbox_macos_fixed_10mb.vhd.lz - 20480, - - // virtualbox_windows_dynamic_250mb.vhd.lz - 512000, - - // virtualbox_windows_fixed_10mb.vhd.lz - 20480 - }; - - public override uint[] _sectorSize => new uint[] - { - // virtualbox_linux_dynamic_250mb.vhd.lz - 512, - - // virtualbox_linux_fixed_10mb.vhd.lz - 512, - - // virtualbox_macos_dynamic_250mb.vhd.lz - 512, - - // virtualbox_macos_fixed_10mb.vhd.lz - 512, - - // virtualbox_windows_dynamic_250mb.vhd.lz - 512, - - // virtualbox_windows_fixed_10mb.vhd.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // virtualbox_linux_dynamic_250mb.vhd.lz - MediaType.Unknown, - - // virtualbox_linux_fixed_10mb.vhd.lz - MediaType.Unknown, - - // virtualbox_macos_dynamic_250mb.vhd.lz - MediaType.Unknown, - - // virtualbox_macos_fixed_10mb.vhd.lz - MediaType.Unknown, - - // virtualbox_windows_dynamic_250mb.vhd.lz - MediaType.Unknown, - - // virtualbox_windows_fixed_10mb.vhd.lz - MediaType.Unknown - }; - - public override string[] _md5S => new[] - { - // virtualbox_linux_dynamic_250mb.vhd.lz - "f968f0e74dd1b254de9eac589a5d687d", - - // virtualbox_linux_fixed_10mb.vhd.lz - "f1c9645dbc14efddc7d8a322685f26eb", - - // virtualbox_macos_dynamic_250mb.vhd.lz - "09d3dce9e60e9d1a997ad3f04d33c8c5", - - // virtualbox_macos_fixed_10mb.vhd.lz - "f1c9645dbc14efddc7d8a322685f26eb", - - // virtualbox_windows_dynamic_250mb.vhd.lz - "284af271786e7def9bf8af7c2da1c4f2", - - // virtualbox_windows_fixed_10mb.vhd.lz - "f1c9645dbc14efddc7d8a322685f26eb" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "VirtualBox", "VirtualPC"); public override IMediaImage _plugin => new Vhd(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "virtualbox_linux_dynamic_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 512000, + SectorSize = 512, + MD5 = "f968f0e74dd1b254de9eac589a5d687d" + }, + new BlockImageTestExpected + { + TestFile = "virtualbox_linux_fixed_10mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 20480, + SectorSize = 512, + MD5 = "f1c9645dbc14efddc7d8a322685f26eb" + }, + new BlockImageTestExpected + { + TestFile = "virtualbox_macos_dynamic_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 512000, + SectorSize = 512, + MD5 = "09d3dce9e60e9d1a997ad3f04d33c8c5" + }, + new BlockImageTestExpected + { + TestFile = "virtualbox_macos_fixed_10mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 20480, + SectorSize = 512, + MD5 = "f1c9645dbc14efddc7d8a322685f26eb" + }, + new BlockImageTestExpected + { + TestFile = "virtualbox_windows_dynamic_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 512000, + SectorSize = 512, + MD5 = "284af271786e7def9bf8af7c2da1c4f2" + }, + new BlockImageTestExpected + { + TestFile = "virtualbox_windows_fixed_10mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 20480, + SectorSize = 512, + MD5 = "f1c9645dbc14efddc7d8a322685f26eb" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/VirtualPC/Raw.cs b/Aaru.Tests/Images/VirtualPC/Raw.cs index e3f065783..de8e53504 100644 --- a/Aaru.Tests/Images/VirtualPC/Raw.cs +++ b/Aaru.Tests/Images/VirtualPC/Raw.cs @@ -37,85 +37,51 @@ namespace Aaru.Tests.Images.VirtualPC [TestFixture] public class Raw : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "vpc106b_fixed_150mb_fat16.lz", "vpc213_fixed_50mb_fat16.lz", "vpc303_fixed_30mb_fat16.lz", - "vpc30_fixed_30mb_fat16.lz", "vpc4_fixed_130mb_fat16.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // vpc106b_fixed_150mb_fat16.lz - 307024, - - // vpc213_fixed_50mb_fat16.lz - 102306, - - // vpc303_fixed_30mb_fat16.lz - 62356, - - // vpc30_fixed_30mb_fat16.lz - 61404, - - // vpc4_fixed_130mb_fat16.lz - 266016 - }; - - public override uint[] _sectorSize => new uint[] - { - // vpc106b_fixed_150mb_fat16.lz - 512, - - // vpc213_fixed_50mb_fat16.lz - 512, - - // vpc303_fixed_30mb_fat16.lz - 512, - - // vpc30_fixed_30mb_fat16.lz - 512, - - // vpc4_fixed_130mb_fat16.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // vpc106b_fixed_150mb_fat16.lz - MediaType.GENERIC_HDD, - - // vpc213_fixed_50mb_fat16.lz - MediaType.GENERIC_HDD, - - // vpc303_fixed_30mb_fat16.lz - MediaType.GENERIC_HDD, - - // vpc30_fixed_30mb_fat16.lz - MediaType.GENERIC_HDD, - - // vpc4_fixed_130mb_fat16.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // vpc106b_fixed_150mb_fat16.lz - "56eb1b7a4ea849e93de35f48b8912cd1", - - // vpc213_fixed_50mb_fat16.lz - "f05abd9ff39f6b7e39834724b52a49e1", - - // vpc303_fixed_30mb_fat16.lz - "46d5f39b1169a2721863b71e2944e3c2", - - // vpc30_fixed_30mb_fat16.lz - "86b522d83ab057fa76eab0941357e1f6", - - // vpc4_fixed_130mb_fat16.lz - "5f4d4c4f268ea19c91bf4fb49f4894b6" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "VirtualPC"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "vpc106b_fixed_150mb_fat16.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 307024, + SectorSize = 512, + MD5 = "56eb1b7a4ea849e93de35f48b8912cd1" + }, + new BlockImageTestExpected + { + TestFile = "vpc213_fixed_50mb_fat16.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 102306, + SectorSize = 512, + MD5 = "f05abd9ff39f6b7e39834724b52a49e1" + }, + new BlockImageTestExpected + { + TestFile = "vpc303_fixed_30mb_fat16.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 62356, + SectorSize = 512, + MD5 = "46d5f39b1169a2721863b71e2944e3c2" + }, + new BlockImageTestExpected + { + TestFile = "vpc30_fixed_30mb_fat16.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 61404, + SectorSize = 512, + MD5 = "86b522d83ab057fa76eab0941357e1f6" + }, + new BlockImageTestExpected + { + TestFile = "vpc4_fixed_130mb_fat16.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 266016, + SectorSize = 512, + MD5 = "5f4d4c4f268ea19c91bf4fb49f4894b6" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/VirtualPC/VirtualPC.cs b/Aaru.Tests/Images/VirtualPC/VirtualPC.cs index f3b925bd2..cf9b61eb8 100644 --- a/Aaru.Tests/Images/VirtualPC/VirtualPC.cs +++ b/Aaru.Tests/Images/VirtualPC/VirtualPC.cs @@ -37,181 +37,107 @@ namespace Aaru.Tests.Images.VirtualPC [TestFixture] public class VirtualPc : BlockMediaImageTest { -public override string[] _testFiles => new[] -{/* -"vpc106b_fixed_150mb_fat16.lz", -"vpc213_fixed_50mb_fat16.lz", -"vpc303_fixed_30mb_fat16.lz", -"vpc30_fixed_30mb_fat16.lz", -"vpc4_fixed_130mb_fat16.lz",*/ -"vpc504_dynamic_250mb.lz", -"vpc504_fixed_10mb.lz", -"vpc50_dynamic_250mb.lz", -"vpc50_fixed_10mb.lz", -"vpc601_dynamic_250mb.vhd.lz", -"vpc601_fixed_10mb.vhd.lz", -"vpc60_differencing_parent_250mb.vhd.lz", -"vpc60_dynamic_250mb.vhd.lz", -"vpc60_fixed_10mb.vhd.lz", -"vpc702_differencing_parent_250mb.vhd.lz", -"vpc702_dynamic_250mb.vhd.lz", -"vpc702_fixed_10mb.vhd.lz" -}; + public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "VirtualPC"); + public override IMediaImage _plugin => new Vhd(); -public override ulong[] _sectors => new ulong[] -{ -// vpc106b_fixed_150mb_fat16.lz -//0, -// vpc213_fixed_50mb_fat16.lz -//0, -// vpc303_fixed_30mb_fat16.lz -//0, -// vpc30_fixed_30mb_fat16.lz -//0, -// vpc4_fixed_130mb_fat16.lz -//0, -// vpc504_dynamic_250mb.lz -511056, -// vpc504_fixed_10mb.lz -20468, -// vpc50_dynamic_250mb.lz -511056, -// vpc50_fixed_10mb.lz -20468, -// vpc601_dynamic_250mb.vhd.lz -511056, -// vpc601_fixed_10mb.vhd.lz -20468, -// vpc60_differencing_parent_250mb.vhd.lz -511056, -// vpc60_dynamic_250mb.vhd.lz -511056, -// vpc60_fixed_10mb.vhd.lz -20468, -// vpc702_differencing_parent_250mb.vhd.lz -511056, -// vpc702_dynamic_250mb.vhd.lz -511056, -// vpc702_fixed_10mb.vhd.lz -20468 -}; - -public override uint[] _sectorSize => new uint[] -{ -// vpc106b_fixed_150mb_fat16.lz -//512, -// vpc213_fixed_50mb_fat16.lz -//512, -// vpc303_fixed_30mb_fat16.lz -//512, -// vpc30_fixed_30mb_fat16.lz -//512, -// vpc4_fixed_130mb_fat16.lz -//512, -// vpc504_dynamic_250mb.lz -512, -// vpc504_fixed_10mb.lz -512, -// vpc50_dynamic_250mb.lz -512, -// vpc50_fixed_10mb.lz -512, -// vpc601_dynamic_250mb.vhd.lz -512, -// vpc601_fixed_10mb.vhd.lz -512, -// vpc60_differencing_parent_250mb.vhd.lz -512, -// vpc60_dynamic_250mb.vhd.lz -512, -// vpc60_fixed_10mb.vhd.lz -512, -// vpc702_differencing_parent_250mb.vhd.lz -512, -// vpc702_dynamic_250mb.vhd.lz -512, -// vpc702_fixed_10mb.vhd.lz -512 -}; - -public override MediaType[] _mediaTypes => new[] -{ -// vpc106b_fixed_150mb_fat16.lz -//MediaType.Unknown, -// vpc213_fixed_50mb_fat16.lz -//MediaType.Unknown, -// vpc303_fixed_30mb_fat16.lz -//MediaType.Unknown, -// vpc30_fixed_30mb_fat16.lz -//MediaType.Unknown, -// vpc4_fixed_130mb_fat16.lz -//MediaType.Unknown, -// vpc504_dynamic_250mb.lz -MediaType.Unknown, -// vpc504_fixed_10mb.lz -MediaType.Unknown, -// vpc50_dynamic_250mb.lz -MediaType.Unknown, -// vpc50_fixed_10mb.lz -MediaType.Unknown, -// vpc601_dynamic_250mb.vhd.lz -MediaType.Unknown, -// vpc601_fixed_10mb.vhd.lz -MediaType.Unknown, -// vpc60_differencing_parent_250mb.vhd.lz -MediaType.Unknown, -// vpc60_dynamic_250mb.vhd.lz -MediaType.Unknown, -// vpc60_fixed_10mb.vhd.lz -MediaType.Unknown, -// vpc702_differencing_parent_250mb.vhd.lz -MediaType.Unknown, -// vpc702_dynamic_250mb.vhd.lz -MediaType.Unknown, -// vpc702_fixed_10mb.vhd.lz -MediaType.Unknown -}; - -public override string[] _md5S => new[] -{ -// vpc106b_fixed_150mb_fat16.lz -//"UNKNOWN", -// vpc213_fixed_50mb_fat16.lz -//"UNKNOWN", -// vpc303_fixed_30mb_fat16.lz -//"UNKNOWN", -// vpc30_fixed_30mb_fat16.lz -//"UNKNOWN", -// vpc4_fixed_130mb_fat16.lz -//"UNKNOWN", -// vpc504_dynamic_250mb.lz -"cbcee980986d980f6add1f9622a5f917", -// vpc504_fixed_10mb.lz -"b790693b1c94bed209ee1bb9d0b6a075", -// vpc50_dynamic_250mb.lz -"c0955193d302f5eae2138a3669c89669", -// vpc50_fixed_10mb.lz -"1c843b778d48a67b78e4ca65ab602673", -// vpc601_dynamic_250mb.vhd.lz -"3e3675037a8ec4b78ebafdc2b25e5ceb", -// vpc601_fixed_10mb.vhd.lz -"4b4e98a5bba2469382132f9289ae1c57", -// vpc60_differencing_parent_250mb.vhd.lz -"3e3675037a8ec4b78ebafdc2b25e5ceb", -// vpc60_dynamic_250mb.vhd.lz -"723b2ed575e0e87f253f672f39b3a49f", -// vpc60_fixed_10mb.vhd.lz -"4b4e98a5bba2469382132f9289ae1c57", -// vpc702_differencing_parent_250mb.vhd.lz -"0f6b4f4bb22f02e88e442638f803e4f4", -// vpc702_dynamic_250mb.vhd.lz -"3e3675037a8ec4b78ebafdc2b25e5ceb", -// vpc702_fixed_10mb.vhd.lz -"4b4e98a5bba2469382132f9289ae1c57" -}; - - public override string _dataFolder => - Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "VirtualPC"); - public override IMediaImage _plugin =>new Vhd(); - } + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "vpc504_dynamic_250mb.lz", + MediaType = MediaType.Unknown, + Sectors = 511056, + SectorSize = 512, + MD5 = "cbcee980986d980f6add1f9622a5f917" + }, + new BlockImageTestExpected + { + TestFile = "vpc504_fixed_10mb.lz", + MediaType = MediaType.Unknown, + Sectors = 20468, + SectorSize = 512, + MD5 = "b790693b1c94bed209ee1bb9d0b6a075" + }, + new BlockImageTestExpected + { + TestFile = "vpc50_dynamic_250mb.lz", + MediaType = MediaType.Unknown, + Sectors = 511056, + SectorSize = 512, + MD5 = "c0955193d302f5eae2138a3669c89669" + }, + new BlockImageTestExpected + { + TestFile = "vpc50_fixed_10mb.lz", + MediaType = MediaType.Unknown, + Sectors = 20468, + SectorSize = 512, + MD5 = "1c843b778d48a67b78e4ca65ab602673" + }, + new BlockImageTestExpected + { + TestFile = "vpc601_dynamic_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 511056, + SectorSize = 512, + MD5 = "3e3675037a8ec4b78ebafdc2b25e5ceb" + }, + new BlockImageTestExpected + { + TestFile = "vpc601_fixed_10mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 20468, + SectorSize = 512, + MD5 = "4b4e98a5bba2469382132f9289ae1c57" + }, + new BlockImageTestExpected + { + TestFile = "vpc60_differencing_parent_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 511056, + SectorSize = 512, + MD5 = "3e3675037a8ec4b78ebafdc2b25e5ceb" + }, + new BlockImageTestExpected + { + TestFile = "vpc60_dynamic_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 511056, + SectorSize = 512, + MD5 = "723b2ed575e0e87f253f672f39b3a49f" + }, + new BlockImageTestExpected + { + TestFile = "vpc60_fixed_10mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 20468, + SectorSize = 512, + MD5 = "4b4e98a5bba2469382132f9289ae1c57" + }, + new BlockImageTestExpected + { + TestFile = "vpc702_differencing_parent_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 511056, + SectorSize = 512, + MD5 = "0f6b4f4bb22f02e88e442638f803e4f4" + }, + new BlockImageTestExpected + { + TestFile = "vpc702_dynamic_250mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 511056, + SectorSize = 512, + MD5 = "3e3675037a8ec4b78ebafdc2b25e5ceb" + }, + new BlockImageTestExpected + { + TestFile = "vpc702_fixed_10mb.vhd.lz", + MediaType = MediaType.Unknown, + Sectors = 20468, + SectorSize = 512, + MD5 = "4b4e98a5bba2469382132f9289ae1c57" + } + }; + } } \ No newline at end of file diff --git a/Aaru.Tests/Images/partclone.cs b/Aaru.Tests/Images/partclone.cs index 5e9f39a6f..f6b6a7ea3 100644 --- a/Aaru.Tests/Images/partclone.cs +++ b/Aaru.Tests/Images/partclone.cs @@ -37,84 +37,51 @@ namespace Aaru.Tests.Images [TestFixture] public class Partclone : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "ext2.partclone.lz", "fat16.partclone.lz", "fat32.partclone.lz", "hfsplus.partclone.lz", "ntfs.partclone.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // ext2.partclone.lz - 127882, - - // fat16.partclone.lz - 1012032, - - // fat32.partclone.lz - 1023057, - - // hfsplus.partclone.lz - 127882, - - // ntfs.partclone.lz - 1023056 - }; - - public override uint[] _sectorSize => new uint[] - { - // ext2.partclone.lz - 4096, - - // fat16.partclone.lz - 512, - - // fat32.partclone.lz - 512, - - // hfsplus.partclone.lz - 4096, - - // ntfs.partclone.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // ext2.partclone.lz - MediaType.GENERIC_HDD, - - // fat16.partclone.lz - MediaType.GENERIC_HDD, - - // fat32.partclone.lz - MediaType.GENERIC_HDD, - - // hfsplus.partclone.lz - MediaType.GENERIC_HDD, - - // ntfs.partclone.lz - MediaType.GENERIC_HDD - }; - - public override string[] _md5S => new[] - { - // ext2.partclone.lz - "ff239c91166b6b13fa826dd258b40666", - - // fat16.partclone.lz - "f98b1a51ca2e7bf047d84969a2392a3d", - - // fat32.partclone.lz - "1b0b5eb965a401f16fa8a07e303cd1c0", - - // hfsplus.partclone.lz - "880a6777d05c496901e930684abbecff", - - // ntfs.partclone.lz - "61cc3faa286364e7ad5bab18120c1151" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "partclone"); public override IMediaImage _plugin => new PartClone(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "ext2.partclone.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 127882, + SectorSize = 4096, + MD5 = "ff239c91166b6b13fa826dd258b40666" + }, + new BlockImageTestExpected + { + TestFile = "fat16.partclone.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1012032, + SectorSize = 512, + MD5 = "f98b1a51ca2e7bf047d84969a2392a3d" + }, + new BlockImageTestExpected + { + TestFile = "fat32.partclone.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1023057, + SectorSize = 512, + MD5 = "1b0b5eb965a401f16fa8a07e303cd1c0" + }, + new BlockImageTestExpected + { + TestFile = "hfsplus.partclone.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 127882, + SectorSize = 4096, + MD5 = "880a6777d05c496901e930684abbecff" + }, + new BlockImageTestExpected + { + TestFile = "ntfs.partclone.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 1023056, + SectorSize = 512, + MD5 = "61cc3faa286364e7ad5bab18120c1151" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/pce/DiskCopy42.cs b/Aaru.Tests/Images/pce/DiskCopy42.cs index 018daf021..c494a47bd 100644 --- a/Aaru.Tests/Images/pce/DiskCopy42.cs +++ b/Aaru.Tests/Images/pce/DiskCopy42.cs @@ -36,61 +36,36 @@ namespace Aaru.Tests.Images.pce [TestFixture] public class DiskCopy42 : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "mf1dd_gcr.dc42.lz", "mf2dd.dc42.lz", "mf2dd_gcr.dc42.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // mf1dd_gcr.dc42.lz - 800, - - // mf2dd.dc42.lz - 1440, - - // mf2dd_gcr.dc42.lz - 1600 - }; - - public override uint[] _sectorSize => new uint[] - { - // mf1dd_gcr.dc42.lz - 512, - - // mf2dd.dc42.lz - 512, - - // mf2dd_gcr.dc42.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // mf1dd_gcr.dc42.lz - MediaType.AppleSonySS, - - // mf2dd.dc42.lz - MediaType.DOS_35_DS_DD_9, - - // mf2dd_gcr.dc42.lz - MediaType.AppleSonyDS - }; - - public override string[] _md5S => new[] - { - // mf1dd_gcr.dc42.lz - "c5d92544c3e78b7f0a9b4baaa9a64eec", - - // mf2dd.dc42.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2dd_gcr.dc42.lz - "93e71b9ecdb39d3ec9245b4f451856d4" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "pce", "DiskCopy 4.2"); public override IMediaImage _plugin => new DiscImages.DiskCopy42(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "mf1dd_gcr.dc42.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "c5d92544c3e78b7f0a9b4baaa9a64eec" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.dc42.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_gcr.dc42.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "93e71b9ecdb39d3ec9245b4f451856d4" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/pce/ImageDisk.cs b/Aaru.Tests/Images/pce/ImageDisk.cs index 5093461aa..d2b4e585e 100644 --- a/Aaru.Tests/Images/pce/ImageDisk.cs +++ b/Aaru.Tests/Images/pce/ImageDisk.cs @@ -37,317 +37,204 @@ namespace Aaru.Tests.Images.pce [TestFixture] public class ImageDisk : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "md1dd_8.imd.lz", "md1dd.imd.lz", "md2dd_8.imd.lz", "md2dd.imd.lz", "md2hd.imd.lz", "md2hd_nec.imd.lz", - "mf1dd_10.imd.lz", "mf1dd_11.imd.lz", "mf1dd_gcr.imd.lz", "mf2dd_10.imd.lz", "mf2dd_11.imd.lz", - "mf2dd_fdformat_800.imd.lz", "mf2dd_fdformat_820.imd.lz", "mf2dd_freedos.imd.lz", "mf2dd_gcr.imd.lz", - "mf2dd.imd.lz", "mf2ed.imd.lz", "mf2hd_2m.imd.lz", "mf2hd_fdformat_168.imd.lz", "mf2hd_fdformat_172.imd.lz", - "mf2hd_freedos.imd.lz", "mf2hd.imd.lz", "rx01.imd.lz", "rx50.imd.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // md1dd_8.imd.lz - 320, - - // md1dd.imd.lz - 360, - - // md2dd_8.imd.lz - 640, - - // md2dd.imd.lz - 720, - - // md2hd.imd.lz - 2400, - - // md2hd_nec.imd.lz - 1232, - - // mf1dd_10.imd.lz - 800, - - // mf1dd_11.imd.lz - 880, - - // mf1dd_gcr.imd.lz - 800, - - // mf2dd_10.imd.lz - 1600, - - // mf2dd_11.imd.lz - 1760, - - // mf2dd_fdformat_800.imd.lz - 1600, - - // mf2dd_fdformat_820.imd.lz - 1640, - - // mf2dd_freedos.imd.lz - 1640, - - // mf2dd_gcr.imd.lz - 1600, - - // mf2dd.imd.lz - 1440, - - // mf2ed.imd.lz - 5760, - - // mf2hd_2m.imd.lz - 1812, - - // mf2hd_fdformat_168.imd.lz - 3372, - - // mf2hd_fdformat_172.imd.lz - 3448, - - // mf2hd_freedos.imd.lz - 3486, - - // mf2hd.imd.lz - 2882, - - // rx01.imd.lz - 2002, - - // rx50.imd.lz - 800 - }; - - public override uint[] _sectorSize => new uint[] - { - // md1dd_8.imd.lz - 512, - - // md1dd.imd.lz - 512, - - // md2dd_8.imd.lz - 512, - - // md2dd.imd.lz - 512, - - // md2hd.imd.lz - 512, - - // md2hd_nec.imd.lz - 1024, - - // mf1dd_10.imd.lz - 512, - - // mf1dd_11.imd.lz - 512, - - // mf1dd_gcr.imd.lz - 512, - - // mf2dd_10.imd.lz - 512, - - // mf2dd_11.imd.lz - 512, - - // mf2dd_fdformat_800.imd.lz - 512, - - // mf2dd_fdformat_820.imd.lz - 512, - - // mf2dd_freedos.imd.lz - 512, - - // mf2dd_gcr.imd.lz - 512, - - // mf2dd.imd.lz - 512, - - // mf2ed.imd.lz - 512, - - // mf2hd_2m.imd.lz - 1024, - - // mf2hd_fdformat_168.imd.lz - 512, - - // mf2hd_fdformat_172.imd.lz - 512, - - // mf2hd_freedos.imd.lz - 512, - - // mf2hd.imd.lz - 2048, - - // rx01.imd.lz - 128, - - // rx50.imd.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // md1dd_8.imd.lz - MediaType.DOS_525_SS_DD_8, - - // md1dd.imd.lz - MediaType.DOS_525_SS_DD_9, - - // md2dd_8.imd.lz - MediaType.DOS_525_DS_DD_8, - - // md2dd.imd.lz - MediaType.DOS_525_DS_DD_9, - - // md2hd.imd.lz - MediaType.NEC_35_HD_15, - - // md2hd_nec.imd.lz - MediaType.NEC_35_HD_8, - - // mf1dd_10.imd.lz - MediaType.RX50, - - // mf1dd_11.imd.lz - MediaType.ATARI_35_SS_DD_11, - - // mf1dd_gcr.imd.lz - MediaType.Unknown, - - // mf2dd_10.imd.lz - MediaType.CBM_35_DD, - - // mf2dd_11.imd.lz - MediaType.CBM_AMIGA_35_DD, - - // mf2dd_fdformat_800.imd.lz - MediaType.CBM_35_DD, - - // mf2dd_fdformat_820.imd.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_freedos.imd.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_gcr.imd.lz - MediaType.Unknown, - - // mf2dd.imd.lz - MediaType.DOS_35_DS_DD_9, - - // mf2ed.imd.lz - MediaType.ECMA_147, - - // mf2hd_2m.imd.lz - MediaType.Unknown, - - // mf2hd_fdformat_168.imd.lz - MediaType.Unknown, - - // mf2hd_fdformat_172.imd.lz - MediaType.Unknown, - - // mf2hd_freedos.imd.lz - MediaType.Unknown, - - // mf2hd.imd.lz - MediaType.Unknown, - - // rx01.imd.lz - MediaType.RX01, - - // rx50.imd.lz - MediaType.RX50 - }; - - public override string[] _md5S => new[] - { - // md1dd_8.imd.lz - "8308e749af855a3ded48d474eb7c305e", - - // md1dd.imd.lz - "b7b8a69b10ee4ec921aa8eea232fdd75", - - // md2dd_8.imd.lz - "f4a77a2d2a1868dc18e8b92032d02fd2", - - // md2dd.imd.lz - "099d95ac42d1a8010f914ac64ede7a70", - - // md2hd.imd.lz - "3df7cd10044af75d77e8936af0dbf9ff", - - // md2hd_nec.imd.lz - "fd54916f713d01b670c1a5df5e74a97f", - - // mf1dd_10.imd.lz - "d75d3e79d9c5051922d4c2226fa4a6ff", - - // mf1dd_11.imd.lz - "e16ed33a1a466826562c681d8bdf3e27", - - // mf1dd_gcr.imd.lz - "c5d92544c3e78b7f0a9b4baaa9a64eec", - - // mf2dd_10.imd.lz - "fd48b2c12097cbc646b4a93ef4f92259", - - // mf2dd_11.imd.lz - "512f7175e753e2e2ad620d448c42545d", - - // mf2dd_fdformat_800.imd.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_fdformat_820.imd.lz - "db9cfb6eea18820b7a7e0b5b45594471", - - // mf2dd_freedos.imd.lz - "456390a9c6ab05cb458a03c47296de08", - - // mf2dd_gcr.imd.lz - "93e71b9ecdb39d3ec9245b4f451856d4", - - // mf2dd.imd.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2ed.imd.lz - "854d0d49a522b64af698e319a24cd68e", - - // mf2hd_2m.imd.lz - "c741c78eecd673f8fc49e77459871940", - - // mf2hd_fdformat_168.imd.lz - "7f9164dc43bffc895db751ba1d9b55a9", - - // mf2hd_fdformat_172.imd.lz - "d6ff5df3707887a6ba4cfdc30b3deff4", - - // mf2hd_freedos.imd.lz - "dbd52e9e684f97d9e2292811242bb24e", - - // mf2hd.imd.lz - "f5fff7704fb677ebf23d27cd937c9403", - - // rx01.imd.lz - "5b4e36d92b180c3845387391cb5a1c64", - - // rx50.imd.lz - "ccd4431139755c58f340681f63510642" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "pce", "ImageDisk"); public override IMediaImage _plugin => new Imd(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "md1dd_8.imd.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "8308e749af855a3ded48d474eb7c305e" + }, + new BlockImageTestExpected + { + TestFile = "md1dd.imd.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "b7b8a69b10ee4ec921aa8eea232fdd75" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_8.imd.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "f4a77a2d2a1868dc18e8b92032d02fd2" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.imd.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "099d95ac42d1a8010f914ac64ede7a70" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.imd.lz", + MediaType = MediaType.NEC_35_HD_15, + Sectors = 2400, + SectorSize = 512, + MD5 = "3df7cd10044af75d77e8936af0dbf9ff" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_nec.imd.lz", + MediaType = MediaType.NEC_35_HD_8, + Sectors = 1232, + SectorSize = 1024, + MD5 = "fd54916f713d01b670c1a5df5e74a97f" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_10.imd.lz", + MediaType = MediaType.RX50, + Sectors = 800, + SectorSize = 512, + MD5 = "d75d3e79d9c5051922d4c2226fa4a6ff" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_11.imd.lz", + MediaType = MediaType.ATARI_35_SS_DD_11, + Sectors = 880, + SectorSize = 512, + MD5 = "e16ed33a1a466826562c681d8bdf3e27" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_gcr.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "c5d92544c3e78b7f0a9b4baaa9a64eec" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_10.imd.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "fd48b2c12097cbc646b4a93ef4f92259" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_11.imd.lz", + MediaType = MediaType.CBM_AMIGA_35_DD, + Sectors = 1760, + SectorSize = 512, + MD5 = "512f7175e753e2e2ad620d448c42545d" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.imd.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.imd.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "db9cfb6eea18820b7a7e0b5b45594471" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.imd.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "456390a9c6ab05cb458a03c47296de08" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_gcr.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 1600, + SectorSize = 512, + MD5 = "93e71b9ecdb39d3ec9245b4f451856d4" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.imd.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed.imd.lz", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "854d0d49a522b64af698e319a24cd68e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 1812, + SectorSize = 1024, + MD5 = "c741c78eecd673f8fc49e77459871940" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 3372, + SectorSize = 512, + MD5 = "7f9164dc43bffc895db751ba1d9b55a9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 3448, + SectorSize = 512, + MD5 = "d6ff5df3707887a6ba4cfdc30b3deff4" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "dbd52e9e684f97d9e2292811242bb24e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.imd.lz", + MediaType = MediaType.Unknown, + Sectors = 2882, + SectorSize = 2048, + MD5 = "f5fff7704fb677ebf23d27cd937c9403" + }, + new BlockImageTestExpected + { + TestFile = "rx01.imd.lz", + MediaType = MediaType.RX01, + Sectors = 2002, + SectorSize = 128, + MD5 = "5b4e36d92b180c3845387391cb5a1c64" + }, + new BlockImageTestExpected + { + TestFile = "rx50.imd.lz", + MediaType = MediaType.RX50, + Sectors = 800, + SectorSize = 512, + MD5 = "ccd4431139755c58f340681f63510642" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/pce/TeleDisk.cs b/Aaru.Tests/Images/pce/TeleDisk.cs index 58def18e6..5de9b5070 100644 --- a/Aaru.Tests/Images/pce/TeleDisk.cs +++ b/Aaru.Tests/Images/pce/TeleDisk.cs @@ -36,325 +36,212 @@ namespace Aaru.Tests.Images.pce [TestFixture] public class TeleDisk : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "md1dd_8.td0.lz", "md1dd.td0.lz", "md2dd_8.td0.lz", "md2dd.td0.lz", "md2hd_nec.td0.lz", "md2hd.td0.lz", - "mf1dd_10.td0.lz", "mf1dd_11.td0.lz", "mf2dd_10.td0.lz", "mf2dd_11.td0.lz", "mf2dd_fdformat_800.td0.lz", - "mf2dd_fdformat_820.td0.lz", "mf2dd_freedos.td0.lz", "mf2dd.td0.lz", "mf2ed.td0.lz", "mf2hd_2m_max.td0.lz", - "mf2hd_2m.td0.lz", "mf2hd_fdformat_168.td0.lz", "mf2hd_fdformat_172.td0.lz", "mf2hd_freedos.td0.lz", - "mf2hd.td0.lz", "mf2hd_xdf.td0.lz", "mf2hd_xdf_teledisk.td0.lz", "rx01.td0.lz", "rx50.td0.lz" - }; - public override ulong[] _sectors => new ulong[] - { - // md1dd_8.td0.lz - 320, - - // md1dd.td0.lz - 360, - - // md2dd_8.td0.lz - 640, - - // md2dd.td0.lz - 720, - - // md2hd_nec.td0.lz - 1232, - - // md2hd.td0.lz - 2400, - - // mf1dd_10.td0.lz - 800, - - // mf1dd_11.td0.lz - 880, - - // mf2dd_10.td0.lz - 1600, - - // mf2dd_11.td0.lz - 1760, - - // mf2dd_fdformat_800.td0.lz - 1600, - - // mf2dd_fdformat_820.td0.lz - 1640, - - // mf2dd_freedos.td0.lz - 1640, - - // mf2dd.td0.lz - 1440, - - // mf2ed.td0.lz - 5760, - - // mf2hd_2m_max.td0.lz - 1148, - - // mf2hd_2m.td0.lz - 1804, - - // mf2hd_fdformat_168.td0.lz - 332, - - // mf2hd_fdformat_172.td0.lz - 3444, - - // mf2hd_freedos.td0.lz - 3486, - - // mf2hd.td0.lz - 2880, - - // mf2hd_xdf.td0.lz - 640, - - // mf2hd_xdf_teledisk.td0.lz - 640, - - // rx01.td0.lz - 2002, - - // rx50.td0.lz - 800 - }; - public override uint[] _sectorSize => new uint[] - { - // md1dd_8.td0.lz - 512, - - // md1dd.td0.lz - 512, - - // md2dd_8.td0.lz - 512, - - // md2dd.td0.lz - 512, - - // md2hd_nec.td0.lz - 1024, - - // md2hd.td0.lz - 512, - - // mf1dd_10.td0.lz - 512, - - // mf1dd_11.td0.lz - 512, - - // mf2dd_10.td0.lz - 512, - - // mf2dd_11.td0.lz - 512, - - // mf2dd_fdformat_800.td0.lz - 512, - - // mf2dd_fdformat_820.td0.lz - 512, - - // mf2dd_freedos.td0.lz - 512, - - // mf2dd.td0.lz - 512, - - // mf2ed.td0.lz - 512, - - // mf2hd_2m_max.td0.lz - 512, - - // mf2hd_2m.td0.lz - 512, - - // mf2hd_fdformat_168.td0.lz - 512, - - // mf2hd_fdformat_172.td0.lz - 512, - - // mf2hd_freedos.td0.lz - 512, - - // mf2hd.td0.lz - 512, - - // mf2hd_xdf.td0.lz - 512, - - // mf2hd_xdf_teledisk.td0.lz - 512, - - // rx01.td0.lz - 0, - - // rx50.td0.lz - 512 - }; - public override MediaType[] _mediaTypes => new[] - { - // md1dd_8.td0.lz - MediaType.DOS_525_SS_DD_8, - - // md1dd.td0.lz - MediaType.DOS_525_SS_DD_9, - - // md2dd_8.td0.lz - MediaType.DOS_525_DS_DD_8, - - // md2dd.td0.lz - MediaType.DOS_525_DS_DD_9, - - // md2hd_nec.td0.lz - MediaType.NEC_35_HD_8, - - // md2hd.td0.lz - MediaType.DOS_525_HD, - - // mf1dd_10.td0.lz - MediaType.Unknown, - - // mf1dd_11.td0.lz - MediaType.Unknown, - - // mf2dd_10.td0.lz - MediaType.CBM_35_DD, - - // mf2dd_11.td0.lz - MediaType.CBM_AMIGA_35_DD, - - // mf2dd_fdformat_800.td0.lz - MediaType.CBM_35_DD, - - // mf2dd_fdformat_820.td0.lz - MediaType.Unknown, - - // mf2dd_freedos.td0.lz - MediaType.Unknown, - - // mf2dd.td0.lz - MediaType.DOS_35_DS_DD_9, - - // mf2ed.td0.lz - MediaType.ECMA_147, - - // mf2hd_2m_max.td0.lz - MediaType.Unknown, - - // mf2hd_2m.td0.lz - MediaType.Unknown, - - // mf2hd_fdformat_168.td0.lz - MediaType.Unknown, - - // mf2hd_fdformat_172.td0.lz - MediaType.Unknown, - - // mf2hd_freedos.td0.lz - MediaType.Unknown, - - // mf2hd.td0.lz - MediaType.Unknown, - - // mf2hd_xdf.td0.lz - MediaType.Unknown, - - // mf2hd_xdf_teledisk.td0.lz - MediaType.XDF_35, - - // rx01.td0.lz - MediaType.Unknown, - - // rx50.td0.lz - MediaType.Unknown - }; - public override string[] _md5S => new[] - { - // md1dd_8.td0.lz - "8308e749af855a3ded48d474eb7c305e", - - // md1dd.td0.lz - "b7b8a69b10ee4ec921aa8eea232fdd75", - - // md2dd_8.td0.lz - "f4a77a2d2a1868dc18e8b92032d02fd2", - - // md2dd.td0.lz - "099d95ac42d1a8010f914ac64ede7a70", - - // md2hd_nec.td0.lz - "fd54916f713d01b670c1a5df5e74a97f", - - // md2hd.td0.lz - "3df7cd10044af75d77e8936af0dbf9ff", - - // mf1dd_10.td0.lz - "d75d3e79d9c5051922d4c2226fa4a6ff", - - // mf1dd_11.td0.lz - "e16ed33a1a466826562c681d8bdf3e27", - - // mf2dd_10.td0.lz - "fd48b2c12097cbc646b4a93ef4f92259", - - // mf2dd_11.td0.lz - "512f7175e753e2e2ad620d448c42545d", - - // mf2dd_fdformat_800.td0.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_fdformat_820.td0.lz - "db9cfb6eea18820b7a7e0b5b45594471", - - // mf2dd_freedos.td0.lz - "456390a9c6ab05cb458a03c47296de08", - - // mf2dd.td0.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2ed.td0.lz - "854d0d49a522b64af698e319a24cd68e", - - // mf2hd_2m_max.td0.lz - "4b88a3e43b57778422e8b1e851a9c902", - - // mf2hd_2m.td0.lz - "d032d928c43b66419b7404b016ec07ff", - - // mf2hd_fdformat_168.td0.lz - "62b900808c3e9f91f8361fd1716155a1", - - // mf2hd_fdformat_172.td0.lz - "9dea1e119a73a21a38d134f36b2e5564", - - // mf2hd_freedos.td0.lz - "dbd52e9e684f97d9e2292811242bb24e", - - // mf2hd.td0.lz - "b4a602f67903c46eef62addb0780aa56", - - // mf2hd_xdf.td0.lz - "57965378275db490527ff8c8fc517adf", - - // mf2hd_xdf_teledisk.td0.lz - "728f9361203dc39961b1413aa050f70d", - - // rx01.td0.lz - "UNKNOWN", - - // rx50.td0.lz - "ccd4431139755c58f340681f63510642" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "pce", "TeleDisk"); public override IMediaImage _plugin => new DiscImages.TeleDisk(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "md1dd_8.td0.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "8308e749af855a3ded48d474eb7c305e" + }, + new BlockImageTestExpected + { + TestFile = "md1dd.td0.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "b7b8a69b10ee4ec921aa8eea232fdd75" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_8.td0.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "f4a77a2d2a1868dc18e8b92032d02fd2" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.td0.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "099d95ac42d1a8010f914ac64ede7a70" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_nec.td0.lz", + MediaType = MediaType.NEC_35_HD_8, + Sectors = 1232, + SectorSize = 1024, + MD5 = "fd54916f713d01b670c1a5df5e74a97f" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.td0.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "3df7cd10044af75d77e8936af0dbf9ff" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_10.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "d75d3e79d9c5051922d4c2226fa4a6ff" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_11.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 880, + SectorSize = 512, + MD5 = "e16ed33a1a466826562c681d8bdf3e27" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_10.td0.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "fd48b2c12097cbc646b4a93ef4f92259" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_11.td0.lz", + MediaType = MediaType.CBM_AMIGA_35_DD, + Sectors = 1760, + SectorSize = 512, + MD5 = "512f7175e753e2e2ad620d448c42545d" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.td0.lz", + MediaType = MediaType.CBM_35_DD, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1640, + SectorSize = 512, + MD5 = "db9cfb6eea18820b7a7e0b5b45594471" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1640, + SectorSize = 512, + MD5 = "456390a9c6ab05cb458a03c47296de08" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.td0.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed.td0.lz", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "854d0d49a522b64af698e319a24cd68e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1148, + SectorSize = 512, + MD5 = "4b88a3e43b57778422e8b1e851a9c902" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 1804, + SectorSize = 512, + MD5 = "d032d928c43b66419b7404b016ec07ff" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 332, + SectorSize = 512, + MD5 = "62b900808c3e9f91f8361fd1716155a1" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3444, + SectorSize = 512, + MD5 = "9dea1e119a73a21a38d134f36b2e5564" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 3486, + SectorSize = 512, + MD5 = "dbd52e9e684f97d9e2292811242bb24e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2880, + SectorSize = 512, + MD5 = "b4a602f67903c46eef62addb0780aa56" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 640, + SectorSize = 512, + MD5 = "57965378275db490527ff8c8fc517adf" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_teledisk.td0.lz", + MediaType = MediaType.XDF_35, + Sectors = 640, + SectorSize = 512, + MD5 = "728f9361203dc39961b1413aa050f70d" + }, + new BlockImageTestExpected + { + TestFile = "rx01.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 2002, + SectorSize = 0, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "rx50.td0.lz", + MediaType = MediaType.Unknown, + Sectors = 800, + SectorSize = 512, + MD5 = "ccd4431139755c58f340681f63510642" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/pce/XDF.cs b/Aaru.Tests/Images/pce/XDF.cs index 9d4ff58db..33511034c 100644 --- a/Aaru.Tests/Images/pce/XDF.cs +++ b/Aaru.Tests/Images/pce/XDF.cs @@ -37,48 +37,27 @@ namespace Aaru.Tests.Images.pce [TestFixture] public class XDF : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "mf2hd_xdf_teledisk.xdf.lz", "mf2hd_xdf.xdf.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // mf2hd_xdf_teledisk.xdf.lz - 3680, - - // mf2hd_xdf.xdf.lz - 3680 - }; - - public override uint[] _sectorSize => new uint[] - { - // mf2hd_xdf_teledisk.xdf.lz - 512, - - // mf2hd_xdf.xdf.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // mf2hd_xdf_teledisk.xdf.lz - MediaType.XDF_35, - - // mf2hd_xdf.xdf.lz - MediaType.XDF_35 - }; - - public override string[] _md5S => new[] - { - // mf2hd_xdf_teledisk.xdf.lz - "90e8f5022bff8fa90c5148ec35f5d64c", - - // mf2hd_xdf.xdf.lz - "825ca9cdcb2f35ff8bbbda9cb0a27c4d" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "pce", "XDF"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_teledisk.xdf.lz", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "90e8f5022bff8fa90c5148ec35f5d64c" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.xdf.lz", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "825ca9cdcb2f35ff8bbbda9cb0a27c4d" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Images/pce/raw.cs b/Aaru.Tests/Images/pce/raw.cs index ec4b88539..349c769bd 100644 --- a/Aaru.Tests/Images/pce/raw.cs +++ b/Aaru.Tests/Images/pce/raw.cs @@ -37,353 +37,227 @@ namespace Aaru.Tests.Images.pce [TestFixture] public class Raw : BlockMediaImageTest { - public override string[] _testFiles => new[] - { - "md1dd_8.img.lz", "md1dd.img.lz", "md2dd_8.img.lz", "md2dd.img.lz", "md2hd.img.lz", "md2hd_nec.img.lz", - "mf1dd_10.img.lz", "mf1dd_11.img.lz", "mf1dd_gcr.img.lz", "mf2dd_10.img.lz", "mf2dd_11.img.lz", - "mf2dd_fdformat_800.img.lz", "mf2dd_fdformat_820.img.lz", "mf2dd_freedos.img.lz", "mf2dd_gcr.img.lz", - "mf2dd.img.lz", "mf2ed.img.lz", "mf2hd_2m.img.lz", "mf2hd_2m_max.img.lz", "mf2hd_fdformat_168.img.lz", - "mf2hd_fdformat_172.img.lz", "mf2hd_freedos.img.lz", "mf2hd.img.lz", "mf2hd_xdf.img.lz", - "mf2hd_xdf_teledisk.img.lz", "rx01.img.lz", "rx50.img.lz" - }; - - public override ulong[] _sectors => new ulong[] - { - // md1dd_8.img.lz - 320, - - // md1dd.img.lz - 360, - - // md2dd_8.img.lz - 640, - - // md2dd.img.lz - 720, - - // md2hd.img.lz - 2400, - - // md2hd_nec.img.lz - 1232, - - // mf1dd_10.img.lz - 800, - - // mf1dd_11.img.lz - 880, - - // mf1dd_gcr.img.lz - 800, - - // mf2dd_10.img.lz - 1600, - - // mf2dd_11.img.lz - 1760, - - // mf2dd_fdformat_800.img.lz - 1600, - - // mf2dd_fdformat_820.img.lz - 1640, - - // mf2dd_freedos.img.lz - 1640, - - // mf2dd_gcr.img.lz - 1600, - - // mf2dd.img.lz - 1440, - - // mf2ed.img.lz - 5760, - - // mf2hd_2m.img.lz - 3605, - - // mf2hd_2m_max.img.lz - 3768, - - // mf2hd_fdformat_168.img.lz - 3372, - - // mf2hd_fdformat_172.img.lz - 3448, - - // mf2hd_freedos.img.lz - 3486, - - // mf2hd.img.lz - 2888, - - // mf2hd_xdf.img.lz - 670, - - // mf2hd_xdf_teledisk.img.lz - 3680, - - // rx01.img.lz - 2002, - - // rx50.img.lz - 800 - }; - - public override uint[] _sectorSize => new uint[] - { - // md1dd_8.img.lz - 512, - - // md1dd.img.lz - 512, - - // md2dd_8.img.lz - 512, - - // md2dd.img.lz - 512, - - // md2hd.img.lz - 512, - - // md2hd_nec.img.lz - 1024, - - // mf1dd_10.img.lz - 512, - - // mf1dd_11.img.lz - 512, - - // mf1dd_gcr.img.lz - 512, - - // mf2dd_10.img.lz - 512, - - // mf2dd_11.img.lz - 512, - - // mf2dd_fdformat_800.img.lz - 512, - - // mf2dd_fdformat_820.img.lz - 512, - - // mf2dd_freedos.img.lz - 512, - - // mf2dd_gcr.img.lz - 512, - - // mf2dd.img.lz - 512, - - // mf2ed.img.lz - 512, - - // mf2hd_2m.img.lz - 512, - - // mf2hd_2m_max.img.lz - 512, - - // mf2hd_fdformat_168.img.lz - 512, - - // mf2hd_fdformat_172.img.lz - 512, - - // mf2hd_freedos.img.lz - 512, - - // mf2hd.img.lz - 512, - - // mf2hd_xdf.img.lz - 8192, - - // mf2hd_xdf_teledisk.img.lz - 512, - - // rx01.img.lz - 128, - - // rx50.img.lz - 512 - }; - - public override MediaType[] _mediaTypes => new[] - { - // md1dd_8.img.lz - MediaType.DOS_525_SS_DD_8, - - // md1dd.img.lz - MediaType.DOS_525_SS_DD_9, - - // md2dd_8.img.lz - MediaType.DOS_525_DS_DD_8, - - // md2dd.img.lz - MediaType.DOS_525_DS_DD_9, - - // md2hd.img.lz - MediaType.DOS_525_HD, - - // md2hd_nec.img.lz - MediaType.SHARP_525, - - // mf1dd_10.img.lz - MediaType.AppleSonySS, - - // mf1dd_11.img.lz - MediaType.ATARI_35_SS_DD_11, - - // mf1dd_gcr.img.lz - MediaType.AppleSonySS, - - // mf2dd_10.img.lz - MediaType.AppleSonyDS, - - // mf2dd_11.img.lz - MediaType.CBM_AMIGA_35_DD, - - // mf2dd_fdformat_800.img.lz - MediaType.AppleSonyDS, - - // mf2dd_fdformat_820.img.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_freedos.img.lz - MediaType.FDFORMAT_35_DD, - - // mf2dd_gcr.img.lz - MediaType.AppleSonyDS, - - // mf2dd.img.lz - MediaType.DOS_35_DS_DD_9, - - // mf2ed.img.lz - MediaType.ECMA_147, - - // mf2hd_2m.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_2m_max.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_fdformat_168.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_fdformat_172.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_freedos.img.lz - MediaType.GENERIC_HDD, - - // mf2hd.img.lz - MediaType.GENERIC_HDD, - - // mf2hd_xdf.img.lz - MediaType.XDF_35, - - // mf2hd_xdf_teledisk.img.lz - MediaType.XDF_35, - - // rx01.img.lz - MediaType.ECMA_54, - - // rx50.img.lz - MediaType.AppleSonySS - }; - - public override string[] _md5S => new[] - { - // md1dd_8.img.lz - "8308e749af855a3ded48d474eb7c305e", - - // md1dd.img.lz - "b7b8a69b10ee4ec921aa8eea232fdd75", - - // md2dd_8.img.lz - "f4a77a2d2a1868dc18e8b92032d02fd2", - - // md2dd.img.lz - "099d95ac42d1a8010f914ac64ede7a70", - - // md2hd.img.lz - "3df7cd10044af75d77e8936af0dbf9ff", - - // md2hd_nec.img.lz - "fd54916f713d01b670c1a5df5e74a97f", - - // mf1dd_10.img.lz - "d75d3e79d9c5051922d4c2226fa4a6ff", - - // mf1dd_11.img.lz - "e16ed33a1a466826562c681d8bdf3e27", - - // mf1dd_gcr.img.lz - "c5d92544c3e78b7f0a9b4baaa9a64eec", - - // mf2dd_10.img.lz - "fd48b2c12097cbc646b4a93ef4f92259", - - // mf2dd_11.img.lz - "512f7175e753e2e2ad620d448c42545d", - - // mf2dd_fdformat_800.img.lz - "c533488a21098a62c85f1649abda2803", - - // mf2dd_fdformat_820.img.lz - "db9cfb6eea18820b7a7e0b5b45594471", - - // mf2dd_freedos.img.lz - "456390a9c6ab05cb458a03c47296de08", - - // mf2dd_gcr.img.lz - "93e71b9ecdb39d3ec9245b4f451856d4", - - // mf2dd.img.lz - "de3f85896f771b7e5bc4c9e3926d64e4", - - // mf2ed.img.lz - "854d0d49a522b64af698e319a24cd68e", - - // mf2hd_2m.img.lz - "c741c78eecd673f8fc49e77459871940", - - // mf2hd_2m_max.img.lz - "0393fbfee10e47c71e0fb7b39237be49", - - // mf2hd_fdformat_168.img.lz - "7f9164dc43bffc895db751ba1d9b55a9", - - // mf2hd_fdformat_172.img.lz - "d6ff5df3707887a6ba4cfdc30b3deff4", - - // mf2hd_freedos.img.lz - "dbd52e9e684f97d9e2292811242bb24e", - - // mf2hd.img.lz - "f5fff7704fb677ebf23d27cd937c9403", - - // mf2hd_xdf.img.lz - "UNKNOWN", - - // mf2hd_xdf_teledisk.img.lz - "UNKNOWN", - - // rx01.img.lz - "5b4e36d92b180c3845387391cb5a1c64", - - // rx50.img.lz - "ccd4431139755c58f340681f63510642" - }; - public override string _dataFolder => Path.Combine(Consts.TEST_FILES_ROOT, "Media image formats", "pce", "raw"); public override IMediaImage _plugin => new ZZZRawImage(); + + public override BlockImageTestExpected[] Tests => new[] + { + new BlockImageTestExpected + { + TestFile = "md1dd_8.img.lz", + MediaType = MediaType.DOS_525_SS_DD_8, + Sectors = 320, + SectorSize = 512, + MD5 = "8308e749af855a3ded48d474eb7c305e" + }, + new BlockImageTestExpected + { + TestFile = "md1dd.img.lz", + MediaType = MediaType.DOS_525_SS_DD_9, + Sectors = 360, + SectorSize = 512, + MD5 = "b7b8a69b10ee4ec921aa8eea232fdd75" + }, + new BlockImageTestExpected + { + TestFile = "md2dd_8.img.lz", + MediaType = MediaType.DOS_525_DS_DD_8, + Sectors = 640, + SectorSize = 512, + MD5 = "f4a77a2d2a1868dc18e8b92032d02fd2" + }, + new BlockImageTestExpected + { + TestFile = "md2dd.img.lz", + MediaType = MediaType.DOS_525_DS_DD_9, + Sectors = 720, + SectorSize = 512, + MD5 = "099d95ac42d1a8010f914ac64ede7a70" + }, + new BlockImageTestExpected + { + TestFile = "md2hd.img.lz", + MediaType = MediaType.DOS_525_HD, + Sectors = 2400, + SectorSize = 512, + MD5 = "3df7cd10044af75d77e8936af0dbf9ff" + }, + new BlockImageTestExpected + { + TestFile = "md2hd_nec.img.lz", + MediaType = MediaType.SHARP_525, + Sectors = 1232, + SectorSize = 1024, + MD5 = "fd54916f713d01b670c1a5df5e74a97f" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_10.img.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "d75d3e79d9c5051922d4c2226fa4a6ff" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_11.img.lz", + MediaType = MediaType.ATARI_35_SS_DD_11, + Sectors = 880, + SectorSize = 512, + MD5 = "e16ed33a1a466826562c681d8bdf3e27" + }, + new BlockImageTestExpected + { + TestFile = "mf1dd_gcr.img.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "c5d92544c3e78b7f0a9b4baaa9a64eec" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_10.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "fd48b2c12097cbc646b4a93ef4f92259" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_11.img.lz", + MediaType = MediaType.CBM_AMIGA_35_DD, + Sectors = 1760, + SectorSize = 512, + MD5 = "512f7175e753e2e2ad620d448c42545d" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_800.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "c533488a21098a62c85f1649abda2803" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_fdformat_820.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "db9cfb6eea18820b7a7e0b5b45594471" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_freedos.img.lz", + MediaType = MediaType.FDFORMAT_35_DD, + Sectors = 1640, + SectorSize = 512, + MD5 = "456390a9c6ab05cb458a03c47296de08" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd_gcr.img.lz", + MediaType = MediaType.AppleSonyDS, + Sectors = 1600, + SectorSize = 512, + MD5 = "93e71b9ecdb39d3ec9245b4f451856d4" + }, + new BlockImageTestExpected + { + TestFile = "mf2dd.img.lz", + MediaType = MediaType.DOS_35_DS_DD_9, + Sectors = 1440, + SectorSize = 512, + MD5 = "de3f85896f771b7e5bc4c9e3926d64e4" + }, + new BlockImageTestExpected + { + TestFile = "mf2ed.img.lz", + MediaType = MediaType.ECMA_147, + Sectors = 5760, + SectorSize = 512, + MD5 = "854d0d49a522b64af698e319a24cd68e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3605, + SectorSize = 512, + MD5 = "c741c78eecd673f8fc49e77459871940" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_2m_max.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3768, + SectorSize = 512, + MD5 = "0393fbfee10e47c71e0fb7b39237be49" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_168.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3372, + SectorSize = 512, + MD5 = "7f9164dc43bffc895db751ba1d9b55a9" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_fdformat_172.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3448, + SectorSize = 512, + MD5 = "d6ff5df3707887a6ba4cfdc30b3deff4" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_freedos.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 3486, + SectorSize = 512, + MD5 = "dbd52e9e684f97d9e2292811242bb24e" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd.img.lz", + MediaType = MediaType.GENERIC_HDD, + Sectors = 2888, + SectorSize = 512, + MD5 = "f5fff7704fb677ebf23d27cd937c9403" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf.img.lz", + MediaType = MediaType.XDF_35, + Sectors = 670, + SectorSize = 8192, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "mf2hd_xdf_teledisk.img.lz", + MediaType = MediaType.XDF_35, + Sectors = 3680, + SectorSize = 512, + MD5 = "UNKNOWN" + }, + new BlockImageTestExpected + { + TestFile = "rx01.img.lz", + MediaType = MediaType.ECMA_54, + Sectors = 2002, + SectorSize = 128, + MD5 = "5b4e36d92b180c3845387391cb5a1c64" + }, + new BlockImageTestExpected + { + TestFile = "rx50.img.lz", + MediaType = MediaType.AppleSonySS, + Sectors = 800, + SectorSize = 512, + MD5 = "ccd4431139755c58f340681f63510642" + } + }; } } \ No newline at end of file diff --git a/Aaru.Tests/Structs.cs b/Aaru.Tests/Structs.cs index c499d6eb0..682bbff7d 100644 --- a/Aaru.Tests/Structs.cs +++ b/Aaru.Tests/Structs.cs @@ -1,4 +1,5 @@ using Aaru.CommonTypes; +using Aaru.CommonTypes.Structs; namespace Aaru.Tests { @@ -37,4 +38,31 @@ namespace Aaru.Tests /// Volume serial number or set identifier public string VolumeSerial; } + + public class BlockImageTestExpected : MediaInfoTest + { + public string MD5; + } + + public class TrackInfoTestExpected + { + public ulong End; + public byte? Flags; + public ulong? Pregap; + public int Session; + public ulong Start; + } + + public class OpticalImageTestExpected : BlockImageTestExpected + { + public string LongMD5; + public string SubchannelMD5; + public TrackInfoTestExpected[] Tracks; + } + + public class TapeImageTestExpected : BlockImageTestExpected + { + public TapeFile[] Files; + public TapePartition[] Partitions; + } } \ No newline at end of file