From d288b2896f543d10bf5287131a569c390dd17750 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 13 Nov 2025 19:58:14 +0000 Subject: [PATCH] Move coverage scripts to scripts/ directory and add Makefile targets Reorganize coverage tooling for better project structure and easier usage. Changes: - Move measure_coverage.sh and generate_coverage_html.sh to scripts/ - Add Makefile targets: - make coverage-report: Generate text coverage summary (5s simulation) - make coverage-html: Generate HTML coverage report (5s simulation) - Update measure_coverage.sh to find generate_coverage_html.sh using relative path Usage: make coverage-report # Quick text summary make coverage-html # Full HTML report with branch details The HTML report provides interactive visualization of which branches were taken during simulation execution, with color-coded source views. --- Makefile | 8 +++++++- .../generate_coverage_html.sh | 0 measure_coverage.sh => scripts/measure_coverage.sh | 4 +++- 3 files changed, 10 insertions(+), 2 deletions(-) rename generate_coverage_html.sh => scripts/generate_coverage_html.sh (100%) rename measure_coverage.sh => scripts/measure_coverage.sh (95%) diff --git a/Makefile b/Makefile index 74fdbff..5e4b4b0 100644 --- a/Makefile +++ b/Makefile @@ -15,12 +15,18 @@ CFILES = $(shell find src -name '*.c') HFILES = $(shell find src -name '*.h') OFILES = $(CFILES:.c=.o) -.PHONY: all clean coverage +.PHONY: all clean coverage coverage-report coverage-html all: mousefs$(EXT) mousefs_random_test$(EXT) example_client$(EXT) libmousefs.a coverage: mousefs_random_test_coverage$(EXT) +coverage-report: + @./scripts/measure_coverage.sh 5 + +coverage-html: + @./scripts/measure_coverage.sh 5 --html + mousefs$(EXT): $(CFILES) $(HFILES) gcc -o $@ $(CFILES) $(CFLAGS) $(LFLAGS) -Iinc -DBUILD_SERVER diff --git a/generate_coverage_html.sh b/scripts/generate_coverage_html.sh similarity index 100% rename from generate_coverage_html.sh rename to scripts/generate_coverage_html.sh diff --git a/measure_coverage.sh b/scripts/measure_coverage.sh similarity index 95% rename from measure_coverage.sh rename to scripts/measure_coverage.sh index a10e1de..876ea3e 100755 --- a/measure_coverage.sh +++ b/scripts/measure_coverage.sh @@ -95,7 +95,9 @@ echo # Generate HTML report if requested if [ "$2" == "--html" ]; then echo -e "${YELLOW}Generating HTML coverage report...${NC}" - ./generate_coverage_html.sh + # Get the directory where this script is located + SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" + "$SCRIPT_DIR/generate_coverage_html.sh" echo -e "${GREEN}HTML report generated in coverage_report/index.html${NC}" echo "Open with: firefox coverage_report/index.html (or your preferred browser)" echo