tests: make it easier to spot failures

* examples/c/glr/c++-types.test: Split in several small test cases.
This commit is contained in:
Akim Demaille
2021-10-09 10:29:50 +02:00
parent 7c90a28f17
commit 4fe5a375fa

View File

@@ -17,31 +17,46 @@
cat >input <<EOF
z + q;
EOF
run 0 "1.0-5: +(z, q)"
cat >input <<EOF
T x;
EOF
run 0 "1.0-3: <declare>(T, x)"
cat >input <<EOF
T x = y;
EOF
run 0 "1.0-7: <init-declare>(T, x, y)"
cat >input <<EOF
x = y;
EOF
run 0 "1.0-5: =(x, y)"
cat >input <<EOF
T (x) + y;
EOF
run 0 "1.0-9: +(<cast>(x, T), y)"
cat >input <<EOF
T (x);
EOF
run 0 "1.0-5: <OR>(<declare>(T, x), <cast>(x, T))"
cat >input <<EOF
T (y) = z + q;
EOF
run 0 "1.0-13: <OR>(<init-declare>(T, y, +(z, q)), =(<cast>(y, T), +(z, q)))"
cat >input <<EOF
T (y y) = z + q;
EOF
run 0 "1.0-15: <error>
err: 1.5: syntax error, unexpected identifier, expecting '=' or '+' or ')'"
cat >input <<EOF
z + q;
EOF
run 0 "\
1.0-5: +(z, q)
3.0-3: <declare>(T, x)
5.0-7: <init-declare>(T, x, y)
7.0-5: =(x, y)
9.0-9: +(<cast>(x, T), y)
11.0-5: <OR>(<declare>(T, x), <cast>(x, T))
13.0-13: <OR>(<init-declare>(T, y, +(z, q)), =(<cast>(y, T), +(z, q)))
15.0-15: <error>
17.0-5: +(z, q)
err: 15.5: syntax error, unexpected identifier, expecting '=' or '+' or ')'"
run 0 "1.0-5: +(z, q)"