diff options
| author | nsfisis <nsfisis@gmail.com> | 2025-09-03 19:03:48 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2025-09-10 23:51:52 +0900 |
| commit | 9a2fbf6f4854b1f2cfd5979b91d5b3d7e183d487 (patch) | |
| tree | 5fc0c3e0c3cd7159119d0560b5061b3545216f35 /tests/test_define_macros.sh | |
| parent | b447618c33683b947c1fb26f1e7cd9033e20e5cb (diff) | |
| download | ducc-9a2fbf6f4854b1f2cfd5979b91d5b3d7e183d487.tar.gz ducc-9a2fbf6f4854b1f2cfd5979b91d5b3d7e183d487.tar.zst ducc-9a2fbf6f4854b1f2cfd5979b91d5b3d7e183d487.zip | |
test: merge test scripts
Diffstat (limited to 'tests/test_define_macros.sh')
| -rw-r--r-- | tests/test_define_macros.sh | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/tests/test_define_macros.sh b/tests/test_define_macros.sh new file mode 100644 index 0000000..1b674f1 --- /dev/null +++ b/tests/test_define_macros.sh @@ -0,0 +1,92 @@ +cat <<'EOF' > expected +EOF +test_diff <<'EOF' +#define A 1 +int main() { + return 0; +} +EOF + +cat <<'EOF' > expected +1,2,3 +EOF +test_diff <<'EOF' +int printf(); + +#define A 1 +#define B 2 +#define C 3 + +int main() { + printf("%d,%d,%d\n", A, B, C); + return 0; +} +EOF + +cat <<'EOF' > expected +0,0,0,0 +EOF +test_diff <<'EOF' +int printf(); + +#define NULL 0 +#define TK_EOF 0 +#define TY_UNKNOWN 0 +#define AST_UNKNOWN 0 + +int main() { + printf("%d,%d,%d,%d\n", NULL, TK_EOF, TY_UNKNOWN, AST_UNKNOWN); + return 0; +} +EOF + +cat <<'EOF' > expected +42,123 +EOF +test_diff <<'EOF' +int printf(); + +#define A foo_a +#define B foo_b + +int main() { + int foo_a = 42; + int foo_b = 123; + + printf("%d,%d\n", A, B); + + return 0; +} +EOF + +cat <<'EOF' > expected +123 +EOF + +test_diff <<'EOF' +#define foo() 123 + +int printf(); + +int main() { + printf("%d\n", foo()); +} +EOF + +cat <<'EOF' > expected +579 +975 +EOF + +test_diff <<'EOF' +#define foo 123 + 456 +#define bar() 321 + 654 + +int printf(); + +int main() { + printf("%d\n", foo); + printf("%d\n", bar()); +} +EOF + |
