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

(-)a/t/db_dependent/api/v1/acquisitions_baskets.t (-1 / +51 lines)
Lines 18-24 Link Here
18
use Modern::Perl;
18
use Modern::Perl;
19
19
20
use Test::NoWarnings;
20
use Test::NoWarnings;
21
use Test::More tests => 3;
21
use Test::More tests => 4;
22
use Test::Mojo;
22
use Test::Mojo;
23
23
24
use t::lib::TestBuilder;
24
use t::lib::TestBuilder;
Lines 97-99 subtest 'list() tests' => sub { Link Here
97
97
98
    $schema->storage->txn_rollback;
98
    $schema->storage->txn_rollback;
99
};
99
};
100
101
subtest 'add() tests' => sub {
102
103
    plan tests => 14;
104
105
    $schema->storage->txn_begin;
106
107
    my $vendor = $builder->build_object(
108
        {
109
            class => 'Koha::Acquisition::Booksellers',
110
        }
111
    );
112
    my $patron = $builder->build_object(
113
        {
114
            class => 'Koha::Patrons',
115
            value => { flags => 0 }
116
        }
117
    );
118
    my $password = 'thePassword123';
119
    $patron->set_password( { password => $password, skip_validation => 1 } );
120
    my $userid = $patron->userid;
121
122
    my $url = "//$userid:$password@/api/v1/acquisitions/baskets";
123
124
    $t->post_ok( $url, json => {} )->status_is(403);
125
126
    $schema->resultset('UserPermission')->create(
127
        {
128
            borrowernumber => $patron->borrowernumber,
129
            module_bit     => 11,
130
            code           => 'order_manage',
131
        }
132
    );
133
134
    $t->post_ok( $url, json => {} )->status_is(400);
135
136
    $t->post_ok( $url, json => { vendor_id => $vendor->id } )->status_is(201)->json_has('/basket_id')
137
        ->json_is( '/vendor_id', $vendor->id );
138
139
    my $basket = {
140
        vendor_id   => $vendor->id,
141
        name        => 'Basket #1',
142
        vendor_note => 'Vendor note',
143
    };
144
    $t->post_ok( $url, json => $basket )->status_is(201)->json_has('/basket_id')
145
        ->json_is( '/vendor_id',   $basket->{vendor_id} )->json_is( '/name', $basket->{name} )
146
        ->json_is( '/vendor_note', $basket->{vendor_note} );
147
148
    $schema->storage->txn_rollback;
149
};
(-)a/t/db_dependent/api/v1/acquisitions_baskets/post.t (-64 lines)
Lines 1-63 Link Here
1
#!/usr/bin/env perl
2
3
use Modern::Perl;
4
5
use Test::More tests => 14;
6
use Test::Mojo;
7
8
use t::lib::Mocks;
9
use t::lib::TestBuilder;
10
11
use Koha::Database;
12
13
my $schema  = Koha::Database->new->schema;
14
my $builder = t::lib::TestBuilder->new;
15
16
t::lib::Mocks::mock_preference( 'RESTBasicAuth', 1 );
17
18
my $t = Test::Mojo->new('Koha::REST::V1');
19
20
$schema->storage->txn_begin;
21
22
my $bookseller = $builder->build_object(
23
    {
24
        class => 'Koha::Acquisition::Booksellers',
25
    }
26
);
27
my $patron = $builder->build_object(
28
    {
29
        class => 'Koha::Patrons',
30
        value => { flags => 0 }
31
    }
32
);
33
my $password = 'thePassword123';
34
$patron->set_password( { password => $password, skip_validation => 1 } );
35
my $userid = $patron->userid;
36
37
my $url = "//$userid:$password@/api/v1/acquisitions/baskets";
38
39
$t->post_ok( $url, json => {} )->status_is(403);
40
41
$schema->resultset('UserPermission')->create(
42
    {
43
        borrowernumber => $patron->borrowernumber,
44
        module_bit     => 11,
45
        code           => 'order_manage',
46
    }
47
);
48
49
$t->post_ok( $url, json => {} )->status_is(400);
50
51
$t->post_ok( $url, json => { vendor_id => $bookseller->id } )->status_is(201)->json_has('/basket_id')
52
    ->json_is( '/vendor_id', $bookseller->id );
53
54
my $basket = {
55
    vendor_id   => $bookseller->id,
56
    name        => 'Basket #1',
57
    vendor_note => 'Vendor note',
58
};
59
$t->post_ok( $url, json => $basket )->status_is(201)->json_has('/basket_id')
60
    ->json_is( '/vendor_id',   $basket->{vendor_id} )->json_is( '/name', $basket->{name} )
61
    ->json_is( '/vendor_note', $basket->{vendor_note} );
62
63
$schema->storage->txn_rollback;
64
- 

Return to bug 29668