#!/usr/bin/env python # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest nes = testutils.loadModule("nes") class TestNESParser(unittest.TestCase): def setUp(self): self.nesParser = nes.NESParser() def test_gameboy(self): empty = self.nesParser.parse("data/empty") self.assertEqual(len(empty), 0) props = self.nesParser.parse( "data/Dancing Blocks (1990)(Sachen)(AS)[p][!][SA-013][NES cart].unf" ) self.assertEqual(len(props), 6) self.assertEqual(props["battery"], "") self.assertEqual(props["trainer"], "") self.assertEqual(props["four_screen_vram"], "") self.assertEqual(props["header"], "UNIF") self.assertEqual(props["video_output"], "") self.assertEqual(props["title"], "Dancing Blocks (72 pin cart)")
#!/usr/bin/env python # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest nes = testutils.loadModule("nes") class TestNESParser(unittest.TestCase): def setUp(self): self.nesParser = nes.NESParser() def test_gameboy(self): empty = self.nesParser.parse("data/empty") self.assertEqual(len(empty), 0) props = self.nesParser.parse("data/Dancing Blocks (1990)(Sachen)(AS)[p][!][SA-013][NES cart].unf") self.assertEqual(len(props), 6) self.assertEqual(props["battery"], "") self.assertEqual(props["trainer"], "") self.assertEqual(props["four_screen_vram"], "") self.assertEqual(props["header"], "UNIF") self.assertEqual(props["video_output"], "") self.assertEqual(props["title"], "Dancing Blocks (72 pin cart)") if __name__ == '__main__': unittest.main()
#!/usr/bin/env python3 # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest dreamcast = testutils.loadModule("dreamcast") class TestDreamcastParser(unittest.TestCase): def setUp(self): self.dreamcastParser = dreamcast.DreamcastParser() def test_invalid(self): empty = self.dreamcastParser.parse("data/empty") self.assertEqual(len(empty), 0) def test_dreamcast_gdi(self): props = self.dreamcastParser.parse("data/Dreamkey.gdi") self.assertEqual(len(props), 17) self.assertEqual(props["platform"], "Dreamcast") self.assertEqual(props["hardware_id"], "SEGA SEGAKATANA") self.assertEqual(props["hardware_vendor_id"], "SEGA ENTERPRISES") self.assertEqual(props["media_id"], "D010") self.assertEqual(props["media_info_code"], "GD-ROM1/1") self.assertEqual(props["media_info"], "1/1") self.assertEqual(props["region_code"], "E") self.assertEqual(props["region"], "Europe")
#!/usr/bin/env python # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest nintendo64 = testutils.loadModule("nintendo64") class TestNintendo64Parser(unittest.TestCase): def setUp(self): self.n64Parser = nintendo64.Nintendo64Parser() def test_nintendo64(self): empty = self.n64Parser.parse("data/empty") self.assertEqual(len(empty), 0) props = self.n64Parser.parse("data/Super Smash Bros.z64") self.assertEqual(len(props), 9) self.assertEqual(props["title"], "SMASH BROTHERS") self.assertEqual(props["version"], "00001449") self.assertEqual(props["crc1"], "916B8B5B") self.assertEqual(props["crc2"], "780B85A4") self.assertEqual(props["publisher"], "Nintendo") self.assertEqual(props["publisher_code"], "N") self.assertEqual(props["code"], "AL") self.assertEqual(props["region"], "USA") self.assertEqual(props["region_code"], "45")
#!/usr/bin/env python3 # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest genesis = testutils.loadModule("genesis") class TestGenesisParser(unittest.TestCase): def setUp(self): self.genesisParser = genesis.GensisParser() def test_invalid(self): empty = self.genesisParser.parse("data/empty") self.assertEqual(len(empty), 0) def test_genesis(self): props = self.genesisParser.parse("data/Sonic the Hedgehog.bin") self.assertEqual(len(props), 16) self.assertEqual(props["platform"], "Mega Drive") self.assertEqual(props["format"], "") self.assertEqual(props["console"], "SEGA MEGA DRIVE") self.assertEqual(props["copyright"], "(C)SEGA 1991.APR") self.assertEqual(props["publisher"], "SEGA") self.assertEqual(props["foreign_title"], "SONIC THE HEDGEHOG") self.assertEqual(props["title"], "SONIC THE HEDGEHOG")
#!/usr/bin/env python3 # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest gameboy = testutils.loadModule("gameboy") class TestGameboyParser(unittest.TestCase): def setUp(self): self.gbParser = gameboy.GameboyParser() def test_invalid(self): empty = self.gbParser.parse("data/empty") self.assertEqual(len(empty), 0) def test_gameboy(self): props = self.gbParser.parse("data/Tetris.gb") self.assertEqual(len(props), 17) self.assertEqual(props["title"], "TETRIS") self.assertEqual(props["platform"], "Game Boy") self.assertEqual(props["sgb_support"], "") self.assertEqual(props["publisher"], "Nintendo") self.assertEqual(props["publisher_code"], "01") self.assertEqual(props["cartridge_type"], "ROM") self.assertEqual(props["cartridge_type_code"], "00") self.assertEqual(props["rom_size"], "32KB")
#!/usr/bin/env python # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest gba = testutils.loadModule("gba") class TestGBAParser(unittest.TestCase): def setUp(self): self.gbaParser = gba.GBAParser() def test_gba(self): empty = self.gbaParser.parse("data/empty") self.assertEquals(len(empty), 0) props = self.gbaParser.parse("data/Golden Sun - The Lost Age.gba") self.assertEquals(len(props), 8) self.assertEquals(props["title"], "GOLDEN_SUN_B") self.assertEquals(props["code"], "AGFE") self.assertEquals(props["publisher"], "Nintendo") self.assertEquals(props["publisher_code"], "01") self.assertEquals(props["unit_code"], "00") self.assertEquals(props["version"], "00") self.assertEquals(props["header_checksum"], "2E") self.assertEquals(props["platform"], "Game Boy Advance") if __name__ == '__main__':
#!/usr/bin/env python3 # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest mastersystem = testutils.loadModule("mastersystem") class TestMastersystemParser(unittest.TestCase): def setUp(self): self.mastersystemParser = mastersystem.MasterSystemParser() def test_invalid(self): empty = self.mastersystemParser.parse("data/empty") self.assertEqual(len(empty), 0) def test_mastersystem(self): props = self.mastersystemParser.parse("data/Air Rescue.sms") self.assertEqual(len(props), 14) self.assertEqual(props["header_id"], "TMR SEGA") self.assertEqual(props["reserved_word"], "") self.assertEqual(props["checksum"], "F90A") self.assertEqual(props["checksum_ascii"], []) self.assertEqual(props["code"], "007102") self.assertEqual(props["version"], "00") self.assertEqual(props["platform"], "Master System") self.assertEqual(props["region"], "Export")
#!/usr/bin/env python # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest genesis = testutils.loadModule("genesis") class TestGenesisParser(unittest.TestCase): def setUp(self): self.genesisParser = genesis.GensisParser() def test_genesis(self): empty = self.genesisParser.parse("data/empty") self.assertEqual(len(empty), 0) props = self.genesisParser.parse("data/Sonic the Hedgehog.bin") print "%s" % props self.assertEqual(len(props), 13) self.assertEqual(props["console"], "SEGA MEGA DRIVE") self.assertEqual(props["copyright"], "(C)SEGA 1991.APR") self.assertEqual(props["publisher"], "SEGA") self.assertEqual(props["foreign_title"], "SONIC THE HEDGEHOG") self.assertEqual(props["title"], "SONIC THE HEDGEHOG") self.assertEqual(props["classification"], "Game") self.assertEqual(props["code"], "00001009") self.assertEqual(props["version"], "00") self.assertEqual(props["checksum"], "264A")
#!/usr/bin/env python3 # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest saturn = testutils.loadModule("saturn") class TestSaturnParser(unittest.TestCase): def setUp(self): self.saturnParser = saturn.SaturnParser() def test_invalid(self): empty = self.saturnParser.parse("data/empty") self.assertEqual(len(empty), 0) def test_saturn(self): props = self.saturnParser.parse( "data/Virtua Fighter CG Portrait Collection-1.bin") self.assertEqual(len(props), 14) self.assertEqual(props["platform"], "Saturn") self.assertEqual(props["hardware_id"], "SEGA SEGASATURN") self.assertEqual(props["publisher"], "SEGA ENTERPRISES") self.assertEqual(props["product_id"], "610-6083") self.assertEqual(props["product_version"], "V1.000") self.assertEqual(props["release_date"], "1995-08-03") self.assertEqual(props["media_info_code"], "CD-1/1")
#!/usr/bin/env python3 # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest genericdisc = testutils.loadModule("genericdisc") class TestGenericdiscParser(unittest.TestCase): def setUp(self): self.genericdiscParser = genericdisc.GenericDiscParser() def test_invalid(self): empty = self.genericdiscParser.parse("data/empty") self.assertEqual(len(empty), 0) def test_genericdisc(self): props = self.genericdiscParser.parse("data/Dreamkey.gdi") self.assertEqual(len(props), 17) self.assertEqual(props["platform"], "Generic Disc") self.assertEqual(props["standard_id"], "CD001") self.assertEqual(props["system_id"], "SEGA SEGAKATANA") self.assertEqual(props["volume_id"], "DREAMKEY3") self.assertEqual(props["set_info"], "1/1") self.assertEqual(props["volume_set_id"], "DREAMKEY3") self.assertEqual(props["publisher_id"], "SEGA CORPORATION") self.assertEqual(props["data_preparer_id"], "CRI CD CRAFT VER.2.30")
#!/usr/bin/env python3 # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest gba = testutils.loadModule("gba") class TestGBAParser(unittest.TestCase): def setUp(self): self.gbaParser = gba.GBAParser() def test_invalid(self): empty = self.gbaParser.parse("data/empty") self.assertEqual(len(empty), 0) def test_gba(self): props = self.gbaParser.parse("data/Golden Sun - The Lost Age.gba") self.assertEqual(len(props), 8) self.assertEqual(props["title"], "GOLDEN_SUN_B") self.assertEqual(props["code"], "AGFE") self.assertEqual(props["publisher"], "Nintendo") self.assertEqual(props["publisher_code"], "01") self.assertEqual(props["unit_code"], "00") self.assertEqual(props["version"], "00") self.assertEqual(props["header_checksum"], "2E") self.assertEqual(props["platform"], "Game Boy Advance")
#!/usr/bin/env python # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest gameboy = testutils.loadModule("gameboy") class TestGameboyParser(unittest.TestCase): def setUp(self): self.gbParser = gameboy.GameboyParser() def test_gameboy(self): empty = self.gbParser.parse("data/empty") self.assertEquals(len(empty), 0) props = self.gbParser.parse("data/The Legend of Zelda - Links Awakening DX.gbc") self.assertEquals(len(props), 15) self.assertEquals(props["title"], "ZELDA") self.assertEquals(props["platform"], "Game Boy Color") self.assertEquals(props["sgb_support"], "yes") self.assertEquals(props["publisher"], "Nintendo") self.assertEquals(props["publisher_code"], "01") self.assertEquals(props["cartridge_type"], "ROM+MBC5+RAM+BATT") self.assertEquals(props["cartridge_type_code"], "1B") self.assertEquals(props["rom_size"], "1MB") self.assertEquals(props["rom_size_code"], "05")
#!/usr/bin/env python3 # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest nintendods = testutils.loadModule("nintendods") class TestNintendoDsParser(unittest.TestCase): def setUp(self): self.nintendoDsParser = nintendods.NintendoDsParser() def test_invalid(self): empty = self.nintendoDsParser.parse("data/empty") self.assertEqual(len(empty), 0) def test_nds(self): props = self.nintendoDsParser.parse("data/Time Hollow.nds") self.assertEqual(len(props), 11) self.assertEqual(props["title"], "TIMEHOLLOW") self.assertEqual(props["code"], "YHLP") self.assertEqual(props["publisher"], "Konami") self.assertEqual(props["publisher_code"], "A4") self.assertEqual(props["unit_code"], "00") self.assertEqual(props["platform"], "Nintendo DS") self.assertEqual(props["ndsi_enhanced"], "") self.assertEqual(props["rom_size"], "1024Mbit")
#!/usr/bin/env python # # Copyright (C) 2013 Garrett Brown # See Copyright Notice in rominfo.py import testutils import unittest nintendo64 = testutils.loadModule("nintendo64") class TestNintendo64Parser(unittest.TestCase): def setUp(self): self.n64Parser = nintendo64.Nintendo64Parser() def test_nintendo64(self): empty = self.n64Parser.parse("data/empty") self.assertEquals(len(empty), 0) props = self.n64Parser.parse("data/Super Smash Bros.z64") self.assertEquals(len(props), 9) self.assertEquals(props["title"], "SMASH BROTHERS") self.assertEquals(props["version"], "00001449") self.assertEquals(props["crc1"], "916B8B5B") self.assertEquals(props["crc2"], "780B85A4") self.assertEquals(props["publisher"], "Nintendo") self.assertEquals(props["publisher_code"], "N") self.assertEquals(props["code"], "AL") self.assertEquals(props["region"], "USA") self.assertEquals(props["region_code"], "45")