Refactoring tests

This commit is contained in:
Sergio Martin 2024-01-20 19:39:31 +01:00
parent 3b4a530d42
commit 10111ac5ec
79 changed files with 136 additions and 208 deletions

1
tests/.gitignore vendored
View File

@ -5,4 +5,5 @@
test.sol test.sol
*.hash *.hash
*.out *.out
*.sh

View File

@ -1 +1,19 @@
Some of the sequences hosted in this folder correspond to movies published in tasvideos.org under the Creative Commons 2.0 license. These movies were created by the author of this code (Sergio Martin, a.k.a. eien86), unless stated otherwise. Some of the sequences hosted in this folder correspond to movies published in tasvideos.org under the Creative Commons 2.0 license. These movies were created by the author of this code (Sergio Martin, a.k.a. eien86) and collaborators, unless otherwise stated.
Notes:
Sprilo is a open-source free game. This rom was obtained from
- https://itch.io/jam/game-off-2017
- https://github.com/cbrwn/gameoff
- We use the movie https://tasvideos.org/3557G by MrTASer distributed under the CC2.0 license
Nova The Squirrel is a open-source free game. This rom was obtained from
- https://github.com/NovaSquirrel/NovaTheSquirrel
- https://novasquirrel.itch.io/nova-the-squirrel
- We use the movie https://tasvideos.org/5246M by Cephla distributed under the CC2.0 license
For Saiyuuki World
- We use the movie https://tasvideos.org/4422M by aiqiyou & J.Y distributed under the CC2.0 license
For Metroid
- We use part of the movie https://tasvideos.org/3666M by The8bitbeast distributed under the CC2.0 license

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Arkanoid (U) [!].nes", "Rom File": "roms/Arkanoid (U) [!].nes",
"Expected ROM SHA1": "B2B30C4F30DD853C215C17B0C67CFE63D61A3062", "Expected ROM SHA1": "B2B30C4F30DD853C215C17B0C67CFE63D61A3062",
"Initial State File": "", "Initial State File": "",
"Sequence File": "warps.sol", "Sequence File": "arkanoid.warpless.sol",
"Disable State Blocks": [ "SRAM", "CHRR", "NTAB", "SPRT", "MAPR", "CTRL", "APUR" ] "Disable State Blocks": [ "SRAM", "CHRR", "NTAB", "SPRT", "MAPR", "CTRL", "APUR" ]
} }

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Arkanoid (U) [!].nes", "Rom File": "roms/Arkanoid (U) [!].nes",
"Expected ROM SHA1": "B2B30C4F30DD853C215C17B0C67CFE63D61A3062", "Expected ROM SHA1": "B2B30C4F30DD853C215C17B0C67CFE63D61A3062",
"Initial State File": "", "Initial State File": "",
"Sequence File": "warpless.sol", "Sequence File": "arkanoid.warps.sol",
"Disable State Blocks": [ "SRAM", "CHRR", "NTAB", "SPRT", "MAPR", "CTRL", "APUR" ] "Disable State Blocks": [ "SRAM", "CHRR", "NTAB", "SPRT", "MAPR", "CTRL", "APUR" ]
} }

View File

@ -1,9 +0,0 @@
game = 'arkanoid'
bash = find_program('bash')
goal = 'warpless'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )
goal = 'warps'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,8 +1,7 @@
{ {
"Rom File": "../roms/Castlevania (U) (PRG0) [!].nes", "Rom File": "roms/Castlevania (U) (PRG0) [!].nes",
"Expected ROM SHA1": "A31B8BD5B370A9103343C866F3C2B2998E889341", "Expected ROM SHA1": "A31B8BD5B370A9103343C866F3C2B2998E889341",
"Initial State File": "", "Initial State File": "",
"Verification State File": "pacifist.final.state", "Sequence File": "castlevania1.anyPercent.sol",
"Sequence File": "pacifist.sol",
"Disable State Blocks": [ "SRAM", "CHRR", "NTAB", "SPRT", "CTRL" ] "Disable State Blocks": [ "SRAM", "CHRR", "NTAB", "SPRT", "CTRL" ]
} }

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Castlevania (U) (PRG0) [!].nes", "Rom File": "roms/Castlevania (U) (PRG0) [!].nes",
"Expected ROM SHA1": "A31B8BD5B370A9103343C866F3C2B2998E889341", "Expected ROM SHA1": "A31B8BD5B370A9103343C866F3C2B2998E889341",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "castlevania1.pacifist.sol",
"Disable State Blocks": [ "SRAM", "CHRR", "NTAB", "SPRT", "CTRL" ] "Disable State Blocks": [ "SRAM", "CHRR", "NTAB", "SPRT", "CTRL" ]
} }

