Bug 18720: Use exception instead of die in GetBasketAsCsv

Test plan:
prove t/db_dependent/Acquisition/GetBasketAsCSV.t

Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 77ea468639)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 1ee7a438b2)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This commit is contained in:
Josef Moravec 2017-06-05 11:55:12 +02:00 committed by Fridolin Somers
parent 74e175bb14
commit fc014eb5be
2 changed files with 13 additions and 4 deletions

View File

@ -31,6 +31,7 @@ use Koha::DateUtils qw( dt_from_string output_pref );
use Koha::Acquisition::Booksellers;
use Koha::Acquisition::Orders;
use Koha::Biblios;
use Koha::Exceptions;
use Koha::Items;
use Koha::Number::Price;
use Koha::Libraries;
@ -293,7 +294,7 @@ sub GetBasketAsCSV {
my @rows;
if ($csv_profile_id) {
my $csv_profile = Koha::CsvProfiles->find( $csv_profile_id );
die "There is no valid csv profile given" unless $csv_profile;
Koha::Exceptions::ObjectNotFound->throw( 'There is no valid csv profile given') unless $csv_profile;
my $csv = Text::CSV_XS->new({'quote_char'=>'"','escape_char'=>'"','sep_char'=>$csv_profile->csv_separator,'binary'=>1});
my $csv_profile_content = $csv_profile->content;

View File

@ -4,15 +4,16 @@ use Modern::Perl;
use CGI;
use Test::More tests => 3;
use Test::More tests => 4;
use C4::Acquisition;
use C4::Biblio;
use Koha::Database;
use Koha::CsvProfile;
use Koha::CsvProfiles;
use Koha::Acquisition::Orders;
use t::lib::Mocks;
use Try::Tiny;
my $schema = Koha::Database->new()->schema();
$schema->storage->txn_begin();
@ -82,4 +83,11 @@ is($basket_csv3, 'biblio.author,title,quantity
"King, Stephen","Test Record",3
', 'CSV should be generated with user profile which does not have all headers defined');
try {
my $basket_csv4 = C4::Acquisition::GetBasketAsCSV($basketno, $query, 'non_existant_profile_id');
fail("It is not possible to export basket using non-existant profile");
} catch {
ok($_->isa("Koha::Exceptions::ObjectNotFound"), "Using non-existant profile should throw ObjectNotFound exception");
};
$schema->storage->txn_rollback();