View | Details | Raw Unified | Return to bug 17950
Collapse All | Expand All

(-)a/t/db_dependent/Authorities/Merge.t (-24 / +24 lines)
Lines 28-47 t::lib::Mocks::mock_preference( 'marcflavour', $marcflavour ) if $marcflavour; Link Here
28
28
29
my $schema  = Koha::Database->new->schema;
29
my $schema  = Koha::Database->new->schema;
30
$schema->storage->txn_begin;
30
$schema->storage->txn_begin;
31
my $dbh = C4::Context->dbh;
32
31
33
# Some advanced mocking :)
32
# Global variables, mocking and framework modifications
34
my ( @zebrarecords, $index );
33
our ( @zebrarecords, $index );
35
my $context_mod = Test::MockModule->new( 'C4::Context' );
34
my $mocks = set_mocks();
36
my $search_mod = Test::MockModule->new( 'C4::Search' );
35
our ( $authtype1, $authtype2 ) = modify_framework();
37
my $zoom_mod = Test::MockModule->new( 'ZOOM::Query::CCL2RPN', no_auto => 1 );
38
my $conn_obj = Test::MockObject->new;
39
my $zoom_obj = Test::MockObject->new;
40
my $zoom_record_obj = Test::MockObject->new;
41
set_mocks();
42
43
# Framework operations
44
my ( $authtype1, $authtype2 ) = modify_framework();
45
36
46
subtest 'Test merge A1 to A2 (within same authtype)' => sub {
37
subtest 'Test merge A1 to A2 (within same authtype)' => sub {
47
# Tests originate from bug 11700
38
# Tests originate from bug 11700
Lines 229-247 sub set_mocks { Link Here
229
    # Mock ZOOM objects: They do nothing actually
220
    # Mock ZOOM objects: They do nothing actually
230
    # Get new_record_from_zebra to return the records
221
    # Get new_record_from_zebra to return the records
231
222
232
    $context_mod->mock( 'Zconn', sub { $conn_obj; } );
223
    my $mocks;
233
    $search_mod->mock( 'new_record_from_zebra', sub {
224
    $mocks->{context_mod} = Test::MockModule->new( 'C4::Context' );
225
    $mocks->{search_mod} = Test::MockModule->new( 'C4::Search' );
226
    $mocks->{zoom_mod} = Test::MockModule->new( 'ZOOM::Query::CCL2RPN', no_auto => 1 );
227
    $mocks->{conn_obj} = Test::MockObject->new;
228
    $mocks->{zoom_obj} = Test::MockObject->new;
229
    $mocks->{zoom_record_obj} = Test::MockObject->new;
230
231
    $mocks->{context_mod}->mock( 'Zconn', sub { $mocks->{conn_obj}; } );
232
    $mocks->{search_mod}->mock( 'new_record_from_zebra', sub {
234
         return if $index >= @zebrarecords;
233
         return if $index >= @zebrarecords;
235
         return $zebrarecords[ $index++ ];
234
         return $zebrarecords[ $index++ ];
236
    });
235
    });
237
    $zoom_mod->mock( 'new', sub {} );
236
    $mocks->{zoom_mod}->mock( 'new', sub {} );
238
237
239
    $conn_obj->mock( 'search', sub { $zoom_obj; } );
238
    $mocks->{conn_obj}->mock( 'search', sub { $mocks->{zoom_obj}; } );
240
    $zoom_obj->mock( 'destroy', sub {} );
239
    $mocks->{zoom_obj}->mock( 'destroy', sub {} );
241
    $zoom_obj->mock( 'record', sub { $zoom_record_obj; } );
240
    $mocks->{zoom_obj}->mock( 'record', sub { $mocks->{zoom_record_obj}; } );
242
    $zoom_obj->mock( 'search', sub {} );
241
    $mocks->{zoom_obj}->mock( 'search', sub {} );
243
    $zoom_obj->mock( 'size', sub { @zebrarecords } );
242
    $mocks->{zoom_obj}->mock( 'size', sub { @zebrarecords } );
244
    $zoom_record_obj->mock( 'raw', sub {} );
243
    $mocks->{zoom_record_obj}->mock( 'raw', sub {} );
244
245
    return $mocks;
245
}
246
}
246
247
247
sub modify_framework {
248
sub modify_framework {
248
- 

Return to bug 17950