diff options
| author | nsfisis <nsfisis@gmail.com> | 2025-10-04 15:33:07 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2025-10-04 15:33:10 +0900 |
| commit | 46e79e69ae866df88cb9442a7329c72662ed2db3 (patch) | |
| tree | 13561c1e7273ed0311da37957e4a82d15b243ba4 /tests/include_local.sh | |
| parent | 7e11675136edf8136f812c85cd45bc88ba405533 (diff) | |
| download | ducc-46e79e69ae866df88cb9442a7329c72662ed2db3.tar.gz ducc-46e79e69ae866df88cb9442a7329c72662ed2db3.tar.zst ducc-46e79e69ae866df88cb9442a7329c72662ed2db3.zip | |
refactor: rename test files
Diffstat (limited to 'tests/include_local.sh')
| -rw-r--r-- | tests/include_local.sh | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/tests/include_local.sh b/tests/include_local.sh new file mode 100644 index 0000000..c9fe755 --- /dev/null +++ b/tests/include_local.sh @@ -0,0 +1,100 @@ +cat <<'EOF' > header.h +int add(int a, int b) { + return a + b; +} + +int printf(const char*, ...); +EOF + +cat <<'EOF' > expected +8 +EOF +test_diff <<'EOF' +#include "header.h" + +int main() { + printf("%d\n", add(5, 3)); + return 0; +} +EOF + +mkdir -p foo +cat <<'EOF' > bar.h +#include "baz.h" +EOF +cat <<'EOF' > baz.h +#define A 123 +EOF +cat <<'EOF' > foo/bar.h +#include "baz.h" +EOF +cat <<'EOF' > foo/baz.h +#define A 456 +EOF + +cat <<'EOF' > expected +123 +456 +EOF +test_diff <<'EOF' +int printf(const char*, ...); + +int main() { +#include "bar.h" + printf("%d\n", A); + +#undef A + +#include "foo/bar.h" + printf("%d\n", A); +} +EOF + +cat <<'EOF' > expected +12 +EOF + +cat <<'EOF' > math.h +int multiply(int a, int b) { + return a * b; +} +EOF + +cat <<'EOF' > calc.h +#include "math.h" + +int calculate(int x) { + return multiply(x, 2); +} + +int printf(const char*, ...); +EOF + +test_diff <<'EOF' +#include "calc.h" + +int main() { + printf("%d\n", calculate(6)); + return 0; +} +EOF + +cat <<'EOF' > expected +42 +EOF + +cat <<'EOF' > header.h +#define A 42 +EOF + +test_diff <<'EOF' +#include "header.h" + +int printf(); + +int main() { + printf("%d\n", A); + return 0; +} +EOF + |
