plugin_concuerror.mk 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. # Concuerror plugin.
  2. CONCUERROR_TARGETS = $(call list_targets,concuerror)
  3. .PHONY: concuerror $(CONCUERROR_TARGETS)
  4. concuerror: $(CONCUERROR_TARGETS)
  5. concuerror-app: init
  6. $i "Bootstrap a new OTP application named $(APP)"
  7. $t mkdir $(APP)/
  8. $t cp ../erlang.mk $(APP)/
  9. $t $(MAKE) -C $(APP) -f erlang.mk bootstrap $v
  10. $i "Create a test module with a function that returns immediately"
  11. $t mkdir $(APP)/test
  12. $t printf "%s\n" \
  13. "-module(concuerror_success)." \
  14. "-export([test/0])." \
  15. "test() -> ok." > $(APP)/test/concuerror_success.erl
  16. $i "Add the test case to CONCUERROR_TESTS"
  17. $t perl -ni.bak -e 'print;if ($$.==1) {print "CONCUERROR_TESTS += concuerror_success:test\n"}' $(APP)/Makefile
  18. $i "Confirm that Concuerror completes successfully"
  19. $t $(MAKE) -C $(APP) concuerror $v
  20. $i "Create a test module with a function that has no local return"
  21. $t printf "%s\n" \
  22. "-module(concuerror_error)." \
  23. "-export([test/0])." \
  24. "test() -> 1 = 2, ok." > $(APP)/test/concuerror_error.erl
  25. $i "Add the test case to CONCUERROR_TESTS"
  26. $t perl -ni.bak -e 'print;if ($$.==1) {print "CONCUERROR_TESTS += concuerror_error:test\n"}' $(APP)/Makefile
  27. $i "Confirm that Concuerror errors out"
  28. $t ! $(MAKE) -C $(APP) concuerror $v