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

(-)a/Koha/REST/Plugin/Objects.pm (-6 / +1 lines)
Lines 197-204 controller, and thus shouldn't be called twice in it. Link Here
197
            }
197
            }
198
198
199
            if (   defined $reserved_params->{q}
199
            if (   defined $reserved_params->{q}
200
                || defined $reserved_params->{query}
200
                || defined $reserved_params->{query} )
201
                || defined $reserved_params->{'x-koha-query'} )
202
            {
201
            {
203
                $filtered_params //= {};
202
                $filtered_params //= {};
204
203
Lines 226-235 controller, and thus shouldn't be called twice in it. Link Here
226
                      if $reserved_params->{q};
225
                      if $reserved_params->{q};
227
                }
226
                }
228
227
229
                push @query_params_array,
230
                  $json->decode( $reserved_params->{'x-koha-query'} )
231
                  if defined $reserved_params->{'x-koha-query'};
232
233
                my $query_params;
228
                my $query_params;
234
229
235
                if ( scalar(@query_params_array) > 1 ) {
230
                if ( scalar(@query_params_array) > 1 ) {
(-)a/Koha/REST/Plugin/Query.pm (-1 / +1 lines)
Lines 315-321 reference: https://metacpan.org/changes/distribution/JSON-Validator#L14 Link Here
315
315
316
sub _reserved_words {
316
sub _reserved_words {
317
317
318
    my @reserved_words = qw( _match _order_by _order_by[] _page _per_page q query x-koha-query x-koha-request-id x-koha-embed);
318
    my @reserved_words = qw( _match _order_by _order_by[] _page _per_page q query x-koha-request-id x-koha-embed);
319
    return \@reserved_words;
319
    return \@reserved_words;
320
}
320
}
321
321
(-)a/api/v1/swagger/paths/acquisitions_baskets.yaml (-1 lines)
Lines 14-20 Link Here
14
      - $ref: "../swagger.yaml#/parameters/per_page"
14
      - $ref: "../swagger.yaml#/parameters/per_page"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_header"
18
      - name: x-koha-embed
17
      - name: x-koha-embed
19
        in: header
18
        in: header
20
        required: false
19
        required: false
(-)a/api/v1/swagger/paths/acquisitions_funds.yaml (-3 lines)
Lines 25-31 Link Here
25
      - $ref: "../swagger.yaml#/parameters/per_page"
25
      - $ref: "../swagger.yaml#/parameters/per_page"
26
      - $ref: "../swagger.yaml#/parameters/q_param"
26
      - $ref: "../swagger.yaml#/parameters/q_param"
27
      - $ref: "../swagger.yaml#/parameters/q_body"
27
      - $ref: "../swagger.yaml#/parameters/q_body"
28
      - $ref: "../swagger.yaml#/parameters/q_header"
29
      - $ref: "../swagger.yaml#/parameters/request_id_header"
28
      - $ref: "../swagger.yaml#/parameters/request_id_header"
30
    responses:
29
    responses:
31
      "200":
30
      "200":
Lines 75-81 Link Here
75
      - $ref: "../swagger.yaml#/parameters/per_page"
74
      - $ref: "../swagger.yaml#/parameters/per_page"
76
      - $ref: "../swagger.yaml#/parameters/q_param"
75
      - $ref: "../swagger.yaml#/parameters/q_param"
77
      - $ref: "../swagger.yaml#/parameters/q_body"
76
      - $ref: "../swagger.yaml#/parameters/q_body"
78
      - $ref: "../swagger.yaml#/parameters/q_header"
79
      - name: x-koha-embed
77
      - name: x-koha-embed
80
        in: header
78
        in: header
81
        required: false
79
        required: false
Lines 128-134 Link Here
128
      - $ref: "../swagger.yaml#/parameters/per_page"
126
      - $ref: "../swagger.yaml#/parameters/per_page"
129
      - $ref: "../swagger.yaml#/parameters/q_param"
127
      - $ref: "../swagger.yaml#/parameters/q_param"
130
      - $ref: "../swagger.yaml#/parameters/q_body"
128
      - $ref: "../swagger.yaml#/parameters/q_body"
131
      - $ref: "../swagger.yaml#/parameters/q_header"
132
      - name: x-koha-embed
129
      - name: x-koha-embed
133
        in: header
130
        in: header
134
        required: false
131
        required: false
(-)a/api/v1/swagger/paths/acquisitions_orders.yaml (-1 lines)
Lines 41-47 Link Here
41
      - $ref: "../swagger.yaml#/parameters/per_page"
41
      - $ref: "../swagger.yaml#/parameters/per_page"
42
      - $ref: "../swagger.yaml#/parameters/q_param"
42
      - $ref: "../swagger.yaml#/parameters/q_param"
43
      - $ref: "../swagger.yaml#/parameters/q_body"
43
      - $ref: "../swagger.yaml#/parameters/q_body"
44
      - $ref: "../swagger.yaml#/parameters/q_header"
45
      - $ref: "../swagger.yaml#/parameters/request_id_header"
44
      - $ref: "../swagger.yaml#/parameters/request_id_header"
46
      - name: x-koha-embed
45
      - name: x-koha-embed
47
        in: header
46
        in: header
(-)a/api/v1/swagger/paths/acquisitions_vendors.yaml (-1 lines)
Lines 25-31 Link Here
25
      - $ref: "../swagger.yaml#/parameters/per_page"
25
      - $ref: "../swagger.yaml#/parameters/per_page"
26
      - $ref: "../swagger.yaml#/parameters/q_param"
26
      - $ref: "../swagger.yaml#/parameters/q_param"
27
      - $ref: "../swagger.yaml#/parameters/q_body"
27
      - $ref: "../swagger.yaml#/parameters/q_body"
28
      - $ref: "../swagger.yaml#/parameters/q_header"
29
      - $ref: "../swagger.yaml#/parameters/request_id_header"
28
      - $ref: "../swagger.yaml#/parameters/request_id_header"
30
      - name: x-koha-embed
29
      - name: x-koha-embed
31
        in: header
30
        in: header
(-)a/api/v1/swagger/paths/advancededitormacros.yaml (-1 lines)
Lines 35-41 Link Here
35
      - $ref: "../swagger.yaml#/parameters/per_page"
35
      - $ref: "../swagger.yaml#/parameters/per_page"
36
      - $ref: "../swagger.yaml#/parameters/q_param"
36
      - $ref: "../swagger.yaml#/parameters/q_param"
37
      - $ref: "../swagger.yaml#/parameters/q_body"
37
      - $ref: "../swagger.yaml#/parameters/q_body"
38
      - $ref: "../swagger.yaml#/parameters/q_header"
39
      - $ref: "../swagger.yaml#/parameters/request_id_header"
38
      - $ref: "../swagger.yaml#/parameters/request_id_header"
40
    responses:
39
    responses:
41
      "200":
40
      "200":
(-)a/api/v1/swagger/paths/auth.yaml (-4 lines)
Lines 142-148 Link Here
142
      - $ref: ../swagger.yaml#/parameters/per_page
142
      - $ref: ../swagger.yaml#/parameters/per_page
143
      - $ref: ../swagger.yaml#/parameters/q_param
143
      - $ref: ../swagger.yaml#/parameters/q_param
144
      - $ref: ../swagger.yaml#/parameters/q_body
144
      - $ref: ../swagger.yaml#/parameters/q_body
145
      - $ref: ../swagger.yaml#/parameters/q_header
146
      - $ref: ../swagger.yaml#/parameters/request_id_header
145
      - $ref: ../swagger.yaml#/parameters/request_id_header
147
      - name: x-koha-embed
146
      - name: x-koha-embed
148
        in: header
147
        in: header
Lines 410-416 Link Here
410
      - $ref: ../swagger.yaml#/parameters/per_page
409
      - $ref: ../swagger.yaml#/parameters/per_page
411
      - $ref: ../swagger.yaml#/parameters/q_param
410
      - $ref: ../swagger.yaml#/parameters/q_param
412
      - $ref: ../swagger.yaml#/parameters/q_body
411
      - $ref: ../swagger.yaml#/parameters/q_body
413
      - $ref: ../swagger.yaml#/parameters/q_header
414
      - $ref: ../swagger.yaml#/parameters/request_id_header
412
      - $ref: ../swagger.yaml#/parameters/request_id_header
415
      - name: x-koha-embed
413
      - name: x-koha-embed
416
        in: header
414
        in: header
Lines 582-588 Link Here
582
      - $ref: ../swagger.yaml#/parameters/per_page
580
      - $ref: ../swagger.yaml#/parameters/per_page
583
      - $ref: ../swagger.yaml#/parameters/q_param
581
      - $ref: ../swagger.yaml#/parameters/q_param
584
      - $ref: ../swagger.yaml#/parameters/q_body
582
      - $ref: ../swagger.yaml#/parameters/q_body
585
      - $ref: ../swagger.yaml#/parameters/q_header
586
      - $ref: ../swagger.yaml#/parameters/request_id_header
583
      - $ref: ../swagger.yaml#/parameters/request_id_header
587
      - name: x-koha-embed
584
      - name: x-koha-embed
588
        in: header
585
        in: header
Lines 850-856 Link Here
850
      - $ref: ../swagger.yaml#/parameters/per_page
847
      - $ref: ../swagger.yaml#/parameters/per_page
851
      - $ref: ../swagger.yaml#/parameters/q_param
848
      - $ref: ../swagger.yaml#/parameters/q_param
852
      - $ref: ../swagger.yaml#/parameters/q_body
849
      - $ref: ../swagger.yaml#/parameters/q_body
853
      - $ref: ../swagger.yaml#/parameters/q_header
854
      - $ref: ../swagger.yaml#/parameters/request_id_header
850
      - $ref: ../swagger.yaml#/parameters/request_id_header
855
      - name: x-koha-embed
851
      - name: x-koha-embed
856
        in: header
852
        in: header
(-)a/api/v1/swagger/paths/authorised_value_categories.yaml (-1 lines)
Lines 25-31 Link Here
25
      - $ref: "../swagger.yaml#/parameters/per_page"
25
      - $ref: "../swagger.yaml#/parameters/per_page"
26
      - $ref: "../swagger.yaml#/parameters/q_param"
26
      - $ref: "../swagger.yaml#/parameters/q_param"
27
      - $ref: "../swagger.yaml#/parameters/q_body"
27
      - $ref: "../swagger.yaml#/parameters/q_body"
28
      - $ref: "../swagger.yaml#/parameters/q_header"
29
    responses:
28
    responses:
30
      200:
29
      200:
31
        description: A list of authorised value categories
30
        description: A list of authorised value categories
(-)a/api/v1/swagger/paths/authorised_values.yaml (-1 lines)
Lines 50-56 Link Here
50
      - $ref: "../swagger.yaml#/parameters/per_page"
50
      - $ref: "../swagger.yaml#/parameters/per_page"
51
      - $ref: "../swagger.yaml#/parameters/q_param"
51
      - $ref: "../swagger.yaml#/parameters/q_param"
52
      - $ref: "../swagger.yaml#/parameters/q_body"
52
      - $ref: "../swagger.yaml#/parameters/q_body"
53
      - $ref: "../swagger.yaml#/parameters/q_header"
54
    responses:
53
    responses:
55
      200:
54
      200:
56
        description: A list of authorised values
55
        description: A list of authorised values
(-)a/api/v1/swagger/paths/authorities.yaml (-1 lines)
Lines 13-19 Link Here
13
      - $ref: "../swagger.yaml#/parameters/order_by"
13
      - $ref: "../swagger.yaml#/parameters/order_by"
14
      - $ref: "../swagger.yaml#/parameters/q_param"
14
      - $ref: "../swagger.yaml#/parameters/q_param"
15
      - $ref: "../swagger.yaml#/parameters/q_body"
15
      - $ref: "../swagger.yaml#/parameters/q_body"
16
      - $ref: "../swagger.yaml#/parameters/q_header"
17
      - $ref: "../swagger.yaml#/parameters/request_id_header"
16
      - $ref: "../swagger.yaml#/parameters/request_id_header"
18
    produces:
17
    produces:
19
      - application/json
18
      - application/json
(-)a/api/v1/swagger/paths/biblios.yaml (-5 lines)
Lines 73-79 Link Here
73
      - $ref: "../swagger.yaml#/parameters/order_by"
73
      - $ref: "../swagger.yaml#/parameters/order_by"
74
      - $ref: "../swagger.yaml#/parameters/q_param"
74
      - $ref: "../swagger.yaml#/parameters/q_param"
75
      - $ref: "../swagger.yaml#/parameters/q_body"
75
      - $ref: "../swagger.yaml#/parameters/q_body"
76
      - $ref: "../swagger.yaml#/parameters/q_header"
77
      - $ref: "../swagger.yaml#/parameters/request_id_header"
76
      - $ref: "../swagger.yaml#/parameters/request_id_header"
78
    produces:
77
    produces:
79
      - application/json
78
      - application/json
Lines 290-296 Link Here
290
      - $ref: "../swagger.yaml#/parameters/order_by"
289
      - $ref: "../swagger.yaml#/parameters/order_by"
291
      - $ref: "../swagger.yaml#/parameters/q_param"
290
      - $ref: "../swagger.yaml#/parameters/q_param"
292
      - $ref: "../swagger.yaml#/parameters/q_body"
291
      - $ref: "../swagger.yaml#/parameters/q_body"
293
      - $ref: "../swagger.yaml#/parameters/q_header"
294
      - $ref: "../swagger.yaml#/parameters/request_id_header"
292
      - $ref: "../swagger.yaml#/parameters/request_id_header"
295
      - name: x-koha-embed
293
      - name: x-koha-embed
296
        in: header
294
        in: header
Lines 354-360 Link Here
354
      - $ref: "../swagger.yaml#/parameters/per_page"
352
      - $ref: "../swagger.yaml#/parameters/per_page"
355
      - $ref: "../swagger.yaml#/parameters/q_param"
353
      - $ref: "../swagger.yaml#/parameters/q_param"
356
      - $ref: "../swagger.yaml#/parameters/q_body"
354
      - $ref: "../swagger.yaml#/parameters/q_body"
357
      - $ref: "../swagger.yaml#/parameters/q_header"
358
      - $ref: "../swagger.yaml#/parameters/request_id_header"
355
      - $ref: "../swagger.yaml#/parameters/request_id_header"
359
    consumes:
356
    consumes:
360
      - application/json
357
      - application/json
Lines 532-538 Link Here
532
      - $ref: "../swagger.yaml#/parameters/per_page"
529
      - $ref: "../swagger.yaml#/parameters/per_page"
533
      - $ref: "../swagger.yaml#/parameters/q_param"
530
      - $ref: "../swagger.yaml#/parameters/q_param"
534
      - $ref: "../swagger.yaml#/parameters/q_body"
531
      - $ref: "../swagger.yaml#/parameters/q_body"
535
      - $ref: "../swagger.yaml#/parameters/q_header"
536
    consumes:
532
    consumes:
537
      - application/json
533
      - application/json
538
    produces:
534
    produces:
Lines 636-642 Link Here
636
      - $ref: "../swagger.yaml#/parameters/per_page"
632
      - $ref: "../swagger.yaml#/parameters/per_page"
637
      - $ref: "../swagger.yaml#/parameters/q_param"
633
      - $ref: "../swagger.yaml#/parameters/q_param"
638
      - $ref: "../swagger.yaml#/parameters/q_body"
634
      - $ref: "../swagger.yaml#/parameters/q_body"
639
      - $ref: "../swagger.yaml#/parameters/q_header"
640
      - name: x-koha-embed
635
      - name: x-koha-embed
641
        in: header
636
        in: header
642
        required: false
637
        required: false
(-)a/api/v1/swagger/paths/biblios_item_groups.yaml (-1 lines)
Lines 28-34 Link Here
28
    - "$ref": "../swagger.yaml#/parameters/per_page"
28
    - "$ref": "../swagger.yaml#/parameters/per_page"
29
    - "$ref": "../swagger.yaml#/parameters/q_param"
29
    - "$ref": "../swagger.yaml#/parameters/q_param"
30
    - "$ref": "../swagger.yaml#/parameters/q_body"
30
    - "$ref": "../swagger.yaml#/parameters/q_body"
31
    - "$ref": "../swagger.yaml#/parameters/q_header"
32
    produces:
31
    produces:
33
    - application/yaml
32
    - application/yaml
34
    responses:
33
    responses:
(-)a/api/v1/swagger/paths/cash_registers.yaml (-1 lines)
Lines 16-22 Link Here
16
      - $ref: "../swagger.yaml#/parameters/per_page"
16
      - $ref: "../swagger.yaml#/parameters/per_page"
17
      - $ref: "../swagger.yaml#/parameters/q_param"
17
      - $ref: "../swagger.yaml#/parameters/q_param"
18
      - $ref: "../swagger.yaml#/parameters/q_body"
18
      - $ref: "../swagger.yaml#/parameters/q_body"
19
      - $ref: "../swagger.yaml#/parameters/q_header"
20
      - $ref: "../swagger.yaml#/parameters/request_id_header"
19
      - $ref: "../swagger.yaml#/parameters/request_id_header"
21
      - name: x-koha-embed
20
      - name: x-koha-embed
22
        in: header
21
        in: header
(-)a/api/v1/swagger/paths/checkouts.yaml (-1 lines)
Lines 14-20 Link Here
14
      - $ref: "../swagger.yaml#/parameters/order_by"
14
      - $ref: "../swagger.yaml#/parameters/order_by"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_header"
18
      - $ref: "../swagger.yaml#/parameters/request_id_header"
17
      - $ref: "../swagger.yaml#/parameters/request_id_header"
19
      - name: checked_in
18
      - name: checked_in
20
        in: query
19
        in: query
(-)a/api/v1/swagger/paths/cities.yaml (-1 lines)
Lines 35-41 Link Here
35
      - $ref: "../swagger.yaml#/parameters/per_page"
35
      - $ref: "../swagger.yaml#/parameters/per_page"
36
      - $ref: "../swagger.yaml#/parameters/q_param"
36
      - $ref: "../swagger.yaml#/parameters/q_param"
37
      - $ref: "../swagger.yaml#/parameters/q_body"
37
      - $ref: "../swagger.yaml#/parameters/q_body"
38
      - $ref: "../swagger.yaml#/parameters/q_header"
39
      - $ref: "../swagger.yaml#/parameters/request_id_header"
38
      - $ref: "../swagger.yaml#/parameters/request_id_header"
40
    responses:
39
    responses:
41
      "200":
40
      "200":
(-)a/api/v1/swagger/paths/config_smtp_servers.yaml (-1 lines)
Lines 15-21 Link Here
15
      - $ref: "../swagger.yaml#/parameters/per_page"
15
      - $ref: "../swagger.yaml#/parameters/per_page"
16
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_param"
17
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_body"
18
      - $ref: "../swagger.yaml#/parameters/q_header"
19
      - $ref: "../swagger.yaml#/parameters/request_id_header"
18
      - $ref: "../swagger.yaml#/parameters/request_id_header"
20
    responses:
19
    responses:
21
      "200":
20
      "200":
(-)a/api/v1/swagger/paths/erm_agreements.yaml (-1 lines)
Lines 76-82 Link Here
76
      - $ref: "../swagger.yaml#/parameters/per_page"
76
      - $ref: "../swagger.yaml#/parameters/per_page"
77
      - $ref: "../swagger.yaml#/parameters/q_param"
77
      - $ref: "../swagger.yaml#/parameters/q_param"
78
      - $ref: "../swagger.yaml#/parameters/q_body"
78
      - $ref: "../swagger.yaml#/parameters/q_body"
79
      - $ref: "../swagger.yaml#/parameters/q_header"
80
    responses:
79
    responses:
81
      200:
80
      200:
82
        description: A list of agreement
81
        description: A list of agreement
(-)a/api/v1/swagger/paths/erm_eholdings_packages.yaml (-1 lines)
Lines 60-66 Link Here
60
      - $ref: "../swagger.yaml#/parameters/per_page"
60
      - $ref: "../swagger.yaml#/parameters/per_page"
61
      - $ref: "../swagger.yaml#/parameters/q_param"
61
      - $ref: "../swagger.yaml#/parameters/q_param"
62
      - $ref: "../swagger.yaml#/parameters/q_body"
62
      - $ref: "../swagger.yaml#/parameters/q_body"
63
      - $ref: "../swagger.yaml#/parameters/q_header"
64
      - name: x-koha-embed
63
      - name: x-koha-embed
65
        in: header
64
        in: header
66
        required: false
65
        required: false
(-)a/api/v1/swagger/paths/erm_eholdings_packages_resources.yaml (-1 lines)
Lines 41-47 Link Here
41
      - $ref: "../swagger.yaml#/parameters/per_page"
41
      - $ref: "../swagger.yaml#/parameters/per_page"
42
      - $ref: "../swagger.yaml#/parameters/q_param"
42
      - $ref: "../swagger.yaml#/parameters/q_param"
43
      - $ref: "../swagger.yaml#/parameters/q_body"
43
      - $ref: "../swagger.yaml#/parameters/q_body"
44
      - $ref: "../swagger.yaml#/parameters/q_header"
45
      - name: x-koha-embed
44
      - name: x-koha-embed
46
        in: header
45
        in: header
47
        required: false
46
        required: false
(-)a/api/v1/swagger/paths/erm_eholdings_resources.yaml (-1 lines)
Lines 50-56 Link Here
50
      - $ref: "../swagger.yaml#/parameters/per_page"
50
      - $ref: "../swagger.yaml#/parameters/per_page"
51
      - $ref: "../swagger.yaml#/parameters/q_param"
51
      - $ref: "../swagger.yaml#/parameters/q_param"
52
      - $ref: "../swagger.yaml#/parameters/q_body"
52
      - $ref: "../swagger.yaml#/parameters/q_body"
53
      - $ref: "../swagger.yaml#/parameters/q_header"
54
    responses:
53
    responses:
55
      200:
54
      200:
56
        description: A list of eHoldings resources
55
        description: A list of eHoldings resources
(-)a/api/v1/swagger/paths/erm_eholdings_titles.yaml (-1 lines)
Lines 160-166 Link Here
160
      - $ref: "../swagger.yaml#/parameters/per_page"
160
      - $ref: "../swagger.yaml#/parameters/per_page"
161
      - $ref: "../swagger.yaml#/parameters/q_param"
161
      - $ref: "../swagger.yaml#/parameters/q_param"
162
      - $ref: "../swagger.yaml#/parameters/q_body"
162
      - $ref: "../swagger.yaml#/parameters/q_body"
163
      - $ref: "../swagger.yaml#/parameters/q_header"
164
    responses:
163
    responses:
165
      200:
164
      200:
166
        description: A list of eHoldings titles
165
        description: A list of eHoldings titles
(-)a/api/v1/swagger/paths/erm_eholdings_titles_resources.yaml (-1 lines)
Lines 41-47 Link Here
41
      - $ref: "../swagger.yaml#/parameters/per_page"
41
      - $ref: "../swagger.yaml#/parameters/per_page"
42
      - $ref: "../swagger.yaml#/parameters/q_param"
42
      - $ref: "../swagger.yaml#/parameters/q_param"
43
      - $ref: "../swagger.yaml#/parameters/q_body"
43
      - $ref: "../swagger.yaml#/parameters/q_body"
44
      - $ref: "../swagger.yaml#/parameters/q_header"
45
      - name: x-koha-embed
44
      - name: x-koha-embed
46
        in: header
45
        in: header
47
        required: false
46
        required: false
(-)a/api/v1/swagger/paths/erm_licenses.yaml (-1 lines)
Lines 50-56 Link Here
50
      - $ref: "../swagger.yaml#/parameters/per_page"
50
      - $ref: "../swagger.yaml#/parameters/per_page"
51
      - $ref: "../swagger.yaml#/parameters/q_param"
51
      - $ref: "../swagger.yaml#/parameters/q_param"
52
      - $ref: "../swagger.yaml#/parameters/q_body"
52
      - $ref: "../swagger.yaml#/parameters/q_body"
53
      - $ref: "../swagger.yaml#/parameters/q_header"
54
      - name: x-koha-embed
53
      - name: x-koha-embed
55
        in: header
54
        in: header
56
        required: false
55
        required: false
(-)a/api/v1/swagger/paths/erm_users.yaml (-1 lines)
Lines 14-20 Link Here
14
      - $ref: "../swagger.yaml#/parameters/per_page"
14
      - $ref: "../swagger.yaml#/parameters/per_page"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_header"
18
      - name: x-koha-embed
17
      - name: x-koha-embed
19
        in: header
18
        in: header
20
        required: false
19
        required: false
(-)a/api/v1/swagger/paths/holds.yaml (-2 lines)
Lines 87-93 Link Here
87
      - $ref: "../swagger.yaml#/parameters/per_page"
87
      - $ref: "../swagger.yaml#/parameters/per_page"
88
      - $ref: "../swagger.yaml#/parameters/q_param"
88
      - $ref: "../swagger.yaml#/parameters/q_param"
89
      - $ref: "../swagger.yaml#/parameters/q_body"
89
      - $ref: "../swagger.yaml#/parameters/q_body"
90
      - $ref: "../swagger.yaml#/parameters/q_header"
91
      - $ref: "../swagger.yaml#/parameters/request_id_header"
90
      - $ref: "../swagger.yaml#/parameters/request_id_header"
92
    produces:
91
    produces:
93
      - application/json
92
      - application/json
Lines 591-597 Link Here
591
      - $ref: "../swagger.yaml#/parameters/per_page"
590
      - $ref: "../swagger.yaml#/parameters/per_page"
592
      - $ref: "../swagger.yaml#/parameters/q_param"
591
      - $ref: "../swagger.yaml#/parameters/q_param"
593
      - $ref: "../swagger.yaml#/parameters/q_body"
592
      - $ref: "../swagger.yaml#/parameters/q_body"
594
      - $ref: "../swagger.yaml#/parameters/q_header"
595
      - $ref: "../swagger.yaml#/parameters/request_id_header"
593
      - $ref: "../swagger.yaml#/parameters/request_id_header"
596
    produces:
594
    produces:
597
      - application/json
595
      - application/json
(-)a/api/v1/swagger/paths/ill_requests.yaml (-1 lines)
Lines 13-19 Link Here
13
      - $ref: "../swagger.yaml#/parameters/order_by"
13
      - $ref: "../swagger.yaml#/parameters/order_by"
14
      - $ref: "../swagger.yaml#/parameters/q_param"
14
      - $ref: "../swagger.yaml#/parameters/q_param"
15
      - $ref: "../swagger.yaml#/parameters/q_body"
15
      - $ref: "../swagger.yaml#/parameters/q_body"
16
      - $ref: "../swagger.yaml#/parameters/q_header"
17
      - $ref: "../swagger.yaml#/parameters/request_id_header"
16
      - $ref: "../swagger.yaml#/parameters/request_id_header"
18
      - name: x-koha-embed
17
      - name: x-koha-embed
19
        in: header
18
        in: header
(-)a/api/v1/swagger/paths/import_batch_profiles.yaml (-1 lines)
Lines 18-24 Link Here
18
      - $ref: "../swagger.yaml#/parameters/per_page"
18
      - $ref: "../swagger.yaml#/parameters/per_page"
19
      - $ref: "../swagger.yaml#/parameters/q_param"
19
      - $ref: "../swagger.yaml#/parameters/q_param"
20
      - $ref: "../swagger.yaml#/parameters/q_body"
20
      - $ref: "../swagger.yaml#/parameters/q_body"
21
      - $ref: "../swagger.yaml#/parameters/q_header"
22
      - $ref: "../swagger.yaml#/parameters/request_id_header"
21
      - $ref: "../swagger.yaml#/parameters/request_id_header"
23
    consumes:
22
    consumes:
24
      - application/json
23
      - application/json
(-)a/api/v1/swagger/paths/items.yaml (-4 lines)
Lines 28-34 Link Here
28
      - $ref: "../swagger.yaml#/parameters/per_page"
28
      - $ref: "../swagger.yaml#/parameters/per_page"
29
      - $ref: "../swagger.yaml#/parameters/q_param"
29
      - $ref: "../swagger.yaml#/parameters/q_param"
30
      - $ref: "../swagger.yaml#/parameters/q_body"
30
      - $ref: "../swagger.yaml#/parameters/q_body"
31
      - $ref: "../swagger.yaml#/parameters/q_header"
32
      - $ref: "../swagger.yaml#/parameters/request_id_header"
31
      - $ref: "../swagger.yaml#/parameters/request_id_header"
33
    consumes:
32
    consumes:
34
      - application/json
33
      - application/json
Lines 240-246 Link Here
240
      - $ref: "../swagger.yaml#/parameters/per_page"
239
      - $ref: "../swagger.yaml#/parameters/per_page"
241
      - $ref: "../swagger.yaml#/parameters/q_param"
240
      - $ref: "../swagger.yaml#/parameters/q_param"
242
      - $ref: "../swagger.yaml#/parameters/q_body"
241
      - $ref: "../swagger.yaml#/parameters/q_body"
243
      - $ref: "../swagger.yaml#/parameters/q_header"
244
      - name: x-koha-embed
242
      - name: x-koha-embed
245
        in: header
243
        in: header
246
        required: false
244
        required: false
Lines 353-359 Link Here
353
      - $ref: "../swagger.yaml#/parameters/per_page"
351
      - $ref: "../swagger.yaml#/parameters/per_page"
354
      - $ref: "../swagger.yaml#/parameters/q_param"
352
      - $ref: "../swagger.yaml#/parameters/q_param"
355
      - $ref: "../swagger.yaml#/parameters/q_body"
353
      - $ref: "../swagger.yaml#/parameters/q_body"
356
      - $ref: "../swagger.yaml#/parameters/q_header"
357
      - $ref: "../swagger.yaml#/parameters/request_id_header"
354
      - $ref: "../swagger.yaml#/parameters/request_id_header"
358
    consumes:
355
    consumes:
359
      - application/json
356
      - application/json
Lines 415-421 Link Here
415
      - $ref: "../swagger.yaml#/parameters/per_page"
412
      - $ref: "../swagger.yaml#/parameters/per_page"
416
      - $ref: "../swagger.yaml#/parameters/q_param"
413
      - $ref: "../swagger.yaml#/parameters/q_param"
417
      - $ref: "../swagger.yaml#/parameters/q_body"
414
      - $ref: "../swagger.yaml#/parameters/q_body"
418
      - $ref: "../swagger.yaml#/parameters/q_header"
419
      - $ref: "../swagger.yaml#/parameters/request_id_header"
415
      - $ref: "../swagger.yaml#/parameters/request_id_header"
420
      - name: x-koha-embed
416
      - name: x-koha-embed
421
        in: header
417
        in: header
(-)a/api/v1/swagger/paths/jobs.yaml (-1 lines)
Lines 20-26 Link Here
20
      - $ref: "../swagger.yaml#/parameters/per_page"
20
      - $ref: "../swagger.yaml#/parameters/per_page"
21
      - $ref: "../swagger.yaml#/parameters/q_param"
21
      - $ref: "../swagger.yaml#/parameters/q_param"
22
      - $ref: "../swagger.yaml#/parameters/q_body"
22
      - $ref: "../swagger.yaml#/parameters/q_body"
23
      - $ref: "../swagger.yaml#/parameters/q_header"
24
      - $ref: "../swagger.yaml#/parameters/request_id_header"
23
      - $ref: "../swagger.yaml#/parameters/request_id_header"
25
    responses:
24
    responses:
26
      "200":
25
      "200":
(-)a/api/v1/swagger/paths/libraries.yaml (-2 lines)
Lines 93-99 Link Here
93
      - $ref: "../swagger.yaml#/parameters/per_page"
93
      - $ref: "../swagger.yaml#/parameters/per_page"
94
      - $ref: "../swagger.yaml#/parameters/q_param"
94
      - $ref: "../swagger.yaml#/parameters/q_param"
95
      - $ref: "../swagger.yaml#/parameters/q_body"
95
      - $ref: "../swagger.yaml#/parameters/q_body"
96
      - $ref: "../swagger.yaml#/parameters/q_header"
97
      - $ref: "../swagger.yaml#/parameters/request_id_header"
96
      - $ref: "../swagger.yaml#/parameters/request_id_header"
98
      - name: x-koha-embed
97
      - name: x-koha-embed
99
        in: header
98
        in: header
Lines 319-325 Link Here
319
      - $ref: "../swagger.yaml#/parameters/per_page"
318
      - $ref: "../swagger.yaml#/parameters/per_page"
320
      - $ref: "../swagger.yaml#/parameters/q_param"
319
      - $ref: "../swagger.yaml#/parameters/q_param"
321
      - $ref: "../swagger.yaml#/parameters/q_body"
320
      - $ref: "../swagger.yaml#/parameters/q_body"
322
      - $ref: "../swagger.yaml#/parameters/q_header"
323
      - $ref: "../swagger.yaml#/parameters/request_id_header"
321
      - $ref: "../swagger.yaml#/parameters/request_id_header"
324
    produces:
322
    produces:
325
      - application/json
323
      - application/json
(-)a/api/v1/swagger/paths/patrons.yaml (-1 lines)
Lines 345-351 Link Here
345
      - $ref: "../swagger.yaml#/parameters/per_page"
345
      - $ref: "../swagger.yaml#/parameters/per_page"
346
      - $ref: "../swagger.yaml#/parameters/q_param"
346
      - $ref: "../swagger.yaml#/parameters/q_param"
347
      - $ref: "../swagger.yaml#/parameters/q_body"
347
      - $ref: "../swagger.yaml#/parameters/q_body"
348
      - $ref: "../swagger.yaml#/parameters/q_header"
349
      - $ref: "../swagger.yaml#/parameters/request_id_header"
348
      - $ref: "../swagger.yaml#/parameters/request_id_header"
350
      - name: x-koha-embed
349
      - name: x-koha-embed
351
        in: header
350
        in: header
(-)a/api/v1/swagger/paths/patrons_account.yaml (-2 lines)
Lines 60-66 Link Here
60
      - $ref: "../swagger.yaml#/parameters/per_page"
60
      - $ref: "../swagger.yaml#/parameters/per_page"
61
      - $ref: "../swagger.yaml#/parameters/q_param"
61
      - $ref: "../swagger.yaml#/parameters/q_param"
62
      - $ref: "../swagger.yaml#/parameters/q_body"
62
      - $ref: "../swagger.yaml#/parameters/q_body"
63
      - $ref: "../swagger.yaml#/parameters/q_header"
64
    responses:
63
    responses:
65
      "200":
64
      "200":
66
        description: A list of credits
65
        description: A list of credits
Lines 149-155 Link Here
149
      - $ref: "../swagger.yaml#/parameters/per_page"
148
      - $ref: "../swagger.yaml#/parameters/per_page"
150
      - $ref: "../swagger.yaml#/parameters/q_param"
149
      - $ref: "../swagger.yaml#/parameters/q_param"
151
      - $ref: "../swagger.yaml#/parameters/q_body"
150
      - $ref: "../swagger.yaml#/parameters/q_body"
152
      - $ref: "../swagger.yaml#/parameters/q_header"
153
    responses:
151
    responses:
154
      "200":
152
      "200":
155
        description: A list of debits
153
        description: A list of debits
(-)a/api/v1/swagger/paths/patrons_extended_attributes.yaml (-1 lines)
Lines 14-20 Link Here
14
      - $ref: "../swagger.yaml#/parameters/per_page"
14
      - $ref: "../swagger.yaml#/parameters/per_page"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_header"
18
      - $ref: "../swagger.yaml#/parameters/request_id_header"
17
      - $ref: "../swagger.yaml#/parameters/request_id_header"
19
    produces:
18
    produces:
20
      - application/json
19
      - application/json
(-)a/api/v1/swagger/paths/patrons_holds.yaml (-1 lines)
Lines 14-20 Link Here
14
      - $ref: "../swagger.yaml#/parameters/per_page"
14
      - $ref: "../swagger.yaml#/parameters/per_page"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_header"
18
      - $ref: "../swagger.yaml#/parameters/request_id_header"
17
      - $ref: "../swagger.yaml#/parameters/request_id_header"
19
    produces:
18
    produces:
20
      - application/json
19
      - application/json
(-)a/api/v1/swagger/paths/quotes.yaml (-1 lines)
Lines 35-41 Link Here
35
      - $ref: "../swagger.yaml#/parameters/per_page"
35
      - $ref: "../swagger.yaml#/parameters/per_page"
36
      - $ref: "../swagger.yaml#/parameters/q_param"
36
      - $ref: "../swagger.yaml#/parameters/q_param"
37
      - $ref: "../swagger.yaml#/parameters/q_body"
37
      - $ref: "../swagger.yaml#/parameters/q_body"
38
      - $ref: "../swagger.yaml#/parameters/q_header"
39
      - $ref: "../swagger.yaml#/parameters/request_id_header"
38
      - $ref: "../swagger.yaml#/parameters/request_id_header"
40
    responses:
39
    responses:
41
      "200":
40
      "200":
(-)a/api/v1/swagger/paths/search_filters.yaml (-1 lines)
Lines 15-21 Link Here
15
      - $ref: "../swagger.yaml#/parameters/per_page"
15
      - $ref: "../swagger.yaml#/parameters/per_page"
16
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_param"
17
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_body"
18
      - $ref: "../swagger.yaml#/parameters/q_header"
19
      - $ref: "../swagger.yaml#/parameters/request_id_header"
18
      - $ref: "../swagger.yaml#/parameters/request_id_header"
20
    responses:
19
    responses:
21
      '200':
20
      '200':
(-)a/api/v1/swagger/paths/suggestions.yaml (-2 lines)
Lines 14-20 Link Here
14
      - $ref: "../swagger.yaml#/parameters/per_page"
14
      - $ref: "../swagger.yaml#/parameters/per_page"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
15
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
16
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_header"
18
      - $ref: "../swagger.yaml#/parameters/request_id_header"
17
      - $ref: "../swagger.yaml#/parameters/request_id_header"
19
    produces:
18
    produces:
20
      - application/json
19
      - application/json
Lines 246-252 Link Here
246
      - $ref: "../swagger.yaml#/parameters/per_page"
245
      - $ref: "../swagger.yaml#/parameters/per_page"
247
      - $ref: "../swagger.yaml#/parameters/q_param"
246
      - $ref: "../swagger.yaml#/parameters/q_param"
248
      - $ref: "../swagger.yaml#/parameters/q_body"
247
      - $ref: "../swagger.yaml#/parameters/q_body"
249
      - $ref: "../swagger.yaml#/parameters/q_header"
250
      - name: x-koha-embed
248
      - name: x-koha-embed
251
        in: header
249
        in: header
252
        required: false
250
        required: false
(-)a/api/v1/swagger/paths/tickets.yaml (-2 lines)
Lines 15-21 Link Here
15
      - $ref: "../swagger.yaml#/parameters/per_page"
15
      - $ref: "../swagger.yaml#/parameters/per_page"
16
      - $ref: "../swagger.yaml#/parameters/q_param"
16
      - $ref: "../swagger.yaml#/parameters/q_param"
17
      - $ref: "../swagger.yaml#/parameters/q_body"
17
      - $ref: "../swagger.yaml#/parameters/q_body"
18
      - $ref: "../swagger.yaml#/parameters/q_header"
19
      - $ref: "../swagger.yaml#/parameters/request_id_header"
18
      - $ref: "../swagger.yaml#/parameters/request_id_header"
20
      - name: x-koha-embed
19
      - name: x-koha-embed
21
        in: header
20
        in: header
Lines 228-234 Link Here
228
      - $ref: "../swagger.yaml#/parameters/per_page"
227
      - $ref: "../swagger.yaml#/parameters/per_page"
229
      - $ref: "../swagger.yaml#/parameters/q_param"
228
      - $ref: "../swagger.yaml#/parameters/q_param"
230
      - $ref: "../swagger.yaml#/parameters/q_body"
229
      - $ref: "../swagger.yaml#/parameters/q_body"
231
      - $ref: "../swagger.yaml#/parameters/q_header"
232
      - $ref: "../swagger.yaml#/parameters/request_id_header"
230
      - $ref: "../swagger.yaml#/parameters/request_id_header"
233
      - name: x-koha-embed
231
      - name: x-koha-embed
234
        in: header
232
        in: header
(-)a/api/v1/swagger/paths/transfer_limits.yaml (-1 lines)
Lines 33-39 Link Here
33
      - $ref: "../swagger.yaml#/parameters/per_page"
33
      - $ref: "../swagger.yaml#/parameters/per_page"
34
      - $ref: "../swagger.yaml#/parameters/q_param"
34
      - $ref: "../swagger.yaml#/parameters/q_param"
35
      - $ref: "../swagger.yaml#/parameters/q_body"
35
      - $ref: "../swagger.yaml#/parameters/q_body"
36
      - $ref: "../swagger.yaml#/parameters/q_header"
37
      - $ref: "../swagger.yaml#/parameters/request_id_header"
36
      - $ref: "../swagger.yaml#/parameters/request_id_header"
38
    produces:
37
    produces:
39
      - application/json
38
      - application/json
(-)a/api/v1/swagger/swagger.yaml (-6 lines)
Lines 595-606 parameters: Link Here
595
    required: false
595
    required: false
596
    schema:
596
    schema:
597
      type: object
597
      type: object
598
  q_header:
599
    description: Query filter sent as a request header
600
    in: header
601
    name: x-koha-query
602
    required: false
603
    type: string
604
  q_param:
598
  q_param:
605
    description: Query filter sent as a request parameter
599
    description: Query filter sent as a request parameter
606
    in: query
600
    in: query
(-)a/t/db_dependent/Koha/REST/Plugin/Objects.t (-35 / +24 lines)
Lines 81-87 get '/biblios' => sub { Link Here
81
    my $output = $c->req->params->to_hash;
81
    my $output = $c->req->params->to_hash;
82
    $output->{query} = $c->req->json if defined $c->req->json;
82
    $output->{query} = $c->req->json if defined $c->req->json;
83
    my $headers = $c->req->headers->to_hash;
83
    my $headers = $c->req->headers->to_hash;
84
    $output->{'x-koha-query'} = $headers->{'x-koha-query'} if defined $headers->{'x-koha-query'};
85
    $c->validation->output($output);
84
    $c->validation->output($output);
86
    my $biblios_set = Koha::Biblios->new;
85
    my $biblios_set = Koha::Biblios->new;
87
    $c->stash("koha.embed", {
86
    $c->stash("koha.embed", {
Lines 140-146 get '/cities/:city_id/rs' => sub { Link Here
140
};
139
};
141
140
142
# The tests
141
# The tests
143
use Test::More tests => 18;
142
use Test::More tests => 17;
144
use Test::Mojo;
143
use Test::Mojo;
145
144
146
use t::lib::Mocks;
145
use t::lib::Mocks;
Lines 456-485 subtest 'objects.search helper with q parameter' => sub { Link Here
456
    $schema->storage->txn_rollback;
455
    $schema->storage->txn_rollback;
457
};
456
};
458
457
459
subtest 'objects.search helper with x-koha-query header' => sub {
460
    plan tests => 4;
461
462
    $schema->storage->txn_begin;
463
464
    my $patron1 = $builder->build_object( { class => "Koha::Patrons" } );
465
    my $patron2 = $builder->build_object( { class => "Koha::Patrons" } );
466
    my $biblio1 = $builder->build_sample_biblio;
467
    my $biblio2 = $builder->build_sample_biblio;
468
    my $biblio3 = $builder->build_sample_biblio;
469
    my $suggestion1 = $builder->build_object( { class => "Koha::Suggestions", value => { suggestedby => $patron1->borrowernumber, biblionumber => $biblio1->biblionumber} } );
470
    my $suggestion2 = $builder->build_object( { class => "Koha::Suggestions", value => { suggestedby => $patron2->borrowernumber, biblionumber => $biblio2->biblionumber} } );
471
    my $suggestion3 = $builder->build_object( { class => "Koha::Suggestions", value => { suggestedby => $patron2->borrowernumber, biblionumber => $biblio3->biblionumber} } );
472
473
    my $t = Test::Mojo->new;
474
    $t->get_ok('/biblios' => {'x-koha-query' => '{"suggestions.suggester.patron_id": "'.$patron1->borrowernumber.'"}'})
475
      ->json_is('/count' => 1, 'there should be 1 biblio with suggestions of patron 1');
476
477
    $t->get_ok('/biblios' => {'x-koha-query' => '{"suggestions.suggester.patron_id": "'.$patron2->borrowernumber.'"}'})
478
      ->json_is('/count' => 2, 'there should be 2 biblios with suggestions of patron 2');
479
480
    $schema->storage->txn_rollback;
481
};
482
483
subtest 'objects.search helper with all query methods' => sub {
458
subtest 'objects.search helper with all query methods' => sub {
484
    plan tests => 6;
459
    plan tests => 6;
485
460
Lines 495-508 subtest 'objects.search helper with all query methods' => sub { Link Here
495
    my $suggestion3 = $builder->build_object( { class => "Koha::Suggestions", value => { suggestedby => $patron2->borrowernumber, biblionumber => $biblio3->biblionumber} } );
470
    my $suggestion3 = $builder->build_object( { class => "Koha::Suggestions", value => { suggestedby => $patron2->borrowernumber, biblionumber => $biblio3->biblionumber} } );
496
471
497
    my $t = Test::Mojo->new;
472
    my $t = Test::Mojo->new;
498
    $t->get_ok('/biblios?q={"suggestions.suggester.firstname": "'.$patron1->firstname.'"}' => {'x-koha-query' => '{"suggestions.suggester.patron_id": "'.$patron1->borrowernumber.'"}'} => json => {"suggestions.suggester.cardnumber" => $patron1->cardnumber})
473
    my $query = {
499
      ->json_is('/count' => 1, 'there should be 1 biblio with suggestions of patron 1');
474
        "suggestions.suggester.firstname" => $patron1->firstname,
500
475
        "suggestions.suggester.patron_id" => $patron1->id,
501
    $t->get_ok('/biblios?q={"suggestions.suggester.firstname": "'.$patron2->firstname.'"}' => {'x-koha-query' => '{"suggestions.suggester.patron_id": "'.$patron2->borrowernumber.'"}'} => json => {"suggestions.suggester.cardnumber" => $patron2->cardnumber})
476
    };
502
      ->json_is('/count' => 2, 'there should be 2 biblios with suggestions of patron 2');
477
    $t->get_ok(
503
478
        '/biblios?q=' . encode_json($query) => json => { "suggestions.suggester.cardnumber" => $patron1->cardnumber } )
504
    $t->get_ok('/biblios?q={"suggestions.suggester.firstname": "'.$patron1->firstname.'"}' => {'x-koha-query' => '{"suggestions.suggester.patron_id": "'.$patron2->borrowernumber.'"}'} => json => {"suggestions.suggester.cardnumber" => $patron2->cardnumber})
479
        ->json_is( '/count' => 1, 'there should be 1 biblio with suggestions of patron 1' );
505
      ->json_is('/count' => 0, 'there shouldn\'t be biblios where suggester has patron1 fistname and patron2 id');
480
481
    $query = {
482
        "suggestions.suggester.firstname" => $patron2->firstname,
483
        "suggestions.suggester.patron_id" => $patron2->id,
484
    };
485
    $t->get_ok(
486
        '/biblios?q=' . encode_json($query) => json => { "suggestions.suggester.cardnumber" => $patron2->cardnumber } )
487
        ->json_is( '/count' => 2, 'there should be 2 biblios with suggestions of patron 2' );
488
489
    $query = {
490
        "suggestions.suggester.firstname" => $patron1->firstname,
491
        "suggestions.suggester.patron_id" => $patron2->id,
492
    };
493
    $t->get_ok(
494
        '/biblios?q=' . encode_json($query) => json => { "suggestions.suggester.cardnumber" => $patron2->cardnumber } )
495
        ->json_is( '/count' => 0, 'there shouldn\'t be biblios where suggester has patron1 fistname and patron2 id' );
506
496
507
    $schema->storage->txn_rollback;
497
    $schema->storage->txn_rollback;
508
};
498
};
509
- 

Return to bug 33971