correctly decode hstore with @ in data
[APKPM.git] / t / Store.t
index 1370ba2..54d53ae 100755 (executable)
--- a/t/Store.t
+++ b/t/Store.t
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 5;
+use Test::More tests => 12;
 use Data::Dump qw(dump);
 
 use lib 'lib';
@@ -11,23 +11,6 @@ use_ok 'APKPM::Store';
 
 ok my $o = APKPM::Store->new, 'new';
 
-ok my $r = $o->insert('job',{
-_table => 'adsl',
-ip => '127.0.0.1',
-username => 'nobody',
-ATTNRX => "36.5",
-ATTNTX => "17.8",
-MAXRX  => 13500,
-MAXTX  => 880,
-PWRRX  => "0.0",
-PWRTX  => "12.6",
-RX     => 8500,
-SNRRX  => "11.4",
-SNRTX  => "16.0",
-TX     => 798,
-}), 'ADSL';
-diag dump($r);
-
 ok my $r = $o->insert('job',{
 _table => 'ping',
 ip => '127.0.0.1',
@@ -36,5 +19,20 @@ rtt => 0.042,
 }), 'ping';
 diag dump($r);
 
-ok my $r = $o->sql('job', "select rtt from ping where username='nobody'"), 'sql';
+ok my $r = $o->sql('job', "select username,rtt from ping limit 2"), 'sql';
 diag dump($r);
+
+ok my $r = $o->sql('job', "select xx from fake"), 'sql with error';
+ok exists $r->{error}, 'error';
+diag dump($r);
+
+foreach my $cpe_table ( qw(cpe_Davolink cpe_EasyGateway) ) {
+
+       diag $cpe_table;
+       ok my $r = $o->sql('job', "select * from $cpe_table limit 1"), $cpe_table;
+       ok( $r->{hash_col}, 'hash_col' );
+       isa_ok $r->{rows}->[0]->[ $r->{hash_col} ], 'HASH', 'hstore column';
+       diag "$cpe_table ",dump $r;
+
+}
+