Bug 37963: (QA follow-up) Tidy
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5b51ef78d4)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
This commit is contained in:
parent
7baba70b69
commit
209b685871
|
|
@ -180,7 +180,7 @@ sub harvest_sushi {
|
|||
$ua->agent( 'Koha/' . Koha::version() );
|
||||
my $response = $ua->simple_request($request);
|
||||
|
||||
my $result = decode_json( $response->decoded_content );
|
||||
my $result = decode_json( $response->decoded_content );
|
||||
|
||||
if ( $response->code >= 400 ) {
|
||||
|
||||
|
|
@ -459,10 +459,10 @@ sub _sushi_errors {
|
|||
my ( $self, $decoded_response ) = @_;
|
||||
|
||||
my $severity = $decoded_response->{Severity} // $decoded_response->{severity};
|
||||
my $message = $decoded_response->{Message} // $decoded_response->{message};
|
||||
my $code = $decoded_response->{Code} // $decoded_response->{code};
|
||||
my $message = $decoded_response->{Message} // $decoded_response->{message};
|
||||
my $code = $decoded_response->{Code} // $decoded_response->{code};
|
||||
|
||||
if ( $severity ) {
|
||||
if ($severity) {
|
||||
$self->{job_callbacks}->{add_message_callback}->(
|
||||
{
|
||||
type => 'error',
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ use Koha::BackgroundJobs;
|
|||
use Koha::BackgroundJob::ErmSushiHarvester;
|
||||
|
||||
use File::Basename qw( dirname );
|
||||
use JSON qw( decode_json );
|
||||
use JSON qw( decode_json );
|
||||
use File::Slurp;
|
||||
|
||||
use t::lib::Mocks;
|
||||
|
|
@ -75,28 +75,42 @@ subtest 'invalid_date_arguments() tests' => sub {
|
|||
$schema->storage->txn_begin;
|
||||
|
||||
my $ua = Test::MockModule->new('LWP::UserAgent');
|
||||
$ua->mock('simple_request', sub {
|
||||
return mock_sushi_response({'error'=>'invalid_date_arguments'});
|
||||
});
|
||||
$ua->mock(
|
||||
'simple_request',
|
||||
sub {
|
||||
return mock_sushi_response( { 'error' => 'invalid_date_arguments' } );
|
||||
}
|
||||
);
|
||||
|
||||
my $usage_data_provider = $builder->build_object(
|
||||
{ class => 'Koha::ERM::EUsage::UsageDataProviders', value => { name => 'TestProvider' } } );
|
||||
|
||||
my $job_args = {
|
||||
ud_provider_id => $usage_data_provider->erm_usage_data_provider_id,
|
||||
report_type => 'TR_J1',
|
||||
begin_date => '2023-08-01',
|
||||
end_date => '2023-09-30',
|
||||
ud_provider_name => $usage_data_provider->name,
|
||||
};
|
||||
ud_provider_id => $usage_data_provider->erm_usage_data_provider_id,
|
||||
report_type => 'TR_J1',
|
||||
begin_date => '2023-08-01',
|
||||
end_date => '2023-09-30',
|
||||
ud_provider_name => $usage_data_provider->name,
|
||||
};
|
||||
|
||||
my $job_id = Koha::BackgroundJob::ErmSushiHarvester->new->enqueue($job_args);
|
||||
my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
|
||||
$job->process( $job_args );
|
||||
my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
|
||||
$job->process($job_args);
|
||||
|
||||
is( $job->{messages}[0]->{message}, decode_json($sushi_response_errors->{invalid_date_arguments})->{severity} . ' - ' . decode_json($sushi_response_errors->{invalid_date_arguments})->{message},'SUSHI error invalid_date_arguments is stored on job messages correctly' );
|
||||
is( $job->{messages}[0]->{type},'error','SUSHI error invalid_date_arguments is stored on job messages correctly' );
|
||||
is( $job->{messages}[0]->{code},decode_json($sushi_response_errors->{invalid_date_arguments})->{code},'SUSHI error invalid_date_arguments is stored on job messages correctly' );
|
||||
is(
|
||||
$job->{messages}[0]->{message},
|
||||
decode_json( $sushi_response_errors->{invalid_date_arguments} )->{severity} . ' - '
|
||||
. decode_json( $sushi_response_errors->{invalid_date_arguments} )->{message},
|
||||
'SUSHI error invalid_date_arguments is stored on job messages correctly'
|
||||
);
|
||||
is(
|
||||
$job->{messages}[0]->{type}, 'error',
|
||||
'SUSHI error invalid_date_arguments is stored on job messages correctly'
|
||||
);
|
||||
is(
|
||||
$job->{messages}[0]->{code}, decode_json( $sushi_response_errors->{invalid_date_arguments} )->{code},
|
||||
'SUSHI error invalid_date_arguments is stored on job messages correctly'
|
||||
);
|
||||
|
||||
$schema->storage->txn_rollback;
|
||||
};
|
||||
|
|
@ -108,28 +122,42 @@ subtest 'invalid_api_key() tests' => sub {
|
|||
$schema->storage->txn_begin;
|
||||
|
||||
my $ua = Test::MockModule->new('LWP::UserAgent');
|
||||
$ua->mock('simple_request', sub {
|
||||
return mock_sushi_response({'error'=>'invalid_api_key', 'code'=>401});
|
||||
});
|
||||
$ua->mock(
|
||||
'simple_request',
|
||||
sub {
|
||||
return mock_sushi_response( { 'error' => 'invalid_api_key', 'code' => 401 } );
|
||||
}
|
||||
);
|
||||
|
||||
my $usage_data_provider = $builder->build_object(
|
||||
{ class => 'Koha::ERM::EUsage::UsageDataProviders', value => { name => 'TestProvider' } } );
|
||||
|
||||
my $job_args = {
|
||||
ud_provider_id => $usage_data_provider->erm_usage_data_provider_id,
|
||||
report_type => 'TR_J1',
|
||||
begin_date => '2023-08-01',
|
||||
end_date => '2023-09-30',
|
||||
ud_provider_name => $usage_data_provider->name,
|
||||
};
|
||||
ud_provider_id => $usage_data_provider->erm_usage_data_provider_id,
|
||||
report_type => 'TR_J1',
|
||||
begin_date => '2023-08-01',
|
||||
end_date => '2023-09-30',
|
||||
ud_provider_name => $usage_data_provider->name,
|
||||
};
|
||||
|
||||
my $job_id = Koha::BackgroundJob::ErmSushiHarvester->new->enqueue($job_args);
|
||||
my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
|
||||
$job->process( $job_args );
|
||||
my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
|
||||
$job->process($job_args);
|
||||
|
||||
is( $job->{messages}[0]->{message}, decode_json($sushi_response_errors->{invalid_api_key})->{Severity} . ' - ' . decode_json($sushi_response_errors->{invalid_api_key})->{Message},'SUSHI error invalid_date_arguments is stored on job messages correctly' );
|
||||
is( $job->{messages}[0]->{type},'error','SUSHI error invalid_date_arguments is stored on job messages correctly' );
|
||||
is( $job->{messages}[0]->{code},decode_json($sushi_response_errors->{invalid_api_key})->{Code},'SUSHI error invalid_date_arguments is stored on job messages correctly' );
|
||||
is(
|
||||
$job->{messages}[0]->{message},
|
||||
decode_json( $sushi_response_errors->{invalid_api_key} )->{Severity} . ' - '
|
||||
. decode_json( $sushi_response_errors->{invalid_api_key} )->{Message},
|
||||
'SUSHI error invalid_date_arguments is stored on job messages correctly'
|
||||
);
|
||||
is(
|
||||
$job->{messages}[0]->{type}, 'error',
|
||||
'SUSHI error invalid_date_arguments is stored on job messages correctly'
|
||||
);
|
||||
is(
|
||||
$job->{messages}[0]->{code}, decode_json( $sushi_response_errors->{invalid_api_key} )->{Code},
|
||||
'SUSHI error invalid_date_arguments is stored on job messages correctly'
|
||||
);
|
||||
|
||||
$schema->storage->txn_rollback;
|
||||
};
|
||||
|
|
@ -138,16 +166,28 @@ sub mock_sushi_response {
|
|||
my ($args) = @_;
|
||||
my $response = Test::MockObject->new();
|
||||
|
||||
$response->mock('code', sub {
|
||||
return $args->{code} || 200;
|
||||
});
|
||||
$response->mock('is_error', sub {
|
||||
return 0;
|
||||
});
|
||||
$response->mock('is_redirect', sub {
|
||||
return 0;
|
||||
});
|
||||
$response->mock('decoded_content', sub {
|
||||
return $sushi_response_errors->{$args->{error}};
|
||||
});
|
||||
}
|
||||
$response->mock(
|
||||
'code',
|
||||
sub {
|
||||
return $args->{code} || 200;
|
||||
}
|
||||
);
|
||||
$response->mock(
|
||||
'is_error',
|
||||
sub {
|
||||
return 0;
|
||||
}
|
||||
);
|
||||
$response->mock(
|
||||
'is_redirect',
|
||||
sub {
|
||||
return 0;
|
||||
}
|
||||
);
|
||||
$response->mock(
|
||||
'decoded_content',
|
||||
sub {
|
||||
return $sushi_response_errors->{ $args->{error} };
|
||||
}
|
||||
);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue