r90: Dodan --change u cp-update
[carnet-tools-cn.git] / test / Makefile
index 5c19de1..e0117a8 100644 (file)
@@ -6,12 +6,12 @@
 # path to cp-update script
 CPUPDATE=../cp-update
 
-tests: test0 test1 test2 test3 test4 test5 test6
+tests: test0 test1 test2 test3 test4 test5 test6 test7 test8
        @echo "All tests completed successfully"
        @cp test-file.start test-file
        
 clean: test0 test-file.start
-       rm -f test[0-9] test[0-9][0-9] test-file.[0-9]*
+       rm -f test[0-9] test[0-9][a-zA-Z0-9] test-file.[0-9]*
 
 # prepare everything for test sequence
 test0: test-file.start
@@ -68,9 +68,30 @@ test5:
        mv test-new $@
        echo Succeeded $@
 
+# change/replace existing blocks
+# - even if they do not previously exist (fall-back to insert)
+test6:
+       perl -e 'print "test line $$_ by $$ARGV[0]\n" for 14..18;' testChange \
+                | $(CPUPDATE) -x -i 'something' testChange test-file
+       cp test-file test-new
+       cmp test-new $@.ok
+       mv test-new $@
+       echo Succeeded $@
+
+# change/replace existing blocks
+# - just change it Sam
+test7: test6
+       cp test6 test6c
+       perl -e 'print "test line $$_ by $$ARGV[0]\n" for 22..26;' testChange \
+                | $(CPUPDATE) -x -i 'something' testChange test6c
+       cp test6c test-new
+       cmp test-new $@.ok
+       mv test-new $@
+       echo Succeeded $@
+
 # now remove everything
-test6: test1 test2 test3 test4 test5
-       for i in test[1-4]; do $(CPUPDATE) -r $$i test-file; done
+test8: test1 test2 test3 test4 test5 test6
+       for i in test[1-4] testChange; do $(CPUPDATE) -r $$i test-file; done
        $(CPUPDATE) -r -c ';' test5 test-file
        cp test-file.start $@.ok
        echo >> $@.ok