diff options
Diffstat (limited to 't')
-rw-r--r-- | t/42-dbobject.t | 17 | ||||
-rw-r--r-- | t/43-dbtest.t | 24 |
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]); + } +} |