Allow "make check" to run tests.
authorDavin McCall <davmac@davmac.org>
Fri, 16 Jun 2017 20:13:36 +0000 (21:13 +0100)
committerDavin McCall <davmac@davmac.org>
Fri, 16 Jun 2017 20:27:03 +0000 (21:27 +0100)
Makefile
src/Makefile
src/tests/Makefile
src/tests/tests.cc

index e764dee9446add2b3cf981920f5aa9f7ab462d2b..187794ef3483f9734d8da565160875998f69cecf 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -3,6 +3,9 @@
 all:
        $(MAKE) -C src all
 
+check:
+       $(MAKE) -C src check
+
 install:
        $(MAKE) -C src install
        $(MAKE) -C doc/manpages install
index 338deb29882d7600f06863e6f1b57b30de8fec6b..e308ec60516eb9d3e5f5bd2dba97b7c9ba4f3238 100644 (file)
@@ -22,6 +22,9 @@ shutdown: shutdown.o
 $(objects): %.o: %.cc
        $(CXX) $(CXXOPTS) -Idasynq -c $< -o $@
 
+check: $(objects)
+       $(MAKE) -C tests check
+
 install: all
        install -d $(DESTDIR)/sbin
        install -s dinit dinitctl $(SHUTDOWN) $(DESTDIR)/sbin
@@ -30,8 +33,9 @@ ifeq ($(BUILD_SHUTDOWN),yes)
 endif
 
 clean:
-       rm -f *.o
+       rm -f *.o *.d
        rm -f dinit dinitctl shutdown
+       $(MAKE) -C tests clean
 
 $(objects:.o=.d): %.d: %.cc
        $(CXX) $(CXXOPTS) -Idasynq -MM -MG -MF $@ $<
index 5e12ac0a37272d143a5a67193ddd49513853b638..dea221a14e82534c21cbbeb35481c04a8849cb87 100644 (file)
@@ -3,6 +3,9 @@
 objects = tests.o
 parent_objs = ../service.o ../control.o ../dinit-log.o ../load_service.o ../dinit.o
 
+check: build-tests
+       ./tests
+
 build-tests: tests
 
 tests: $(objects)
@@ -12,7 +15,7 @@ $(objects): %.o: %.cc
        $(CXX) $(CXXOPTS) -I.. -I../dasynq -c $< -o $@
 
 clean:
-       rm -f *.o
+       rm -f *.o *.d
 
 $(objects:.o=.d): %.d: %.cc
        $(CXX) $(CXXOPTS) -I.. -I../dasynq -MM -MG -MF $@ $<
index 93e701b637478e4eeb803b3371f3cb74427cc6c3..12e2095239eecc9eb32890ad394fc3c7d30005ac 100644 (file)
@@ -1,4 +1,6 @@
 #include <cassert>
+#include <iostream>
+
 #include "service.h"
 
 void test1()
@@ -73,6 +75,11 @@ void test2()
 
 int main(int argc, char **argv)
 {
+    std::cout << "test1... ";
     test1();
+    std::cout << "PASSED" << std::endl;
+
+    std::cout << "test2... ";
     test2();
+    std::cout << "PASSED" << std::endl;
 }