From c8acceb3298082e5d4f3588f67e77b8d80b121c3 Mon Sep 17 00:00:00 2001 From: Robert Bendun Date: Mon, 2 May 2022 22:09:11 +0200 Subject: [PATCH] Code coverage reporting utility --- .gitignore | 1 + Makefile | 13 ++++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 0f873af..d94c28b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ .ccls-cache bin/* compile_commands.json +coverage diff --git a/Makefile b/Makefile index 81bd0c9..9ac1951 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ MAKEFLAGS="-j $(grep -c ^processor /proc/cpuinfo)" -CXXFLAGS=-std=c++20 -Wall -Wextra -O2 -Werror=switch -CPPFLAGS=-Ilib/expected/ -Ilib/ut/ -Isrc/ +CXXFLAGS:=$(CXXFLAGS) -std=c++20 -Wall -Wextra -Werror=switch +CPPFLAGS:=$(CPPFLAGS) -Ilib/expected/ -Ilib/ut/ -Isrc/ Obj=bin/errors.o \ bin/lexer.o \ @@ -9,7 +9,6 @@ Obj=bin/errors.o \ all: bin/musique bin/unit-tests - bin/%.o: src/%.cc src/*.hh g++ $(CXXFLAGS) $(CPPFLAGS) -o $@ $< -c @@ -20,6 +19,14 @@ bin/musique: $(Obj) bin/main.o src/*.hh unit-tests: bin/unit-tests ./$< +unit-test-coverage: + CXXFLAGS=--coverage $(MAKE) bin/unit-tests -B + bin/unit-tests + rm -rf coverage + mkdir coverage + gcovr -e '.*\.hpp' --html --html-details -o coverage/index.html + rm -rf bin + bin/unit-tests: src/tests/*.cc $(Obj) g++ $(CXXFLAGS) $(CPPFLAGS) -o $@ $^