View File

@ -1,7 +0,0 @@
game = 'castlevania1'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )
goal = 'pacifist'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Galaga - Demons of Death (U) [!].nes", "Rom File": "roms/Galaga - Demons of Death (U) [!].nes",
"Expected ROM SHA1": "DA54C223D79FA59EB95437854B677CF69B5CAC8A", "Expected ROM SHA1": "DA54C223D79FA59EB95437854B677CF69B5CAC8A",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "galaga.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'galaga'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Ironsword - Wizards & Warriors II (U) [!].nes", "Rom File": "roms/Ironsword - Wizards & Warriors II (U) [!].nes",
"Expected ROM SHA1": "97B79E432F62403FB9F877090850C41112A9A168", "Expected ROM SHA1": "97B79E432F62403FB9F877090850C41112A9A168",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "ironSword.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'ironSword'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,31 +1,59 @@
nomalloc = environment({'MALLOC_PERTURB_': '0'}) nomalloc = environment({'MALLOC_PERTURB_': '0'})
bash = find_program('bash') bash = find_program('bash')
testCommands = ['../run_test.sh', quickerNESTester.path(), quickNESTester.path() ] testCommands = ['run_test.sh', quickerNESTester.path(), quickNESTester.path() ]
testTimeout = 120 testTimeout = 120
# Tests for copyrighted game roms (only for local testing or own CI runners)
protectedTestSet = [
'arkanoid.warpless.test',
'arkanoid.warps.test',
'castlevania1.anyPercent.test',
'castlevania1.pacifist.test',
'galaga.anyPercent.test',
'ironSword.anyPercent.test',
'metroid.playaround.test',
'nigelMansell.anyPercent.test',
'ninjaGaiden.anyPercent.test',
'ninjaGaiden.pacifist.test',
'ninjaGaiden2.anyPercent.test',
'ninjaGaiden2.pacifist.test',
'novaTheSquirrel.anyPercent.test',
'princeOfPersia.anyPercent.test',
'saintSeiyaKanketsuHen.anyPercent.test',
'saintSeiyaOugonDensetsu.anyPercent.test',
'saiyuukiWorld.anyPercent.test',
'saiyuukiWorld.lastHalf.test',
'solarJetman.anyPercent.test',
'sprilo.anyPercent.test',
'superMarioBros.warpless.test',
'superMarioBros.warps.test',
'superMarioBros3.warps.test',
'superOffroad.anyPercent.test',
'tennis.anyPercent.test',
]
# Tests for open source free roms (for public cloud testing)
openSourceTestSet = [
'novaTheSquirrel.anyPercent.test',
'sprilo.anyPercent.test',
]
# Creating test set based on whether copyrighted roms are to be used
testSet = openSourceTestSet
if get_option('onlyOpenSource') == false if get_option('onlyOpenSource') == false
testSet += protectedTestSet
subdir('arkanoid')
subdir('castlevania1')
subdir('superOffroad')
subdir('princeOfPersia')
subdir('ninjaGaiden')
subdir('ninjaGaiden2')
subdir('ironSword')
subdir('solarJetman')
subdir('tennis')
subdir('metroid')
subdir('nigelMansell')
subdir('galaga')
subdir('saintSeiyaOugonDensetsu')
subdir('saintSeiyaKanketsuHen')
subdir('superMarioBros')
subdir('superMarioBros3')
subdir('saiyuukiWorld')
endif endif
# Open source games # Adding tests to the suite
subdir('sprilo') foreach testFile : testSet
subdir('novaTheSquirrel') testSuite = testFile.split('.')[0]
testName = testFile.split('.')[1]
test(testName,
bash,
workdir : meson.current_source_dir(),
timeout: testTimeout,
args : [ testCommands, testFile, '--cycleType', 'Full'],
suite : [ testSuite ])
endforeach

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Metroid (U) (PRG0) [!].nes", "Rom File": "roms/Metroid (U) (PRG0) [!].nes",
"Expected ROM SHA1": "ECF39EC5A33E6A6F832F03E8FFC61C5D53F4F90B", "Expected ROM SHA1": "ECF39EC5A33E6A6F832F03E8FFC61C5D53F4F90B",
"Initial State File": "", "Initial State File": "",
"Sequence File": "playaround.sol", "Sequence File": "metroid.playaround.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'metroid'
goal = 'playaround'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Nigel Mansell's World Championship Challenge (U) [!].nes", "Rom File": "roms/Nigel Mansell's World Championship Challenge (U) [!].nes",
"Expected ROM SHA1": "BBE5CF2DFA0B5422776A530D6F1B617238A8569F", "Expected ROM SHA1": "BBE5CF2DFA0B5422776A530D6F1B617238A8569F",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "nigelMansell.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'nigelMansell'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Ninja Gaiden (U) [!].nes", "Rom File": "roms/Ninja Gaiden (U) [!].nes",
"Expected ROM SHA1": "CA513F841D75EFEB33BB8099FB02BEEB39F6BB9C", "Expected ROM SHA1": "CA513F841D75EFEB33BB8099FB02BEEB39F6BB9C",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "ninjaGaiden.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Ninja Gaiden (U) [!].nes", "Rom File": "roms/Ninja Gaiden (U) [!].nes",
"Expected ROM SHA1": "CA513F841D75EFEB33BB8099FB02BEEB39F6BB9C", "Expected ROM SHA1": "CA513F841D75EFEB33BB8099FB02BEEB39F6BB9C",
"Initial State File": "", "Initial State File": "",
"Sequence File": "pacifist.sol", "Sequence File": "ninjaGaiden.pacifist.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,7 +0,0 @@
game = 'ninjaGaiden'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )
goal = 'pacifist'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Ninja Gaiden II - The Dark Sword of Chaos (U) [!].nes", "Rom File": "roms/Ninja Gaiden II - The Dark Sword of Chaos (U) [!].nes",
"Expected ROM SHA1": "B1796660E4A4CEFC72181D4BF4F97999BC048A77", "Expected ROM SHA1": "B1796660E4A4CEFC72181D4BF4F97999BC048A77",
"Initial State File": "", "Initial State File": "",
"Sequence File": "pacifist.sol", "Sequence File": "ninjaGaiden2.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Ninja Gaiden II - The Dark Sword of Chaos (U) [!].nes", "Rom File": "roms/Ninja Gaiden II - The Dark Sword of Chaos (U) [!].nes",
"Expected ROM SHA1": "B1796660E4A4CEFC72181D4BF4F97999BC048A77", "Expected ROM SHA1": "B1796660E4A4CEFC72181D4BF4F97999BC048A77",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "ninjaGaiden2.pacifist.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,7 +0,0 @@
game = 'ninjaGaiden2'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )
goal = 'pacifist'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/nova.nes", "Rom File": "roms/nova.nes",
"Expected ROM SHA1": "B6B07EE76492ED475F39167C89B342353F999231", "Expected ROM SHA1": "B6B07EE76492ED475F39167C89B342353F999231",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "novaTheSquirrel.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,7 +0,0 @@
Nova The Squirrel is a open-source free game. This rom was obtained from
https://github.com/NovaSquirrel/NovaTheSquirrel
https://novasquirrel.itch.io/nova-the-squirrel
We use the movie https://tasvideos.org/5246M by Cephla distributed under the CC2.0 license

