Exemple #1
0
#!/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)")
Exemple #2
0
#!/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()
Exemple #3
0
#!/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")
Exemple #4
0
#!/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")
Exemple #5
0
#!/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")
Exemple #6
0
#!/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")
Exemple #7
0
#!/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__':
Exemple #8
0
#!/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")
Exemple #9
0
#!/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")
Exemple #10
0
#!/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")
Exemple #11
0
#!/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")
Exemple #12
0
#!/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")
Exemple #13
0
#!/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")
Exemple #14
0
#!/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")
Exemple #15
0
#!/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")