5 |
|
|
6 |
use blib; |
use blib; |
7 |
|
|
8 |
use Test::More tests => 30; |
use Test::More tests => 32; |
9 |
use Test::Exception; |
use Test::Exception; |
10 |
use Data::Dump qw/dump/; |
use Data::Dump qw/dump/; |
11 |
|
|
35 |
|
|
36 |
ok( tcjdbopen( $jdb, $path, JDBOWRITER | JDBOCREAT | JDBOTRUNC ), "tcjdbopen $path" ); |
ok( tcjdbopen( $jdb, $path, JDBOWRITER | JDBOCREAT | JDBOTRUNC ), "tcjdbopen $path" ); |
37 |
|
|
38 |
ok( tcjdbclose( $jdb ), 'tcjdbclose' ); |
SKIP: { |
39 |
diag tcjdberrmsg( tcjdbecode( $jdb ) ); |
skip 'close on empty database makes next open segfault', 2; |
40 |
|
|
41 |
ok( tcjdbopen( $jdb, $path, JDBOWRITER | JDBOCREAT ), "tcjdbopen $path again" ); |
ok( tcjdbclose( $jdb ), 'tcjdbclose' ); |
42 |
diag tcjdberrmsg( tcjdbecode( $jdb ) ); |
|
43 |
|
ok( tcjdbopen( $jdb, $path, JDBOWRITER | JDBOCREAT ), "tcjdbopen $path again" ); |
44 |
|
|
45 |
|
} |
46 |
|
|
47 |
ok( tcjdbput( $jdb, 1, [ 'foobar' ] ), 'tcjdbput' ); |
ok( tcjdbput( $jdb, 1, [ 'foobar' ] ), 'tcjdbput' ); |
|
diag tcjdberrmsg( tcjdbecode( $jdb ) ); |
|
48 |
|
|
49 |
ok( tcjdbout( $jdb, 1 ), 'tcjdbout' ); |
ok( tcjdbout( $jdb, 1 ), 'tcjdbout' ); |
50 |
|
|
52 |
|
|
53 |
ok( tcjdbput2( $jdb, 99, 'some more data again', ' ' ), 'tcjdbput2' ); |
ok( tcjdbput2( $jdb, 99, 'some more data again', ' ' ), 'tcjdbput2' ); |
54 |
|
|
55 |
is_deeply( tcjdbsearch( $jdb, 'some', JDBSSUBSTR ), [ 42 ], 'tcjdbsearch' ); |
is_deeply( tcjdbsearch( $jdb, 'some', JDBSSUBSTR ), [ 42, 99 ], 'tcjdbsearch' ); |
56 |
|
is_deeply( tcjdbsearch2( $jdb, 'some' ), [ 42, 99 ], 'tcjdbsearch2' ); |
57 |
ok( tcjdbput( $jdb, 65536, [ 'some', 'more', 'data' ] ), 'tcjdbput more data' ); |
ok( tcjdbput( $jdb, 65536, [ 'some', 'more', 'data' ] ), 'tcjdbput more data' ); |
58 |
is_deeply( tcjdbsearch( $jdb, 'some', JDBSSUBSTR ), [ 42, 65536 ], 'tcjdbsearch' ); |
is_deeply( tcjdbsearch( $jdb, 'some', JDBSSUBSTR ), [ 42, 99, 65536 ], 'tcjdbsearch' ); |
59 |
|
is_deeply( tcjdbsearch2( $jdb, 'some' ), [ 42, 99, 65536 ], 'tcjdbsearch2' ); |
60 |
|
|
61 |
ok( tcjdbsync( $jdb ), 'tcjdbsync' ); |
ok( tcjdbsync( $jdb ), 'tcjdbsync' ); |
62 |
|
|
69 |
|
|
70 |
is( tcjdbpath( $jdb ), $path, 'tcjdbpath' ); |
is( tcjdbpath( $jdb ), $path, 'tcjdbpath' ); |
71 |
|
|
72 |
is( tcjdbtnum( $jdb ), 13, 'tcjdbtnum' ); |
is( tcjdbrnum( $jdb ), 3, 'tcjdbrnum' ); |
73 |
|
|
74 |
ok( my $file_size = tcjdbfsiz( $jdb ), 'tcjdbfsiz' ); |
ok( my $file_size = tcjdbfsiz( $jdb ), 'tcjdbfsiz' ); |
75 |
|
|