summaryrefslogtreecommitdiff
path: root/t/02_sequence.t
diff options
context:
space:
mode:
Diffstat (limited to 't/02_sequence.t')
-rw-r--r--t/02_sequence.t15
1 files changed, 14 insertions, 1 deletions
diff --git a/t/02_sequence.t b/t/02_sequence.t
index d42187f61..b1fa3ea31 100644
--- a/t/02_sequence.t
+++ b/t/02_sequence.t
@@ -6,7 +6,7 @@ use 5.006;
use strict;
use warnings;
use Data::Dumper;
-use Test::More tests => 10;
+use Test::More tests => 12;
use lib 't','.';
use CP_Testing;
@@ -45,6 +45,7 @@ if ($ver < 80100) {
my $seqname = 'cp_test_sequence';
$cp->drop_sequence_if_exists($seqname);
$cp->drop_sequence_if_exists("${seqname}2");
+$cp->drop_sequence_if_exists("${seqname}'\"evil");
$t=qq{$S works when no sequences exist};
like ($cp->run(''), qr{OK:.+No sequences found}, $t);
@@ -83,4 +84,16 @@ like ($cp->run('--critical=22%'), qr{CRITICAL:.+public.cp_test_sequence=33% \(ca
$t=qq{$S returns correct information with MRTG output};
is ($cp->run('--critical=22% --output=mrtg'), "33\n0\n\npublic.cp_test_sequence\n", $t);
+# create second sequence
+$dbh->do("CREATE SEQUENCE ${seqname}2");
+$dbh->commit();
+$t=qq{$S returns correct information for two sequences};
+like ($cp->run(''), qr{OK:.+public.cp_test_sequence=33% .* \| .*${seqname}=33%.*${seqname}2=0%}, $t);
+
+# test SQL quoting
+$dbh->do(qq{CREATE SEQUENCE "${seqname}'""evil"});
+$dbh->commit();
+$t=qq{$S handles SQL quoting};
+like ($cp->run(''), qr{OK:.+'public."${seqname}''""evil"'}, $t); # extra " and ' because name is both identifier+literal quoted
+
exit;