Bug 17755: Introduce Koha::Object::Limit::Library
[srvgit] / t / Biblio.t
index 3217e77..1cec33b 100755 (executable)
 
 use Modern::Perl;
 
-use Test::More tests => 46;
+use Test::More;
 use Test::MockModule;
 use Test::Warn;
-use DBD::Mock;
+
+use Module::Load::Conditional qw/check_install/;
 
 BEGIN {
-        use_ok('C4::Biblio');
+    if ( check_install( module => 'Test::DBIx::Class' ) ) {
+        plan tests => 46;
+    } else {
+        plan skip_all => "Need Test::DBIx::Class"
+    }
 }
 
-my $context = new Test::MockModule('C4::Context');
-$context->mock(
-    '_new_dbh',
-    sub {
-        my $dbh = DBI->connect( 'DBI:Mock:', '', '' )
-          || die "Cannot create handle: $DBI::errstr\n";
-        return $dbh;
-    }
-);
+use_ok('C4::Biblio');
+
+use Test::DBIx::Class {
+    schema_class => 'Koha::Schema',
+    connect_info => ['dbi:SQLite:dbname=:memory:','',''],
+    connect_opts => { name_sep => '.', quote_char => '`', },
+    fixture_class => '::Populate',
+}, 'Biblio' ;
+
+sub fixtures {
+    my ( $data ) = @_;
+    fixtures_ok [
+        Biblio => [
+            [ qw/ biblionumber datecreated timestamp  / ],
+            @$data,
+        ],
+    ], 'add fixtures';
+}
+
+my $db = Test::MockModule->new('Koha::Database');
+$db->mock( _new_schema => sub { return Schema(); } );
 
 my @arr;
 my $ret;
@@ -145,7 +162,7 @@ ok( !defined $ret, 'GetMarcHosts returns undef if not passed rec');
 
 my $hash_ref;
 
-warning_is { $hash_ref = TransformMarcToKoha(undef, undef) }
+warning_is { $hash_ref = TransformMarcToKoha( undef) }
            { carped => 'TransformMarcToKoha called with undefined record'},
            "TransformMarcToKoha returns carped warning on undef record";