From 59396c99089ab67a748465f67c62280e50e791b4 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Sat, 22 Apr 2023 16:05:09 -0300 Subject: bin/uninclude: Add new utility, with simple tests --- opt/resources/can-remove-stdbool.c | 12 ++++++++++++ opt/resources/can-remove-stdbool.c.expected | 9 +++++++++ opt/resources/nothing-can-be-removed.c | 7 +++++++ opt/resources/nothing-can-be-removed.c.expected | 7 +++++++ opt/tests/uninclude.sh | 23 +++++++++++++++++++++++ 5 files changed, 58 insertions(+) create mode 100644 opt/resources/can-remove-stdbool.c create mode 100644 opt/resources/can-remove-stdbool.c.expected create mode 100644 opt/resources/nothing-can-be-removed.c create mode 100644 opt/resources/nothing-can-be-removed.c.expected create mode 100755 opt/tests/uninclude.sh (limited to 'opt') diff --git a/opt/resources/can-remove-stdbool.c b/opt/resources/can-remove-stdbool.c new file mode 100644 index 0000000..98338de --- /dev/null +++ b/opt/resources/can-remove-stdbool.c @@ -0,0 +1,12 @@ +#include + +#include +#include + +#include + +int +main(void) { + printf("Nothing to be removed.\n"); + return 0; +} diff --git a/opt/resources/can-remove-stdbool.c.expected b/opt/resources/can-remove-stdbool.c.expected new file mode 100644 index 0000000..f3da0d3 --- /dev/null +++ b/opt/resources/can-remove-stdbool.c.expected @@ -0,0 +1,9 @@ + + +#include + +int +main(void) { + printf("Nothing to be removed.\n"); + return 0; +} diff --git a/opt/resources/nothing-can-be-removed.c b/opt/resources/nothing-can-be-removed.c new file mode 100644 index 0000000..773852f --- /dev/null +++ b/opt/resources/nothing-can-be-removed.c @@ -0,0 +1,7 @@ +#include + +int +main(void) { + printf("Nothing to be removed.\n"); + return 0; +} diff --git a/opt/resources/nothing-can-be-removed.c.expected b/opt/resources/nothing-can-be-removed.c.expected new file mode 100644 index 0000000..773852f --- /dev/null +++ b/opt/resources/nothing-can-be-removed.c.expected @@ -0,0 +1,7 @@ +#include + +int +main(void) { + printf("Nothing to be removed.\n"); + return 0; +} diff --git a/opt/tests/uninclude.sh b/opt/tests/uninclude.sh new file mode 100755 index 0000000..bb11f05 --- /dev/null +++ b/opt/tests/uninclude.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +git restore opt/resources/ + +# shellcheck disable=2086 +find opt/resources/ -name '*.c' | + sh ~/.usr/bin/uninclude -E '^#include ' -- cc $CFLAGS + +find opt/resources/ -name '*.c' | while read -r file; do + if ! cmp -s "$file" "$file".expected; then + cat <<-EOF + The unincluded file is different from expected. + + See with: + $ diff -U5 $file.expected $file + EOF + exit 1 + else + git restore "$file" + fi +done + +rm -f a.out -- cgit v1.2.3