From daa3cc16bedb5f9db691ef4b670099f1bf26a1e4 Mon Sep 17 00:00:00 2001 From: Krzysztof Jurewicz Date: Sat, 12 Aug 2017 15:24:57 +0200 Subject: Make Triq plugin pick tests from $(TEST_DIR) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit also changes Triq repository in package index to point to the leading fork. The original repository doesn’t work in Erlang 20. --- test/plugin_triq.mk | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 test/plugin_triq.mk (limited to 'test/plugin_triq.mk') diff --git a/test/plugin_triq.mk b/test/plugin_triq.mk new file mode 100644 index 0000000..908ce47 --- /dev/null +++ b/test/plugin_triq.mk @@ -0,0 +1,39 @@ +# Triq plugin + +TRIQ_CASES = test-dir +TRIQ_TARGETS = $(addprefix triq-,$(TRIQ_CASES)) + +.PHONY: triq $(TRIQ_TARGETS) + +triq: $(TRIQ_TARGETS) + +triq-test-dir: build clean + $i "Bootstrap a new OTP application named $(APP)" + $t mkdir $(APP)/ + $t cp ../erlang.mk $(APP)/ + $t $(MAKE) -C $(APP) -f erlang.mk bootstrap $v + + $i "Add Triq to the list of dependencies" + $t perl -ni.bak -e 'print;if ($$.==1) {print "DEPS = triq\n"}' $(APP)/Makefile + + $i "Generate a module containing Triq properties" + $t printf "%s\n" \ + "-module($(APP))." \ + "-ifdef(TEST)." \ + "-include_lib(\"triq/include/triq.hrl\")." \ + "prop_foo() -> ?FORALL(_, any(), true)." \ + "-endif." > $(APP)/src/$(APP).erl + + $i "Generate a module containing Triq properies in TEST_DIR" + $t mkdir $(APP)/test + $t printf "%s\n" \ + "-module($(APP)_tests)." \ + "-include_lib(\"triq/include/triq.hrl\")." \ + "prop_bar() -> ?FORALL(_, any(), true)." > $(APP)/test/$(APP)_tests.erl + + $i "Run the Triq plugin" + $t $(MAKE) -C $(APP) triq > $(APP)/triq.log + + $i "Check that both properties were checked" + $t grep -q prop_foo $(APP)/triq.log + $t grep -q prop_bar $(APP)/triq.log -- cgit v1.2.3