X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Ftests%2Ffilesys%2Fextended%2FMake.tests;h=f64659c75dea2b8cad0460ea15f2c189b8f01af9;hb=a36a980e3df79c1d75c7ebedd8cb85cfe01d0795;hp=1aeb8dd1acb68ba0071d6580b1b38f3d88662fd1;hpb=b51bfd75c7f55f008d67ec13d895694fbfa22430;p=pintos-anon diff --git a/src/tests/filesys/extended/Make.tests b/src/tests/filesys/extended/Make.tests index 1aeb8dd..f64659c 100644 --- a/src/tests/filesys/extended/Make.tests +++ b/src/tests/filesys/extended/Make.tests @@ -1,13 +1,15 @@ # -*- makefile -*- -tests/filesys/extended_TESTS = $(addprefix \ -tests/filesys/extended/,dir-empty-name dir-mk-tree dir-mkdir dir-open \ +raw_tests = dir-empty-name dir-mk-tree dir-mkdir dir-open \ dir-over-file dir-rm-cwd dir-rm-parent dir-rm-root dir-rm-tree \ dir-rmdir dir-under-file dir-vine grow-create grow-dir-lg \ grow-file-size grow-root-lg grow-root-sm grow-seq-lg grow-seq-sm \ -grow-sparse grow-tell grow-two-files syn-rw) +grow-sparse grow-tell grow-two-files syn-rw -tests/filesys/extended_PROGS = $(tests/filesys/extended_TESTS) \ +tests/filesys/extended_TESTS = $(patsubst %,tests/filesys/extended/%,$(raw_tests)) +tests/filesys/extended_EXTRA_GRADES = $(patsubst %,tests/filesys/extended/%-persistence,$(raw_tests)) + +tests/filesys/extended_PROGS = $(tests/filesys/extended_TESTS) \ tests/filesys/extended/child-syn-rw tests/filesys/extended/tar $(foreach prog,$(tests/filesys/extended_PROGS), \ @@ -16,18 +18,20 @@ $(foreach prog,$(tests/filesys/extended_TESTS), \ $(eval $(prog)_SRC += tests/main.c)) $(foreach prog,$(tests/filesys/extended_TESTS), \ $(eval $(prog)_PUTFILES += tests/filesys/extended/tar)) -$(foreach test,$(tests/filesys/extended_TESTS), \ - $(eval $(test).output: FSDISK = tmp.dsk)) +# The version of GNU make 3.80 on vine barfs if this is split at +# the last comma. +$(foreach test,$(tests/filesys/extended_TESTS),$(eval $(test).output: FSDISK = tmp.dsk)) tests/filesys/extended/dir-mk-tree_SRC += tests/filesys/extended/mk-tree.c tests/filesys/extended/dir-rm-tree_SRC += tests/filesys/extended/mk-tree.c tests/filesys/extended/syn-rw_PUTFILES += tests/filesys/extended/child-syn-rw +tests/filesys/extended/dir-vine.output: TIMEOUT = 150 GETTIMEOUT = 60 -GETCMD = pintos -v -T $(GETTIMEOUT) +GETCMD = pintos -v -k -T $(GETTIMEOUT) GETCMD += $(PINTOSOPTS) GETCMD += $(SIMULATOR) GETCMD += --fs-disk=$(FSDISK) @@ -38,8 +42,8 @@ endif GETCMD += -- -q GETCMD += $(KERNELFLAGS) GETCMD += run 'tar fs.tar /' -GETCMD += 2>> $(TEST).get-errors -GETCMD += $(if $(VERBOSE),|tee -a,>>) $(TEST).get-output +GETCMD += < /dev/null +GETCMD += 2> $(TEST)-persistence.errors $(if $(VERBOSE),|tee,>) $(TEST)-persistence.output tests/filesys/extended/%.output: os.dsk rm -f tmp.dsk @@ -47,3 +51,11 @@ tests/filesys/extended/%.output: os.dsk $(TESTCMD) $(GETCMD) rm -f tmp.dsk +$(foreach raw_test,$(raw_tests),$(eval tests/filesys/extended/$(raw_test)-persistence.output: tests/filesys/extended/$(raw_test).output; )) +$(foreach raw_test,$(raw_tests),$(eval tests/filesys/extended/$(raw_test)-persistence.result: tests/filesys/extended/$(raw_test).result)) + +TARS = $(addsuffix .tar,$(tests/filesys/extended_TESTS)) + +clean:: + rm -f $(TARS) + rm -f tests/filesys/extended/can-rmdir-cwd