From b074f7dc9b584356eebf88447a215c08fb75ffa4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Mon, 26 Feb 2024 16:29:05 +0100 Subject: [PATCH] add test without medium MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Klaus Kämpf --- cpp/test/scsicd_test.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/cpp/test/scsicd_test.cpp b/cpp/test/scsicd_test.cpp index fd92a46f..cbef92bd 100644 --- a/cpp/test/scsicd_test.cpp +++ b/cpp/test/scsicd_test.cpp @@ -137,9 +137,11 @@ TEST(ScsiCdTest, ReadToc) TEST(ScsiCdTest, ModeSelect) { MockSCSICD cd(0); + MockSCSICD cd1(0); vector cmd(6); vector buf(255); + // dummy file for DiskCache resize after sector size change path filename = CreateTempFile(2* 2048); cd.SetFilename(string(filename)); cd.Open(); @@ -163,7 +165,7 @@ TEST(ScsiCdTest, ModeSelect) // 2048 bytes per sector - ModeSelect6 buf[10] = 0x08; - EXPECT_NO_THROW(cd.ModeSelect(scsi_command::eCmdModeSelect6, cmd, buf, 255)) << "MODE SELECT(6) with sector size 2045 is supported"; + EXPECT_NO_THROW(cd.ModeSelect(scsi_command::eCmdModeSelect6, cmd, buf, 255)) << "MODE SELECT(6) with sector size 2048 is supported"; // 512 bytes per sector - ModeSelect10 buf[10] = 0x02; @@ -176,4 +178,11 @@ TEST(ScsiCdTest, ModeSelect) // sector size not multiple of 512 - ModeSelect6 buf[10] = 0x03; EXPECT_THROW(cd.ModeSelect(scsi_command::eCmdModeSelect6, cmd, buf, 255), io_exception) << "MODE SELECT(6) with sector size 768 is unsupported"; + + // cd1 has no dummy file attached, simulating an empty CD drive + cd1.SetSectorSizeInBytes(2048); + + // 512 bytes per sector - ModeSelect6 + buf[10] = 0x02; + EXPECT_NO_THROW(cd1.ModeSelect(scsi_command::eCmdModeSelect6, cmd, buf, 255)) << "MODE SELECT(6), emtpy drive, with sector size 512 is supported"; }