Bug 14778: Make Barcodes_ValueBuilder.t db dependent
[srvgit] / t / db_dependent / Barcodes_ValueBuilder.t
1 #!/usr/bin/perl
2
3 use Modern::Perl;
4 use Test::More tests => 7;
5 use Test::MockModule;
6 use t::lib::TestBuilder;
7
8 BEGIN {
9     use_ok('C4::Barcodes::ValueBuilder');
10 };
11
12 my $builder = t::lib::TestBuilder->new;
13 my $dbh = C4::Context->dbh;
14 $dbh->do(q|DELETE FROM items|);
15 my $item_1 = $builder->build({
16     source => 'Item',
17     value => {
18         barcode => '33333074344563'
19     }
20 });
21 my $item_2 = $builder->build({
22     source => 'Item',
23     value => {
24         barcode => 'hb12070890'
25     }
26 });
27 my $item_3 = $builder->build({
28     source => 'Item',
29     value => {
30         barcode => '2012-0034'
31     }
32 });
33
34 my %args = (
35     year        => '2012',
36     mon         => '07',
37     day         => '30',
38     tag         => '952',
39     subfield    => 'p',
40     loctag      => '952',
41     locsubfield => 'a'
42 );
43
44 my ($nextnum, $scr) = C4::Barcodes::ValueBuilder::incremental::get_barcode(\%args);
45 is($nextnum, 33333074344564, 'incremental barcode');
46 is($scr, undef, 'incremental javascript');
47
48 ($nextnum, $scr) = C4::Barcodes::ValueBuilder::hbyymmincr::get_barcode(\%args);
49 is($nextnum, '12070891', 'hbyymmincr barcode');
50 ok(length($scr) > 0, 'hbyymmincr javascript');
51
52 ($nextnum, $scr) = C4::Barcodes::ValueBuilder::annual::get_barcode(\%args);
53 is($nextnum, '2012-0035', 'annual barcode');
54 is($scr, undef, 'annual javascript');