X-Git-Url: http://j8takagi.net/cgi-bin/gitweb.cgi?p=YACASL2.git;a=blobdiff_plain;f=test%2FTEST.mk;h=baa0d25da537c39b19d611c9b3c460d2988646d8;hp=12299d7cc0f61bf5ea6b4b0fe282b5e57ff825f3;hb=350188e12a316928e5b2d8473f580528b2780d8b;hpb=faec695d5b7ecf7dd3e4a07ac926ea93ca89020b diff --git a/test/TEST.mk b/test/TEST.mk index 12299d7..baa0d25 100644 --- a/test/TEST.mk +++ b/test/TEST.mk @@ -1,38 +1,28 @@ # テストのテンプレート # make : CMDで設定されたコマンドを実行した出力結果を1.txtに出力し、0.txtと比較し、レポート -# make all : ↓ # make check : ↓ # make prepare : CMDで設定されたコマンドを実行した出力結果を0.txt(テストの想定結果)に出力 # make clean : 「make」で生成されたファイルをクリア # make cleanall: 「make」と「make clean」で生成されたファイルをクリア -LOGFILE = ../test.log +LOGFILE = ../TEST.log ERRFILE = err.txt -CURDIR = `pwd` -define report - @echo -n "`basename $$PWD`: Test " >$@ - @if test ! -s $^; then \ - echo -n "Success " >>$@; \ - rm -f $^; \ - else \ - echo -n "Failure " >>$@; \ - fi - @echo `date +"%F %T"` >>$@ -endef +UNITNAME = `pwd | xargs basename` +# 要定義: CMD, CMDFILE, OBJFILE -.PHPNY: all check prepare clean cleanall logadd -check: clean logadd -all: check +.PHPNY: check prepare clean cleanall +check: clean report.txt prepare: cleanall 0.txt clean: @rm -f 1.txt diff.txt report.txt cleanall: clean @rm -f 0.txt 0.txt 1.txt: $(CMDFILE) $(OBJFILE) - @$(CMD) >$@ 2>$(ERRFILE); \ + @echo $(CMD) >$@; \ + $(CMD) >>$@ 2>$(ERRFILE); \ if test -s $(ERRFILE); then cat err.txt >>$@; else rm -f $(ERRFILE); fi diff.txt: 1.txt @-diff 0.txt 1.txt >$@ 2>&1 report.txt: diff.txt - $(report) -logadd: report.txt - @cat $^ >>$(LOGFILE) + @echo -n "$(UNITNAME): Test " >$@; \ + if test ! -s $^; then echo -n "Success " >>$@; rm -f $^; else echo -n "Failure " >>$@; fi; \ + echo `date +"%F %T"` >>$@