diff --git a/SabreTools.DatFiles/Formats/OfflineList.cs b/SabreTools.DatFiles/Formats/OfflineList.cs index 0d7bd247..978acb73 100644 --- a/SabreTools.DatFiles/Formats/OfflineList.cs +++ b/SabreTools.DatFiles/Formats/OfflineList.cs @@ -227,7 +227,7 @@ namespace SabreTools.DatFiles.Formats // Add all infos to the info list switch (reader.Name.ToLowerInvariant()) { - case "info": + default: var info = new OfflineListInfo { Name = reader.Name.ToLowerInvariant(), @@ -240,10 +240,6 @@ namespace SabreTools.DatFiles.Formats reader.Read(); break; - - default: - reader.Read(); - break; } } } diff --git a/SabreTools.Test/DatTools/ParserTests.cs b/SabreTools.Test/DatTools/ParserTests.cs index d6fcae85..5b9ab5e8 100644 --- a/SabreTools.Test/DatTools/ParserTests.cs +++ b/SabreTools.Test/DatTools/ParserTests.cs @@ -15,9 +15,9 @@ namespace SabreTools.Test.DatTools [InlineData(null, (DatFormat)0x00, 0)] [InlineData("test-logiqx.xml", DatFormat.Logiqx, 6)] //[InlineData(null, DatFormat.LogiqxDeprecated, 0)] // Not parsed separately - //[InlineData(null, DatFormat.SoftwareList, 0)] + [InlineData("test-softwarelist.xml", DatFormat.SoftwareList, 5)] [InlineData("test-listxml.xml", DatFormat.Listxml, 20)] - //[InlineData(null, DatFormat.OfflineList, 0)] + [InlineData("test-offlinelist.xml", DatFormat.OfflineList, 1)] //[InlineData(null, DatFormat.SabreXML, 0)] [InlineData("test-openmsx.xml", DatFormat.OpenMSX, 3)] [InlineData("test-cmp.dat", DatFormat.ClrMamePro, 6)] diff --git a/SabreTools.Test/TestData/test-offlinelist.xml b/SabreTools.Test/TestData/test-offlinelist.xml new file mode 100644 index 00000000..c84816d1 --- /dev/null +++ b/SabreTools.Test/TestData/test-offlinelist.xml @@ -0,0 +1,68 @@ + + + + Internal DAT Name + 1 + Arcade + 224 + 224 + + + <location visible="true" inNamingOption="true" default="true"/> + <publisher visible="true" inNamingOption="true" default="true"/> + <sourceRom visible="true" inNamingOption="true" default="true"/> + <romSize visible="true" inNamingOption="true" default="true"/> + <releaseNumber visible="true" inNamingOption="true" default="false"/> + <imageNumber visible="true" inNamingOption="false" default="false"/> + <languageNumber visible="true" inNamingOption="true" default="false"/> + <comment visible="true" inNamingOption="true" default="false"/> + <romCRC visible="true" inNamingOption="true" default="false"/> + <im1CRC visible="false" inNamingOption="false" default="false"/> + <im2CRC visible="false" inNamingOption="false" default="false"/> + <languages visible="true" inNamingOption="true" default="true"/> + </infos> + <canOpen> + <extension>.bin</extension> + <extension>.rom</extension> + </canOpen> + <newDat> + <datVersionURL>127.0.0.1</datVersionURL> + <datURL fileName="DatName.zip">127.0.0.1/DatName.zip</datURL> + <imURL>127.0.0.1/img/</imURL> + </newDat> + <search> + <to value="location" default="true" auto="true"/> + <to value="romSize" default="true" auto="false"> + <find operation="<" value="524288">< 4Mbits</find> + <find operation="=" value="524288">4Mbits</find> + <find operation="=" value="1048576">8Mbits</find> + <find operation="=" value="2097152">16Mbits</find> + <find operation="=" value="4194304">32Mbits</find> + <find operation="=" value="8388608">64Mbits</find> + <find operation="=" value="16777216">128Mbits</find> + </to> + <to value="languages" default="true" auto="true"/> + </search> + <romTitle>%u - %n</romTitle> + </configuration> + <games> + <game> + <imageNumber>1</imageNumber> + <releaseNumber>1</releaseNumber> + <title>Game! (Version 1) + Default + 1024 + Publisher + 1 + Source + 256 + + DEBEADEF + + deadbeef + beefdead + Not a real release, sorry + 0 + + + diff --git a/SabreTools.Test/TestData/test-softwarelist.xml b/SabreTools.Test/TestData/test-softwarelist.xml new file mode 100644 index 00000000..fbe19588 --- /dev/null +++ b/SabreTools.Test/TestData/test-softwarelist.xml @@ -0,0 +1,25 @@ + + + + + + + Game! (Version 1) + 1980 + Publisher + + + + + + + + + + + + + + + + \ No newline at end of file