Bug 14778: Install fixtures for t/Images.t
[koha.git] / t / Images.t
1 #!/usr/bin/perl
2 #
3 #Testing C4 Images
4
5 use Modern::Perl;
6 use Test::More tests => 8;
7 use Test::MockModule;
8
9 use_ok('C4::Images');
10
11 use Test::DBIx::Class {
12     schema_class => 'Koha::Schema',
13     connect_info => ['dbi:SQLite:dbname=:memory:','',''],
14     connect_opts => { name_sep => '.', quote_char => '`', },
15     fixture_class => '::Populate',
16 }, 'Biblioimage' ;
17
18 # Make the code in the module use our mocked Koha::Schema/Koha::Database
19 my $db = Test::MockModule->new('Koha::Database');
20 $db->mock(
21     # Schema() gives us the DB connection set up by Test::DBIx::Class
22     _new_schema => sub { return Schema(); }
23 );
24
25 my $biblionumber = 2;
26 my $images = [
27     [ 1, $biblionumber, 'gif',  'imagefile1', 'thumbnail1' ],
28     [ 3, $biblionumber, 'jpeg', 'imagefile3', 'thumbnail3' ],
29 ];
30 fixtures_ok [
31     Biblioimage => [
32         [ 'imagenumber', 'biblionumber', 'mimetype', 'imagefile', 'thumbnail' ],
33         @$images,
34     ],
35 ], 'add fixtures';
36
37 my $image = C4::Images::RetrieveImage(1);
38
39 is( $image->{'imagenumber'}, 1, 'First imagenumber is 1' );
40
41 is( $image->{'mimetype'}, 'gif', 'First mimetype is gif' );
42
43 is( $image->{'thumbnail'}, 'thumbnail1', 'First thumbnail is correct' );
44
45 my @imagenumbers = C4::Images::ListImagesForBiblio($biblionumber);
46
47 is( $imagenumbers[0], 1, 'imagenumber is 1' );
48
49 is( $imagenumbers[1], 3, 'imagenumber is 3' );
50
51 is( $imagenumbers[4], undef, 'imagenumber undef' );