aboutsummaryrefslogtreecommitdiff
path: root/src/bin/pgbench/t/001_pgbench_with_server.pl
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin/pgbench/t/001_pgbench_with_server.pl')
-rw-r--r--src/bin/pgbench/t/001_pgbench_with_server.pl50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/bin/pgbench/t/001_pgbench_with_server.pl b/src/bin/pgbench/t/001_pgbench_with_server.pl
index 4f716c6c073..fbd45c766cc 100644
--- a/src/bin/pgbench/t/001_pgbench_with_server.pl
+++ b/src/bin/pgbench/t/001_pgbench_with_server.pl
@@ -622,6 +622,56 @@ SELECT :v0, :v1, :v2, :v3;
}
});
+# test nested \if constructs
+$node->pgbench(
+ '--no-vacuum --client=1 --transactions=1',
+ 0,
+ [qr{actually processed}],
+ [qr{^$}],
+ 'nested ifs',
+ {
+ 'pgbench_nested_if' => q(
+ \if false
+ SELECT 1 / 0;
+ \if true
+ SELECT 1 / 0;
+ \elif true
+ SELECT 1 / 0;
+ \else
+ SELECT 1 / 0;
+ \endif
+ SELECT 1 / 0;
+ \elif false
+ \if true
+ SELECT 1 / 0;
+ \elif true
+ SELECT 1 / 0;
+ \else
+ SELECT 1 / 0;
+ \endif
+ \else
+ \if false
+ SELECT 1 / 0;
+ \elif false
+ SELECT 1 / 0;
+ \else
+ SELECT 'correct';
+ \endif
+ \endif
+ \if true
+ SELECT 'correct';
+ \else
+ \if true
+ SELECT 1 / 0;
+ \elif true
+ SELECT 1 / 0;
+ \else
+ SELECT 1 / 0;
+ \endif
+ \endif
+ )
+ });
+
# random determinism when seeded
$node->safe_psql('postgres',
'CREATE UNLOGGED TABLE seeded_random(seed INT8 NOT NULL, rand TEXT NOT NULL, val INTEGER NOT NULL);'