View File

@ -1,4 +0,0 @@
game = 'novaTheSquirrel'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Prince of Persia (U) [!].nes", "Rom File": "roms/Prince of Persia (U) [!].nes",
"Expected ROM SHA1": "6B58F149F34FA829135619C58700CAAA95B9CDE3", "Expected ROM SHA1": "6B58F149F34FA829135619C58700CAAA95B9CDE3",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "princeOfPersia.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'princeOfPersia'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -0,0 +1,7 @@
{
"Rom File": "roms/Saint Seiya - Ougon Densetsu Kanketsu Hen (J) [!].nes",
"Expected ROM SHA1": "F871D9B3DAFDDCDAD5F2ACD71044292E5169064E",
"Initial State File": "",
"Sequence File": "saintSeiyaKanketsuHen.anyPercent.sol",
"Disable State Blocks": [ ]
}

View File

@ -1,7 +0,0 @@
{
"Rom File": "../roms/Saint Seiya - Ougon Densetsu Kanketsu Hen (J) [!].nes",
"Expected ROM SHA1": "F871D9B3DAFDDCDAD5F2ACD71044292E5169064E",
"Initial State File": "",
"Sequence File": "anyPercent.sol",
"Disable State Blocks": [ ]
}

View File

@ -1,4 +0,0 @@
game = 'saintSeiyaKanketsuHen'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Saint Seiya - Ougon Densetsu (J) [!].nes", "Rom File": "roms/Saint Seiya - Ougon Densetsu (J) [!].nes",
"Expected ROM SHA1": "3F3B499CF50386084E053BCA096AE8E52330CFAE", "Expected ROM SHA1": "3F3B499CF50386084E053BCA096AE8E52330CFAE",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "saintSeiyaKanketsuHen.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'saintSeiyaOugonDensetsu'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -0,0 +1,7 @@
{
"Rom File": "roms/Saiyuuki World (J).nes",
"Expected ROM SHA1": "C2F12D915A4D0B1FFDF8A64AE1092CE6A2D08770",
"Initial State File": "",
"Sequence File": "saiyuukiWorld.anyPercent.sol",
"Disable State Blocks": [ ]
}

