Enable testing of 3rd-party disk images

This commit is contained in:
Aaron Culliney 2016-07-31 19:48:26 -07:00
parent 94ca64f08d
commit d4581eb492
4 changed files with 16 additions and 14 deletions

View File

@ -159,18 +159,8 @@ man_MANS = docs/apple2ix.6
shadersdir = @datadir@/@PACKAGE@/shaders
shaders_DATA = src/video/Basic.vsh src/video/Basic.fsh
# disk images
disksdir = @datadir@/@PACKAGE@/disks
disks_DATA = \
disks/README disks/blank.dsk.gz disks/blank.nib.gz disks/blank.po.gz disks/etc.dsk.gz \
disks/mystery.dsk.gz disks/speedtest.dsk.gz disks/speedtest.txt disks/flapple140.po.gz \
disks/testdisplay1.dsk.gz disks/testdisplay1.nib.gz disks/testvm1.dsk.gz disks/testvm1.nib.gz
# Extra distribution stuff
EXTRA_DIST = reconf.sh configure README.debugger PROBLEMS .apple2 \
\
$(disks_DATA) \
\
$(man_MANS) \
\
@ -179,4 +169,14 @@ EXTRA_DIST = reconf.sh configure README.debugger PROBLEMS .apple2 \
\
$(shaders_DATA)
install-data-hook:
rm -rf @datadir@/@PACKAGE@/disks
cp -Rp external-disks/ @datadir@/@PACKAGE@/disks/
dist-hook:
echo "TODO FIXME disks and external-disks"
echo rm -rf $(distdir)/disks
echo cp -Rp disks $(distdir)/disks
echo cp -Rp external-disks $(distdir)/disks
CLEANFILES = src/font.c src/rom.c src/meta/debug.c src/x86/glue.S

View File

@ -1 +1 @@
../apple2-images-pub/disks
../apple2-images/disks

View File

@ -73,17 +73,19 @@ void test_common_init(void) {
int test_setup_boot_disk(const char *fileName, int readonly) {
int err = 0;
char **path = NULL;
const unsigned int pathsCount = 3;
const unsigned int pathsCount = 4;
char *paths[pathsCount + 1] = {
NULL,
NULL,
NULL,
NULL,
NULL,
};
const char *fmts[pathsCount + 1] = {
"%s%sdisks/%s",
"%s%sdisks/demo/%s",
"%s%sdisks/blanks/%s",
"%s%sdisks/3rd-party-test/%s",
NULL,
};

View File

@ -11,7 +11,7 @@
#include "testcommon.h"
//#define TEST_DISK_EDGE_CASES 1
#define TEST_DISK_EDGE_CASES 1
#define TESTING_DISK "testvm1.dsk.gz"
#define BLANK_DSK "blank.dsk.gz"
#define BLANK_NIB "blank.nib.gz"
@ -1443,7 +1443,7 @@ GREATEST_SUITE(test_suite_disk) {
c_debugger_set_timeout(0);
// test order from here is important ...
// * load the disks with a buncha junk fiiles
// * load the disks with a buncha junk files
// * verify integrity of the junk files
// * inithello and verify boots
// * check that the disk images are ultimately unchanged