summaryrefslogtreecommitdiffstats
path: root/pintos-progos/tests/filesys/extended/Make.tests
diff options
context:
space:
mode:
Diffstat (limited to 'pintos-progos/tests/filesys/extended/Make.tests')
-rw-r--r--pintos-progos/tests/filesys/extended/Make.tests61
1 files changed, 61 insertions, 0 deletions
diff --git a/pintos-progos/tests/filesys/extended/Make.tests b/pintos-progos/tests/filesys/extended/Make.tests
new file mode 100644
index 0000000..e03b98d
--- /dev/null
+++ b/pintos-progos/tests/filesys/extended/Make.tests
@@ -0,0 +1,61 @@
1# -*- makefile -*-
2
3raw_tests = dir-empty-name dir-mk-tree dir-mkdir dir-open \
4dir-over-file dir-rm-cwd dir-rm-parent dir-rm-root dir-rm-tree \
5dir-rmdir dir-under-file dir-vine grow-create grow-dir-lg \
6grow-file-size grow-root-lg grow-root-sm grow-seq-lg grow-seq-sm \
7grow-sparse grow-tell grow-two-files syn-rw
8
9tests/filesys/extended_TESTS = $(patsubst %,tests/filesys/extended/%,$(raw_tests))
10tests/filesys/extended_EXTRA_GRADES = $(patsubst %,tests/filesys/extended/%-persistence,$(raw_tests))
11
12tests/filesys/extended_PROGS = $(tests/filesys/extended_TESTS) \
13tests/filesys/extended/child-syn-rw tests/filesys/extended/tar
14
15$(foreach prog,$(tests/filesys/extended_PROGS), \
16 $(eval $(prog)_SRC += $(prog).c tests/lib.c tests/filesys/seq-test.c))
17$(foreach prog,$(tests/filesys/extended_TESTS), \
18 $(eval $(prog)_SRC += tests/main.c))
19$(foreach prog,$(tests/filesys/extended_TESTS), \
20 $(eval $(prog)_PUTFILES += tests/filesys/extended/tar))
21# The version of GNU make 3.80 on vine barfs if this is split at
22# the last comma.
23$(foreach test,$(tests/filesys/extended_TESTS),$(eval $(test).output: FILESYSSOURCE = --disk=tmp.dsk))
24
25tests/filesys/extended/dir-mk-tree_SRC += tests/filesys/extended/mk-tree.c
26tests/filesys/extended/dir-rm-tree_SRC += tests/filesys/extended/mk-tree.c
27
28tests/filesys/extended/syn-rw_PUTFILES += tests/filesys/extended/child-syn-rw
29
30tests/filesys/extended/dir-vine.output: TIMEOUT = 150
31
32GETTIMEOUT = 60
33
34GETCMD = pintos -v -k -T $(GETTIMEOUT)
35GETCMD += $(PINTOSOPTS)
36GETCMD += $(SIMULATOR)
37GETCMD += $(FILESYSSOURCE)
38GETCMD += -g fs.tar -a $(TEST).tar
39ifeq ($(filter vm, $(KERNEL_SUBDIRS)), vm)
40GETCMD += --swap-size=4
41endif
42GETCMD += -- -q
43GETCMD += $(KERNELFLAGS)
44GETCMD += run 'tar fs.tar /'
45GETCMD += < /dev/null
46GETCMD += 2> $(TEST)-persistence.errors $(if $(VERBOSE),|tee,>) $(TEST)-persistence.output
47
48tests/filesys/extended/%.output: kernel.bin
49 rm -f tmp.dsk
50 pintos-mkdisk tmp.dsk --filesys-size=2
51 $(TESTCMD)
52 $(GETCMD)
53 rm -f tmp.dsk
54$(foreach raw_test,$(raw_tests),$(eval tests/filesys/extended/$(raw_test)-persistence.output: tests/filesys/extended/$(raw_test).output))
55$(foreach raw_test,$(raw_tests),$(eval tests/filesys/extended/$(raw_test)-persistence.result: tests/filesys/extended/$(raw_test).result))
56
57TARS = $(addsuffix .tar,$(tests/filesys/extended_TESTS))
58
59clean::
60 rm -f $(TARS)
61 rm -f tests/filesys/extended/can-rmdir-cwd