View File

@ -0,0 +1,7 @@
{
"Rom File": "roms/Saiyuuki World (J).nes",
"Expected ROM SHA1": "C2F12D915A4D0B1FFDF8A64AE1092CE6A2D08770",
"Initial State File": "saiyuukiWorld.lastHalf.state",
"Sequence File": "saiyuukiWorld.lastHalf.sol",
"Disable State Blocks": [ ]
}

View File

@ -1,8 +0,0 @@
{
"Rom File": "../roms/Saiyuuki World (J).nes",
"Expected ROM SHA1": "C2F12D915A4D0B1FFDF8A64AE1092CE6A2D08770",
"Initial State File": "",
"Sequence File": "anyPercent.sol",
"Disable State Blocks": [ ],
"Credits": "https://tasvideos.org/4422M by aiqiyou & J.Y"
}

View File

@ -1,8 +0,0 @@
{
"Rom File": "../roms/Saiyuuki World (J).nes",
"Expected ROM SHA1": "C2F12D915A4D0B1FFDF8A64AE1092CE6A2D08770",
"Initial State File": "lastHalf.state",
"Sequence File": "anyPercent.sol",
"Disable State Blocks": [ ],
"Credits": "https://tasvideos.org/4422M by aiqiyou & J.Y"
}

View File

