|
Packit |
723767 |
#!/usr/bin/perl
|
|
Packit |
723767 |
|
|
Packit |
723767 |
use strict;
|
|
Packit |
723767 |
BEGIN {
|
|
Packit |
723767 |
$| = 1;
|
|
Packit |
723767 |
$^W = 1;
|
|
Packit |
723767 |
}
|
|
Packit |
723767 |
|
|
Packit |
723767 |
use lib "t/lib";
|
|
Packit |
723767 |
use SQLiteTest qw/connect_ok @CALL_FUNCS has_sqlite/;
|
|
Packit |
723767 |
use Test::More;
|
|
Packit |
723767 |
use Test::NoWarnings;
|
|
Packit |
723767 |
|
|
Packit |
723767 |
my $tests = 3;
|
|
Packit |
723767 |
$tests += 2 if has_sqlite('3.6.4');
|
|
Packit |
723767 |
$tests += 1 if has_sqlite('3.7.0');
|
|
Packit |
723767 |
|
|
Packit |
723767 |
plan tests => 4 + $tests * @CALL_FUNCS + 1;
|
|
Packit |
723767 |
|
|
Packit |
723767 |
my $dbh = connect_ok();
|
|
Packit |
723767 |
{
|
|
Packit |
723767 |
$dbh->do('create table foo (id integer primary key, text)');
|
|
Packit |
723767 |
my $sth = $dbh->prepare('insert into foo values(?, ?)');
|
|
Packit |
723767 |
$sth->execute($_, "text$_") for 1..100;
|
|
Packit |
723767 |
}
|
|
Packit |
723767 |
|
|
Packit |
723767 |
{
|
|
Packit |
723767 |
my $status = DBD::SQLite::sqlite_status();
|
|
Packit |
723767 |
ok $status && ref $status eq ref {}, "status is a hashref";
|
|
Packit |
723767 |
my $num_of_keys = scalar keys %$status;
|
|
Packit |
723767 |
ok $num_of_keys, "status: $num_of_keys indicators";
|
|
Packit |
723767 |
my $used_mem = $status->{memory_used}{current};
|
|
Packit |
723767 |
ok defined $used_mem && $used_mem, "current used memory: $used_mem";
|
|
Packit |
723767 |
}
|
|
Packit |
723767 |
|
|
Packit |
723767 |
for my $func (@CALL_FUNCS) {
|
|
Packit |
723767 |
{
|
|
Packit |
723767 |
my $db_status = $dbh->$func('db_status');
|
|
Packit |
723767 |
ok $db_status && ref $db_status eq ref {}, "db status is a hashref";
|
|
Packit |
723767 |
my $num_of_keys = scalar keys %$db_status;
|
|
Packit |
723767 |
ok $num_of_keys, "db status: $num_of_keys indicators";
|
|
Packit |
723767 |
if (has_sqlite('3.7.0')) {
|
|
Packit |
723767 |
my $used_cache = $db_status->{cache_used}{current};
|
|
Packit |
723767 |
ok defined $used_cache && $used_cache, "current used cache: $used_cache";
|
|
Packit |
723767 |
}
|
|
Packit |
723767 |
}
|
|
Packit |
723767 |
|
|
Packit |
723767 |
{
|
|
Packit |
723767 |
my $sth = $dbh->prepare('select * from foo where text = ? order by text desc');
|
|
Packit |
723767 |
$sth->execute("text1");
|
|
Packit |
723767 |
my $st_status = $sth->$func('st_status');
|
|
Packit |
723767 |
ok $st_status && ref $st_status eq ref {}, "st status is a hashref";
|
|
Packit |
723767 |
if (has_sqlite('3.6.4')) {
|
|
Packit |
723767 |
my $num_of_keys = scalar keys %$st_status;
|
|
Packit |
723767 |
ok $num_of_keys, "st status: $num_of_keys indicators";
|
|
Packit |
723767 |
my $sort = $st_status->{sort};
|
|
Packit |
723767 |
ok defined $sort, "num of sort: $sort";
|
|
Packit |
723767 |
}
|
|
Packit |
723767 |
}
|
|
Packit |
723767 |
}
|