From 4064fa9b9c26c4d02c43f7a0f2df369312beb001 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Wed, 24 Feb 2016 17:56:23 +0000 Subject: [PATCH] Bug 15877 - Unit tests Signed-off-by: Srdjan --- t/db_dependent/Barcodes.t | 52 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 51 insertions(+), 1 deletion(-) diff --git a/t/db_dependent/Barcodes.t b/t/db_dependent/Barcodes.t index d987bd5..0788edd 100755 --- a/t/db_dependent/Barcodes.t +++ b/t/db_dependent/Barcodes.t @@ -17,8 +17,12 @@ use Modern::Perl; -use Test::More tests => 73; +use Test::More tests => 76; use Test::Warn; +use Test::MockModule; +use t::lib::TestBuilder; + +use Koha::Database; $| = 1; @@ -28,6 +32,52 @@ BEGIN { use_ok('C4::Barcodes'); } +my $schema = Koha::Database->new->schema; +$schema->storage->txn_begin; + +my $builder = t::lib::TestBuilder->new; + +my $dbh = C4::Context->dbh; + +#Test generation of annual barcodes from +$dbh->do(q|DELETE FROM issues|); +$dbh->do(q|DELETE FROM items|); + +my $barcodeobj = C4::Barcodes->new('annual'); + +my $barcodevalue = $barcodeobj->value(); + +my $item_1 = $builder->build({ + source => 'Item', + value => { + barcode => $barcodevalue + } +}); + +is($barcodevalue,$barcodeobj->db_max(), "(annual) First barcode saved to db is equal to db_max" ); + +//This is just setting the value ahead an arbitrary amount before adding a second barcode to db +$barcodevalue = $barcodeobj->next_value(); +$barcodevalue = $barcodeobj->next_value($barcodevalue); +$barcodevalue = $barcodeobj->next_value($barcodevalue); +$barcodevalue = $barcodeobj->next_value($barcodevalue); +$barcodevalue = $barcodeobj->next_value($barcodevalue); + +my $item_2 = $builder->build({ + source => 'Item', + value => { + barcode => $barcodevalue + } +}); + +$barcodeobj = C4::Barcodes->new('annual'); + +is($barcodevalue,$barcodeobj->db_max(), '(annual) db_max should equal the greatest barcode in the db when more than 1 present'); +ok($barcodeobj->value() gt $barcodevalue, '(annual) new barcode object should be created with value greater and last value inserted into db'); + +$dbh->do(q|DELETE FROM issues|); +$dbh->do(q|DELETE FROM items|); + my %thash = ( incremental => [], annual => [], -- 2.1.4