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

(-)a/t/db_dependent/Koha/BackgroundJob.t (-2 / +53 lines)
Lines 17-23 Link Here
17
17
18
use Modern::Perl;
18
use Modern::Perl;
19
19
20
use Test::More tests => 4;
20
use Test::More tests => 5;
21
use Test::MockModule;
21
use Test::Exception;
22
use Test::Exception;
22
23
23
use Koha::Database;
24
use Koha::Database;
Lines 28-33 use JSON qw( decode_json encode_json ); Link Here
28
29
29
use t::lib::Mocks;
30
use t::lib::Mocks;
30
use t::lib::TestBuilder;
31
use t::lib::TestBuilder;
32
use t::lib::Koha::BackgroundJob::BatchTest;
31
33
32
my $schema  = Koha::Database->new->schema;
34
my $schema  = Koha::Database->new->schema;
33
my $builder = t::lib::TestBuilder->new;
35
my $builder = t::lib::TestBuilder->new;
Lines 172-177 subtest 'start(), step() and finish() tests' => sub { Link Here
172
    $schema->storage->txn_rollback;
174
    $schema->storage->txn_rollback;
173
};
175
};
174
176
177
subtest 'process tests' => sub {
178
179
    plan tests => 4;
180
181
    $schema->storage->txn_begin;
182
183
    C4::Context->interface('intranet');
184
    my $patron = $builder->build_object( { class => 'Koha::Patrons' } );
185
    t::lib::Mocks::mock_userenv( { patron => $patron } );
186
    my $job_context = {
187
        number        => $patron->borrowernumber,
188
        id            => $patron->userid,
189
        cardnumber    => $patron->cardnumber,
190
        firstname     => $patron->firstname,
191
        surname       => $patron->surname,
192
        branch        => $patron->library->branchcode,
193
        branchname    => $patron->library->branchname,
194
        flags         => $patron->flags,
195
        emailaddress  => $patron->email,
196
        register_id   => undef,
197
        register_name => undef,
198
        shibboleth    => undef,
199
        desk_id       => undef,
200
        desk_name     => undef,
201
    };
202
    
203
    my $background_job_module = Test::MockModule->new('Koha::BackgroundJob');
204
    $background_job_module->mock(
205
        'type_to_class_mapping',
206
        sub {
207
            return { batch_test => 't::lib::Koha::BackgroundJob::BatchTest' };
208
        }
209
    );
210
211
    my $job_id = t::lib::Koha::BackgroundJob::BatchTest->new->enqueue(
212
        { size => 10, a => 'aaa', b => 'bbb' } );
213
    my $job    = Koha::BackgroundJobs->find($job_id);
214
215
    C4::Context->_new_userenv(-1);
216
    C4::Context->interface('opac');
217
    is( C4::Context->userenv, undef, "Userenv unset prior to calling process");
218
    is( C4::Context->interface, 'opac', "Interface set to opac prior to calling process");
219
220
    $job->process();
221
    is_deeply( C4::Context->userenv, $job_context, "Userenv set from job context on process" );
222
    is_deeply( C4::Context->interface, 'intranet', "Interface set from job context on process" );
223
224
    $schema->storage->txn_rollback;
225
};
226
175
subtest 'decoded_data() and set_encoded_data() tests' => sub {
227
subtest 'decoded_data() and set_encoded_data() tests' => sub {
176
228
177
    plan tests => 3;
229
    plan tests => 3;
178
- 

Return to bug 30889