ILIAS  trunk Revision v12.0_alpha-377-g3641b37b9db
RequestProcessorListIdentifiersTest.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
25
26class RequestProcessorListIdentifiersTest extends RequestProcessorTestCase
27{
28 public function testGetResponseToRequestListIdentifiers(): void
29 {
30 $processor = new RequestProcessor(
31 $this->getWriter(),
32 $this->getSettings('prefix_'),
33 $repo = $this->getRepository(
34 null,
35 3,
36 'id1+2022-11-27',
37 'id2+2022-11-27',
38 'id3+2021-11-13'
39 ),
40 $this->getTokenHandler()
41 );
42
43 $expected_response = <<<XML
44 <response>
45 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc</response_info>
46 <header>prefix_id1+2022-11-27:2022-11-27</header>
47 <header>prefix_id2+2022-11-27:2022-11-27</header>
48 <header>prefix_id3+2021-11-13:2021-11-13</header>
49 </response>
50 XML;
51
52 $response = $processor->getResponseToRequest($this->getRequest(
53 'base url',
54 Verb::LIST_IDENTIFIERS,
55 [Argument::MD_PREFIX->value => 'oai_dc'],
56 ));
57
58 $this->assertEquals(
59 [['from' => null, 'until' => null, 'limit' => 100, 'offset' => 0]],
60 $repo->exposed_parameters
61 );
62 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
63 }
64
65 public function testGetResponseToRequestListIdentifiersWithDeletedRecord(): void
66 {
67 $processor = new RequestProcessor(
68 $this->getWriter(),
69 $this->getSettings('prefix_'),
70 $repo = $this->getRepository(
71 null,
72 3,
73 'id1+2022-11-27',
74 'delid2+2022-11-27',
75 'id3+2021-11-13'
76 ),
77 $this->getTokenHandler()
78 );
79
80 $expected_response = <<<XML
81 <response>
82 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc</response_info>
83 <header>prefix_id1+2022-11-27:2022-11-27</header>
84 <deleted_header>prefix_delid2+2022-11-27:2022-11-27</deleted_header>
85 <header>prefix_id3+2021-11-13:2021-11-13</header>
86 </response>
87 XML;
88
89 $response = $processor->getResponseToRequest($this->getRequest(
90 'base url',
91 Verb::LIST_IDENTIFIERS,
92 [Argument::MD_PREFIX->value => 'oai_dc'],
93 ));
94
95 $this->assertEquals(
96 [['from' => null, 'until' => null, 'limit' => 100, 'offset' => 0]],
97 $repo->exposed_parameters
98 );
99 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
100 }
101
102 public function testGetResponseToRequestListIdentifiersWithDefaultSet(): void
103 {
104 $processor = new RequestProcessor(
105 $this->getWriter(),
106 $this->getSettings('prefix_'),
107 $repo = $this->getRepository(
108 null,
109 3,
110 'id1+2022-11-27',
111 'id2+2022-11-27',
112 'id3+2021-11-13'
113 ),
114 $this->getTokenHandler()
115 );
116
117 $expected_response = <<<XML
118 <response>
119 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc,set=default</response_info>
120 <header>prefix_id1+2022-11-27:2022-11-27</header>
121 <header>prefix_id2+2022-11-27:2022-11-27</header>
122 <header>prefix_id3+2021-11-13:2021-11-13</header>
123 </response>
124 XML;
125
126 $response = $processor->getResponseToRequest($this->getRequest(
127 'base url',
128 Verb::LIST_IDENTIFIERS,
129 [Argument::MD_PREFIX->value => 'oai_dc', Argument::SET->value => 'default'],
130 ));
131
132 $this->assertEquals(
133 [['from' => null, 'until' => null, 'limit' => 100, 'offset' => 0]],
134 $repo->exposed_parameters
135 );
136 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
137 }
138
139 public function testGetResponseToRequestListIdentifiersWithFromDate(): void
140 {
141 $processor = new RequestProcessor(
142 $this->getWriter(),
143 $this->getSettings('prefix_'),
144 $repo = $this->getRepository(
145 null,
146 3,
147 'id1+2022-11-27',
148 'id2+2022-11-27',
149 'id3+2021-11-13'
150 ),
151 $this->getTokenHandler()
152 );
153
154 $expected_response = <<<XML
155 <response>
156 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc,from=2019-01-02</response_info>
157 <header>prefix_id1+2022-11-27:2022-11-27</header>
158 <header>prefix_id2+2022-11-27:2022-11-27</header>
159 <header>prefix_id3+2021-11-13:2021-11-13</header>
160 </response>
161 XML;
162
163 $response = $processor->getResponseToRequest($this->getRequest(
164 'base url',
165 Verb::LIST_IDENTIFIERS,
166 [Argument::MD_PREFIX->value => 'oai_dc', Argument::FROM_DATE->value => '2019-01-02'],
167 ));
168
169 $this->assertEquals(
170 [['from' => '2019-01-02', 'until' => null, 'limit' => 100, 'offset' => 0]],
171 $repo->exposed_parameters
172 );
173 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
174 }
175
176 public function testGetResponseToRequestListIdentifiersWithUntilDate(): void
177 {
178 $processor = new RequestProcessor(
179 $this->getWriter(),
180 $this->getSettings('prefix_'),
181 $repo = $this->getRepository(
182 null,
183 3,
184 'id1+2022-11-27',
185 'id2+2022-11-27',
186 'id3+2021-11-13'
187 ),
188 $this->getTokenHandler()
189 );
190
191 $expected_response = <<<XML
192 <response>
193 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc,until=2033-11-02</response_info>
194 <header>prefix_id1+2022-11-27:2022-11-27</header>
195 <header>prefix_id2+2022-11-27:2022-11-27</header>
196 <header>prefix_id3+2021-11-13:2021-11-13</header>
197 </response>
198 XML;
199
200 $response = $processor->getResponseToRequest($this->getRequest(
201 'base url',
202 Verb::LIST_IDENTIFIERS,
203 [Argument::MD_PREFIX->value => 'oai_dc', Argument::UNTIL_DATE->value => '2033-11-02'],
204 ));
205
206 $this->assertSame(
207 [['from' => null, 'until' => '2033-11-02', 'limit' => 100, 'offset' => 0]],
208 $repo->exposed_parameters
209 );
210 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
211 }
212
213 public function testGetResponseToRequestListIdentifiersWithBothDates(): void
214 {
215 $processor = new RequestProcessor(
216 $this->getWriter(),
217 $this->getSettings('prefix_'),
218 $repo = $this->getRepository(
219 null,
220 3,
221 'id1+2022-11-27',
222 'id2+2022-11-27',
223 'id3+2021-11-13'
224 ),
225 $this->getTokenHandler()
226 );
227
228 $expected_response = <<<XML
229 <response>
230 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc,until=2033-11-02,from=2019-01-02</response_info>
231 <header>prefix_id1+2022-11-27:2022-11-27</header>
232 <header>prefix_id2+2022-11-27:2022-11-27</header>
233 <header>prefix_id3+2021-11-13:2021-11-13</header>
234 </response>
235 XML;
236
237 $response = $processor->getResponseToRequest($this->getRequest(
238 'base url',
239 Verb::LIST_IDENTIFIERS,
240 [
241 Argument::MD_PREFIX->value => 'oai_dc',
242 Argument::UNTIL_DATE->value => '2033-11-02',
243 Argument::FROM_DATE->value => '2019-01-02'
244 ],
245 ));
246
247 $this->assertEquals(
248 [['from' => '2019-01-02', 'until' => '2033-11-02', 'limit' => 100, 'offset' => 0]],
249 $repo->exposed_parameters
250 );
251 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
252 }
253
254 public function testGetResponseToRequestListIdentifiersIncompleteList(): void
255 {
256 $processor = new RequestProcessor(
257 $this->getWriter(),
258 $this->getSettings('prefix_'),
259 $repo = $this->getRepository(
260 null,
261 203,
262 'id1+2022-11-27',
263 'id2+2022-11-27',
264 'id3+2021-11-13'
265 ),
266 $this->getTokenHandler()
267 );
268
269 $expected_response = <<<XML
270 <response>
271 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc</response_info>
272 <header>prefix_id1+2022-11-27:2022-11-27</header>
273 <header>prefix_id2+2022-11-27:2022-11-27</header>
274 <header>prefix_id3+2021-11-13:2021-11-13</header>
275 <token>next_offset=100:from=:until=,fullsize=203,cursor=0</token>
276 </response>
277 XML;
278
279 $response = $processor->getResponseToRequest($this->getRequest(
280 'base url',
281 Verb::LIST_IDENTIFIERS,
282 [Argument::MD_PREFIX->value => 'oai_dc'],
283 ));
284
285 $this->assertEquals(
286 [['from' => null, 'until' => null, 'limit' => 100, 'offset' => 0]],
287 $repo->exposed_parameters
288 );
289 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
290 }
291
292 public function testGetResponseToRequestListIdentifiersWithResumptionToken(): void
293 {
294 $original_request = $this->getRequest(
295 'base url',
296 Verb::LIST_IDENTIFIERS,
297 [Argument::RESUMPTION_TOKEN->value => 'next_offset=100:from=:until=2024-07-28'],
298 );
299
300 $appended_request = $this->getRequest(
301 'base url',
302 Verb::LIST_IDENTIFIERS,
303 [
304 Argument::RESUMPTION_TOKEN->value => 'next_offset=100:from=:until=2024-07-28',
305 Argument::UNTIL_DATE->value => '2024-07-28'
306 ],
307 );
308
309 $processor = new RequestProcessor(
310 $this->getWriter(),
311 $this->getSettings('prefix_'),
312 $repo = $this->getRepository(
313 null,
314 203,
315 'id1+2022-11-27',
316 'id2+2022-11-27',
317 'id3+2021-11-13'
318 ),
319 $this->getTokenHandler(true, $appended_request)
320 );
321
322 $expected_response = <<<XML
323 <response>
324 <response_info>base url:ListIdentifiers:resumptionToken=next_offset=100:from=:until=2024-07-28</response_info>
325 <header>prefix_id1+2022-11-27:2022-11-27</header>
326 <header>prefix_id2+2022-11-27:2022-11-27</header>
327 <header>prefix_id3+2021-11-13:2021-11-13</header>
328 <token>next_offset=200:from=:until=2024-07-28,fullsize=203,cursor=100</token>
329 </response>
330 XML;
331
332 $response = $processor->getResponseToRequest($original_request);
333
334 $this->assertEquals(
335 [['from' => null, 'until' => '2024-07-28', 'limit' => 100, 'offset' => 100]],
336 $repo->exposed_parameters
337 );
338 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
339 }
340
341 public function testGetResponseToRequestListIdentifiersWithResumptionTokenContainingFromDate(): void
342 {
343 $original_request = $this->getRequest(
344 'base url',
345 Verb::LIST_IDENTIFIERS,
346 [Argument::RESUMPTION_TOKEN->value => 'next_offset=100:from=1999-01-12:until=2024-07-28'],
347 );
348
349 $appended_request = $this->getRequest(
350 'base url',
351 Verb::LIST_IDENTIFIERS,
352 [
353 Argument::RESUMPTION_TOKEN->value => 'next_offset=100:from=1999-01-12:until=2024-07-28',
354 Argument::UNTIL_DATE->value => '2024-07-28',
355 Argument::FROM_DATE->value => '1999-01-12'
356 ],
357 );
358
359 $processor = new RequestProcessor(
360 $this->getWriter(),
361 $this->getSettings('prefix_'),
362 $repo = $this->getRepository(
363 null,
364 203,
365 'id1+2022-11-27',
366 'id2+2022-11-27',
367 'id3+2021-11-13'
368 ),
369 $this->getTokenHandler(true, $appended_request)
370 );
371
372 $expected_response = <<<XML
373 <response>
374 <response_info>base url:ListIdentifiers:resumptionToken=next_offset=100:from=1999-01-12:until=2024-07-28</response_info>
375 <header>prefix_id1+2022-11-27:2022-11-27</header>
376 <header>prefix_id2+2022-11-27:2022-11-27</header>
377 <header>prefix_id3+2021-11-13:2021-11-13</header>
378 <token>next_offset=200:from=1999-01-12:until=2024-07-28,fullsize=203,cursor=100</token>
379 </response>
380 XML;
381
382 $response = $processor->getResponseToRequest($original_request);
383
384 $this->assertEquals(
385 [['from' => '1999-01-12', 'until' => '2024-07-28', 'limit' => 100, 'offset' => 100]],
386 $repo->exposed_parameters
387 );
388 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
389 }
390
391 public function testGetResponseToRequestListIdentifiersWithResumptionTokenLastIncompleteList(): void
392 {
393 $original_request = $this->getRequest(
394 'base url',
395 Verb::LIST_IDENTIFIERS,
396 [Argument::RESUMPTION_TOKEN->value => 'next_offset=200:from=:until=2024-07-28'],
397 );
398
399 $appended_request = $this->getRequest(
400 'base url',
401 Verb::LIST_IDENTIFIERS,
402 [
403 Argument::RESUMPTION_TOKEN->value => 'next_offset=200:from=:until=2024-07-28',
404 Argument::UNTIL_DATE->value => '2024-07-28'
405 ],
406 );
407
408 $processor = new RequestProcessor(
409 $this->getWriter(),
410 $this->getSettings('prefix_'),
411 $repo = $this->getRepository(
412 null,
413 203,
414 'id1+2022-11-27',
415 'id2+2022-11-27',
416 'id3+2021-11-13'
417 ),
418 $this->getTokenHandler(true, $appended_request)
419 );
420
421 $expected_response = <<<XML
422 <response>
423 <response_info>base url:ListIdentifiers:resumptionToken=next_offset=200:from=:until=2024-07-28</response_info>
424 <header>prefix_id1+2022-11-27:2022-11-27</header>
425 <header>prefix_id2+2022-11-27:2022-11-27</header>
426 <header>prefix_id3+2021-11-13:2021-11-13</header>
427 <token>,fullsize=203,cursor=200</token>
428 </response>
429 XML;
430
431 $response = $processor->getResponseToRequest($original_request);
432
433 $this->assertEquals(
434 [['from' => null, 'until' => '2024-07-28', 'limit' => 100, 'offset' => 200]],
435 $repo->exposed_parameters
436 );
437 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
438 }
439
440 public function testGetResponseToRequestListIdentifiersNoMDFormatError(): void
441 {
442 $processor = new RequestProcessor(
443 $this->getWriter(),
444 $this->getSettings('prefix_'),
445 $repo = $this->getRepository(
446 null,
447 3,
448 'id1+2022-11-27',
449 'id2+2022-11-27',
450 'id3+2021-11-13'
451 ),
452 $this->getTokenHandler()
453 );
454
455 $expected_response = <<<XML
456 <error_response>
457 <response_info>base url:ListIdentifiers:</response_info>
458 <error>badArgument</error>
459 </error_response>
460 XML;
461
462 $response = $processor->getResponseToRequest($this->getRequest(
463 'base url',
464 Verb::LIST_IDENTIFIERS,
465 [],
466 false
467 ));
468
469 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
470 }
471
472 public function testGetResponseToRequestListIdentifiersAdditionalArgumentError(): void
473 {
474 $processor = new RequestProcessor(
475 $this->getWriter(),
476 $this->getSettings('prefix_'),
477 $repo = $this->getRepository(
478 null,
479 3,
480 'id1+2022-11-27',
481 'id2+2022-11-27',
482 'id3+2021-11-13'
483 ),
484 $this->getTokenHandler()
485 );
486
487 $expected_response = <<<XML
488 <error_response>
489 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc,identifier=id</response_info>
490 <error>badArgument</error>
491 </error_response>
492 XML;
493
494 $response = $processor->getResponseToRequest($this->getRequest(
495 'base url',
496 Verb::LIST_IDENTIFIERS,
497 [Argument::MD_PREFIX->value => 'oai_dc', Argument::IDENTIFIER->value => 'id'],
498 false
499 ));
500
501 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
502 }
503
504 public function testGetResponseToRequestListIdentifiersBadResumptionTokenError(): void
505 {
506 $original_request = $this->getRequest(
507 'base url',
508 Verb::LIST_IDENTIFIERS,
509 [Argument::RESUMPTION_TOKEN->value => 'next_offset=100:from=:until=2024-07-28'],
510 );
511
512 $appended_request = $this->getRequest(
513 'base url',
514 Verb::LIST_IDENTIFIERS,
515 [
516 Argument::RESUMPTION_TOKEN->value => 'next_offset=100:from=:until=2024-07-28',
517 Argument::UNTIL_DATE->value => '2024-07-28'
518 ],
519 );
520
521 $processor = new RequestProcessor(
522 $this->getWriter(),
523 $this->getSettings('prefix_'),
524 $repo = $this->getRepository(
525 null,
526 203,
527 'id1+2022-11-27',
528 'id2+2022-11-27',
529 'id3+2021-11-13'
530 ),
531 $this->getTokenHandler(false, $appended_request)
532 );
533
534 $expected_response = <<<XML
535 <error_response>
536 <response_info>base url:ListIdentifiers:resumptionToken=next_offset=100:from=:until=2024-07-28</response_info>
537 <error>badResumptionToken</error>
538 </error_response>
539 XML;
540
541 $response = $processor->getResponseToRequest($original_request);
542
543 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
544 }
545
546 public function testGetResponseToRequestListIdentifiersInvalidFromDateError(): void
547 {
548 $processor = new RequestProcessor(
549 $this->getWriter(),
550 $this->getSettings('prefix_'),
551 $repo = $this->getRepository(
552 null,
553 3,
554 'id1+2022-11-27',
555 'id2+2022-11-27',
556 'id3+2021-11-13'
557 ),
558 $this->getTokenHandler()
559 );
560
561 $expected_response = <<<XML
562 <error_response>
563 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc,from=invalid</response_info>
564 <error>badArgument</error>
565 </error_response>
566 XML;
567
568 $response = $processor->getResponseToRequest($this->getRequest(
569 'base url',
570 Verb::LIST_IDENTIFIERS,
571 [Argument::MD_PREFIX->value => 'oai_dc', Argument::FROM_DATE->value => 'invalid'],
572 ));
573
574 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
575 }
576
577 public function testGetResponseToRequestListIdentifiersInvalidUntilDateError(): void
578 {
579 $processor = new RequestProcessor(
580 $this->getWriter(),
581 $this->getSettings('prefix_'),
582 $repo = $this->getRepository(
583 null,
584 3,
585 'id1+2022-11-27',
586 'id2+2022-11-27',
587 'id3+2021-11-13'
588 ),
589 $this->getTokenHandler()
590 );
591
592 $expected_response = <<<XML
593 <error_response>
594 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc,until=invalid</response_info>
595 <error>badArgument</error>
596 </error_response>
597 XML;
598
599 $response = $processor->getResponseToRequest($this->getRequest(
600 'base url',
601 Verb::LIST_IDENTIFIERS,
602 [Argument::MD_PREFIX->value => 'oai_dc', Argument::UNTIL_DATE->value => 'invalid'],
603 ));
604
605 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
606 }
607
608 public function testGetResponseToRequestListIdentifiersWrongMDFormatError(): void
609 {
610 $processor = new RequestProcessor(
611 $this->getWriter(),
612 $this->getSettings('prefix_'),
613 $repo = $this->getRepository(
614 null,
615 3,
616 'id1+2022-11-27',
617 'id2+2022-11-27',
618 'id3+2021-11-13'
619 ),
620 $this->getTokenHandler()
621 );
622
623 $expected_response = <<<XML
624 <error_response>
625 <response_info>base url:ListIdentifiers:metadataPrefix=invalid</response_info>
626 <error>cannotDisseminateFormat</error>
627 </error_response>
628 XML;
629
630 $response = $processor->getResponseToRequest($this->getRequest(
631 'base url',
632 Verb::LIST_IDENTIFIERS,
633 [Argument::MD_PREFIX->value => 'invalid'],
634 ));
635
636 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
637 }
638
639 public function testGetResponseToRequestListIdentifiersNoRecordsFoundError(): void
640 {
641 $processor = new RequestProcessor(
642 $this->getWriter(),
643 $this->getSettings('prefix_'),
644 $repo = $this->getRepository(),
645 $this->getTokenHandler()
646 );
647
648 $expected_response = <<<XML
649 <error_response>
650 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc</response_info>
651 <error>noRecordsMatch</error>
652 </error_response>
653 XML;
654
655 $response = $processor->getResponseToRequest($this->getRequest(
656 'base url',
657 Verb::LIST_IDENTIFIERS,
658 [Argument::MD_PREFIX->value => 'oai_dc'],
659 ));
660
661 $this->assertEquals(
662 [['from' => null, 'until' => null, 'limit' => 100, 'offset' => 0]],
663 $repo->exposed_parameters
664 );
665 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
666 }
667
668 public function testGetResponseToRequestListIdentifiersNonDefaultSetError(): void
669 {
670 $processor = new RequestProcessor(
671 $this->getWriter(),
672 $this->getSettings('prefix_'),
673 $repo = $this->getRepository(
674 null,
675 3,
676 'id1+2022-11-27',
677 'id2+2022-11-27',
678 'id3+2021-11-13'
679 ),
680 $this->getTokenHandler()
681 );
682
683 $expected_response = <<<XML
684 <error_response>
685 <response_info>base url:ListIdentifiers:metadataPrefix=oai_dc,set=set</response_info>
686 <error>noRecordsMatch</error>
687 </error_response>
688 XML;
689
690 $response = $processor->getResponseToRequest($this->getRequest(
691 'base url',
692 Verb::LIST_IDENTIFIERS,
693 [Argument::MD_PREFIX->value => 'oai_dc', Argument::SET->value => 'set'],
694 ));
695
696 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
697 }
698
699 public function testGetResponseToRequestListIdentifiersMultipleErrors(): void
700 {
701 $processor = new RequestProcessor(
702 $this->getWriter(),
703 $this->getSettings('prefix_'),
704 $repo = $this->getRepository(),
705 $this->getTokenHandler()
706 );
707
708 $expected_response = <<<XML
709 <error_response>
710 <response_info>base url:ListIdentifiers:metadataPrefix=invalid,until=also invalid,from=more invalid,set=set,identifier=id</response_info>
711 <error>badArgument</error>
712 <error>noRecordsMatch</error>
713 <error>cannotDisseminateFormat</error>
714 <error>badArgument</error>
715 <error>badArgument</error>
716 <error>noRecordsMatch</error>
717 </error_response>
718 XML;
719
720 $response = $processor->getResponseToRequest($this->getRequest(
721 'base url',
722 Verb::LIST_IDENTIFIERS,
723 [
724 Argument::MD_PREFIX->value => 'invalid',
725 Argument::UNTIL_DATE->value => 'also invalid',
726 Argument::FROM_DATE->value => 'more invalid',
727 Argument::SET->value => 'set',
728 Argument::IDENTIFIER->value => 'id'
729 ],
730 false
731 ));
732
733 $this->assertEquals(
734 [['from' => null, 'until' => null, 'limit' => 100, 'offset' => 0]],
735 $repo->exposed_parameters
736 );
737 $this->assertXmlStringEqualsXmlString($expected_response, $response->saveXML());
738 }
739}
error(string $a_errmsg)
$response
Definition: xapitoken.php:90