#!/usr/bin/perl -w use strict; use vars qw( $class ); use Test::More tests => 13; # ------------------------------------------------------------------------ BEGIN { $class = 'Data::Phrasebook'; use_ok $class; } my $file = 't/01phrases.txt'; my %trail = ( 1 => 0, 2 => 0, 3 => 11, 4 => 29, ); # ------------------------------------------------------------------------ { my $obj = $class->new; isa_ok( $obj => "${class}::Plain", 'Bare new' ); is( $obj->debug => 0 , 'Set/get debug works'); } { my $obj = $class->new( file => $file, debug => 4 ); isa_ok( $obj => "${class}::Plain", 'New with file' ); is( $obj->debug => 4 , 'Set/get debug works'); { my $str = $obj->fetch( 'foo', { my => "Iain's", place => 'locale', }); } { $obj->delimiters( qr{ :(\w+) }x ); my $str = $obj->fetch( 'bar', { my => "Bob's", place => 'whatever', }); } for(1..4) { my @log = $obj->retrieve($_); is(scalar(@log),$trail{$_}); } $obj->clear(); { my @log = $obj->retrieve(4); is(scalar(@log),$trail{1}); @log = $obj->retrieve(); is(scalar(@log),$trail{1}); my $items = $obj->store(); is($items,undef); $items = $obj->store(5,'hello'); is($items,undef); } }