summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
Diffstat (limited to 't')
-rw-r--r--t/42-dbobject.t17
-rw-r--r--t/43-dbtest.t24
2 files changed, 37 insertions, 4 deletions
diff --git a/t/42-dbobject.t b/t/42-dbobject.t
index 65cbbb1c..ccb94bc9 100644
--- a/t/42-dbobject.t
+++ b/t/42-dbobject.t
@@ -1,5 +1,5 @@
use LedgerSMB::DBObject;
-use Test::More tests => 5;
+use Test::More tests => 20;
# Array parsing tests
my $test = '{test,"test2\"\",",test3,"test4"}';
@@ -9,7 +9,16 @@ for (LedgerSMB::DBObject->_parse_array($test)){
is($_, shift @vals, "pass $pass, array parse test");
}
-my $test2 = '{{1,1,1,1},{1,2,2,2}}';
-
+my $test2 = '{{1,1,1,1},{1,2,2,2},{1,3,3,4}}';
+my @test_arry2_c = ( [1,1,1,1], [1,2,2,2], [1,3,3,4]);
my @test_arry2 = LedgerSMB::DBObject->_parse_array($test2);
-is(scalar @test_arry2, 2, 'Compount array with proper element count');
+is(scalar @test_arry2, 3, 'Compount array with proper element count');
+is(scalar @{$test_arry2[0]}, 4, 'Subarray 1 has correct element count');
+is(scalar @{$test_arry2[1]}, 4, 'Subarray 2 has correct element count');
+is(scalar @{$test_arry2[2]}, 4, 'Subarray 3 has correct element count');
+for my $outer(0 .. 2){
+ for my $inner(0 .. 3) {
+ is ($test_arry2[$outer]->[$inner], $test_arry2_c[$outer]->[$inner],
+ "Compound array $outer/$inner correct");
+ }
+}
diff --git a/t/43-dbtest.t b/t/43-dbtest.t
new file mode 100644
index 00000000..d19ab215
--- /dev/null
+++ b/t/43-dbtest.t
@@ -0,0 +1,24 @@
+use Test::More;
+use strict;
+
+if (!defined $ENV{PGDATABASE}){
+ plan skip_all => 'PGDATABASE Environment Variable not set up';
+}
+else {
+ plan tests => 50;
+}
+
+my @testscripts = qw(Account Business_type Company Draft Payment
+ Session Voucher);
+
+chdir 'sql/modules/test/';
+
+for my $testscript (@testscripts){
+ open (TEST, '-|', "psql -f $testscript.sql");
+ my @testlines = grep /\|\s+(t|f)\s?$/, <TEST>;
+ cmp_ok(scalar @testlines, '>', 0, "$testscript.sql returned test results");
+ for my $test (@testlines){
+ my @parts = split /\|/, $test;
+ like($parts[1], qr/t/, $parts[0]);
+ }
+}