Lines 28-33
use Test::Warn;
Link Here
|
28 |
use t::lib::Mocks; |
28 |
use t::lib::Mocks; |
29 |
use t::lib::TestBuilder; |
29 |
use t::lib::TestBuilder; |
30 |
|
30 |
|
|
|
31 |
use Mojo::JSON qw(encode_json); |
32 |
|
31 |
use C4::Auth; |
33 |
use C4::Auth; |
32 |
use C4::Circulation qw( AddIssue AddReturn ); |
34 |
use C4::Circulation qw( AddIssue AddReturn ); |
33 |
|
35 |
|
Lines 1646-1690
subtest 'list() tests' => sub {
Link Here
|
1646 |
$record->leader(' nam 3 4500'); |
1648 |
$record->leader(' nam 3 4500'); |
1647 |
$biblio->metadata->metadata($record->as_xml_record('UNIMARC'))->store; |
1649 |
$biblio->metadata->metadata($record->as_xml_record('UNIMARC'))->store; |
1648 |
|
1650 |
|
1649 |
my $biblionumber1 = $biblio->biblionumber; |
1651 |
my $biblio_id_1 = $biblio->id; |
1650 |
|
1652 |
|
1651 |
t::lib::Mocks::mock_preference('marcflavour', 'MARC21'); |
1653 |
t::lib::Mocks::mock_preference('marcflavour', 'MARC21'); |
1652 |
my $biblionumber2 = $builder->build_sample_biblio->biblionumber; |
1654 |
my $biblio_id_2 = $builder->build_sample_biblio->id; |
1653 |
|
1655 |
|
1654 |
my $search = |
1656 |
my $query = encode_json( [ { biblio_id => $biblio_id_1 }, { biblio_id => $biblio_id_2 } ] ); |
1655 |
"[{\"biblionumber\": \"$biblionumber1\"}, {\"biblionumber\": \"$biblionumber2\"}]"; |
1657 |
|
1656 |
$t->get_ok( |
1658 |
$t->get_ok("//$userid:$password@/api/v1/biblios?q=$query")->status_is(403); |
1657 |
"//$userid:$password@/api/v1/biblios/" => { 'x-koha-query' => $search } |
|
|
1658 |
)->status_is(403); |
1659 |
|
1659 |
|
1660 |
$patron->flags(4)->store; |
1660 |
$patron->flags(4)->store; |
1661 |
|
1661 |
|
1662 |
$t->get_ok( "//$userid:$password@/api/v1/biblios/" => |
1662 |
$t->get_ok( "//$userid:$password@/api/v1/biblios?q=$query" => { Accept => 'application/weird+format' } ) |
1663 |
{ Accept => 'application/weird+format', 'x-koha-query' => $search } ) |
1663 |
->status_is(400); |
1664 |
->status_is(400); |
|
|
1665 |
|
1664 |
|
1666 |
$t->get_ok( "//$userid:$password@/api/v1/biblios/" => |
1665 |
$t->get_ok( "//$userid:$password@/api/v1/biblios?q=$query" => { Accept => 'application/json' } )->status_is(200); |
1667 |
{ Accept => 'application/json', 'x-koha-query' => $search } ) |
|
|
1668 |
->status_is(200); |
1669 |
|
1666 |
|
1670 |
my $result = $t->get_ok( "//$userid:$password@/api/v1/biblios/" => |
1667 |
my $result = $t->get_ok( "//$userid:$password@/api/v1/biblios?q=$query" => { Accept => 'application/marcxml+xml' } ) |
1671 |
{ Accept => 'application/marcxml+xml', 'x-koha-query' => $search } ) |
1668 |
->status_is(200)->tx->res->body; |
1672 |
->status_is(200)->tx->res->body; |
|
|
1673 |
|
1669 |
|
1674 |
my $encoded_title = Encode::encode( "UTF-8", $title_with_diacritics ); |
1670 |
my $encoded_title = Encode::encode( "UTF-8", $title_with_diacritics ); |
1675 |
like( $result, qr/\Q$encoded_title/, "The title is not double encoded" ); |
1671 |
like( $result, qr/\Q$encoded_title/, "The title is not double encoded" ); |
1676 |
|
1672 |
|
1677 |
$t->get_ok( "//$userid:$password@/api/v1/biblios/" => |
1673 |
$t->get_ok( "//$userid:$password@/api/v1/biblios?q=$query" => { Accept => 'application/marc-in-json' } ) |
1678 |
{ Accept => 'application/marc-in-json', 'x-koha-query' => $search } ) |
1674 |
->status_is(200); |
1679 |
->status_is(200); |
|
|
1680 |
|
1675 |
|
1681 |
$t->get_ok( "//$userid:$password@/api/v1/biblios/" => |
1676 |
$t->get_ok( "//$userid:$password@/api/v1/biblios?q=$query" => { Accept => 'application/marc' } )->status_is(200); |
1682 |
{ Accept => 'application/marc', 'x-koha-query' => $search } ) |
|
|
1683 |
->status_is(200); |
1684 |
|
1677 |
|
1685 |
$t->get_ok( "//$userid:$password@/api/v1/biblios/" => |
1678 |
$t->get_ok( "//$userid:$password@/api/v1/biblios?q=$query" => { Accept => 'text/plain' } )->status_is(200); |
1686 |
{ Accept => 'text/plain', 'x-koha-query' => $search } ) |
|
|
1687 |
->status_is(200); |
1688 |
|
1679 |
|
1689 |
$schema->storage->txn_rollback; |
1680 |
$schema->storage->txn_rollback; |
1690 |
}; |
1681 |
}; |
Lines 1801-1804
subtest 'update_item() tests' => sub {
Link Here
|
1801 |
->json_is('/replacement_price', 30); |
1792 |
->json_is('/replacement_price', 30); |
1802 |
|
1793 |
|
1803 |
$schema->storage->txn_rollback; |
1794 |
$schema->storage->txn_rollback; |
1804 |
}; |
1795 |
}; |
1805 |
- |
|
|