@ -1,9 +0,0 @@
game = 'saiyuukiWorld'
bash = find_program('bash')
goal = 'anyPercent'
test(goal + '-FullCycle', bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )
goal = 'lastHalf'
test(goal + '-FullCycle', bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Solar Jetman - Hunt for the Golden Warpship (U) [!].nes", "Rom File": "roms/Solar Jetman - Hunt for the Golden Warpship (U) [!].nes",
"Expected ROM SHA1": "872B91A2F7A2F635061EF43F79E7F7E9F59F5C50", "Expected ROM SHA1": "872B91A2F7A2F635061EF43F79E7F7E9F59F5C50",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "solarJetman.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'solarJetman'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/sprilo.nes", "Rom File": "roms/sprilo.nes",
"Expected ROM SHA1": "6EC09B9B51320A536A786D3D4719432B714C5779", "Expected ROM SHA1": "6EC09B9B51320A536A786D3D4719432B714C5779",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "sprilo.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,7 +0,0 @@
Sprilo is a open-source free game. This rom was obtained from
https://itch.io/jam/game-off-2017
https://github.com/cbrwn/gameoff
We use the movie https://tasvideos.org/3557G by MrTASer distributed under the CC2.0 license

View File

@ -1,4 +0,0 @@
game = 'sprilo'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Super Mario Bros. (W) [!].nes", "Rom File": "roms/Super Mario Bros. (W) [!].nes",
"Expected ROM SHA1": "EA343F4E445A9050D4B4FBAC2C77D0693B1D0922", "Expected ROM SHA1": "EA343F4E445A9050D4B4FBAC2C77D0693B1D0922",
"Initial State File": "", "Initial State File": "",
"Sequence File": "warps.sol", "Sequence File": "superMarioBros.warpless.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Super Mario Bros. (W) [!].nes", "Rom File": "roms/Super Mario Bros. (W) [!].nes",
"Expected ROM SHA1": "EA343F4E445A9050D4B4FBAC2C77D0693B1D0922", "Expected ROM SHA1": "EA343F4E445A9050D4B4FBAC2C77D0693B1D0922",
"Initial State File": "", "Initial State File": "",
"Sequence File": "warpless.sol", "Sequence File": "superMarioBros.warps.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
Movies used:
https://tasvideos.org/1715M by HappyLee
https://tasvideos.org/3728M by HappyLee and Mars608

View File

@ -1,7 +0,0 @@
game = 'superMarioBros'
goal = 'warps'
test(goal, bash, workdir : meson.current_source_dir(), args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )
goal = 'warpless'
test(goal, bash, workdir : meson.current_source_dir(), args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Super Mario Bros. 3 (U) (PRG0) [!].nes", "Rom File": "roms/Super Mario Bros. 3 (U) (PRG0) [!].nes",
"Expected ROM SHA1": "A03E7E526E79DF222E048AE22214BCA2BC49C449", "Expected ROM SHA1": "A03E7E526E79DF222E048AE22214BCA2BC49C449",
"Initial State File": "", "Initial State File": "",
"Sequence File": "warps.sol", "Sequence File": "superMarioBros3.warps.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'superMarioBros3'
goal = 'warps'
test(goal, bash, workdir : meson.current_source_dir(), args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Ivan 'Ironman' Stewart's Super Off Road (USA).nes", "Rom File": "roms/Ivan 'Ironman' Stewart's Super Off Road (USA).nes",
"Expected ROM SHA1": "57919B685B55EE3ED3AD98FB1D25626B98BE7D39", "Expected ROM SHA1": "57919B685B55EE3ED3AD98FB1D25626B98BE7D39",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "superOffroad.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'superOffroad'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )

View File

@ -1,7 +1,7 @@
{ {
"Rom File": "../roms/Tennis (JU) [!].nes", "Rom File": "roms/Tennis (JU) [!].nes",
"Expected ROM SHA1": "80D99C035E6A5AB9718E413EC25CBE094F085962", "Expected ROM SHA1": "80D99C035E6A5AB9718E413EC25CBE094F085962",
"Initial State File": "", "Initial State File": "",
"Sequence File": "anyPercent.sol", "Sequence File": "tennis.anyPercent.sol",
"Disable State Blocks": [ ] "Disable State Blocks": [ ]
} }

View File

@ -1,4 +0,0 @@
game = 'tennis'
goal = 'anyPercent'
test(goal, bash, workdir : meson.current_source_dir(), timeout: testTimeout, args : [ testCommands, goal + '.test', '--cycleType', 'Full'], suite: [ game, goal ] )