19 declare(strict_types=1);
26 class RequestProcessorListMetadataFormatsTest
extends RequestProcessorTestCase
28 public function testGetResponseToRequestListMetadataFormats(): void
30 $processor =
new RequestProcessor(
33 $this->getRepository(),
34 $this->getTokenHandler()
37 $expected_response = <<<XML
39 <response_info>
base url:ListMetadataFormats:</response_info>
40 <md_format>some metadata</md_format>
44 $response = $processor->getResponseToRequest($this->getRequest(
46 Verb::LIST_MD_FORMATS,
50 $this->assertXmlStringEqualsXmlString($expected_response,
$response->saveXML());
53 public function testGetResponseToRequestListMetadataFormatsWithIdentifier(): void
55 $processor =
new RequestProcessor(
57 $this->getSettings(
'prefix_'),
58 $this->getRepository(
null, 0,
'id'),
59 $this->getTokenHandler()
62 $expected_response = <<<XML
64 <response_info>
base url:ListMetadataFormats:identifier=prefix_id</response_info>
65 <md_format>some metadata</md_format>
69 $response = $processor->getResponseToRequest($this->getRequest(
71 Verb::LIST_MD_FORMATS,
72 [Argument::IDENTIFIER->value =>
'prefix_id']
75 $this->assertXmlStringEqualsXmlString($expected_response,
$response->saveXML());
78 public function testGetResponseToRequestListMetadataFormatsAdditionalArgumentError(): void
80 $processor =
new RequestProcessor(
83 $this->getRepository(),
84 $this->getTokenHandler()
87 $expected_response = <<<XML
89 <response_info>
base url:ListMetadataFormats:until=some date</response_info>
90 <error>badArgument</error>
94 $response = $processor->getResponseToRequest($this->getRequest(
96 Verb::LIST_MD_FORMATS,
97 [Argument::UNTIL_DATE->value =>
'some date'],
101 $this->assertXmlStringEqualsXmlString($expected_response,
$response->saveXML());
104 public function testGetResponseToRequestListMetadataFormatsInvalidIdentifierError(): void
106 $processor =
new RequestProcessor(
108 $this->getSettings(
'prefix_'),
109 $this->getRepository(
null, 0,
'no prefix'),
110 $this->getTokenHandler()
113 $expected_response = <<<XML
115 <response_info>
base url:ListMetadataFormats:identifier=no prefix</response_info>
116 <error>idDoesNotExist</error>
120 $response = $processor->getResponseToRequest($this->getRequest(
122 Verb::LIST_MD_FORMATS,
123 [Argument::IDENTIFIER->value =>
'no prefix']
126 $this->assertXmlStringEqualsXmlString($expected_response,
$response->saveXML());
129 public function testGetResponseToRequestListMetadataFormatsRecordNotFoundError(): void
131 $processor =
new RequestProcessor(
133 $this->getSettings(
'prefix_'),
134 $this->getRepository(),
135 $this->getTokenHandler()
138 $expected_response = <<<XML
140 <response_info>
base url:ListMetadataFormats:identifier=prefix_id</response_info>
141 <error>idDoesNotExist</error>
145 $response = $processor->getResponseToRequest($this->getRequest(
147 Verb::LIST_MD_FORMATS,
148 [Argument::IDENTIFIER->value =>
'prefix_id']
151 $this->assertXmlStringEqualsXmlString($expected_response,
$response->saveXML());
154 public function testGetResponseToRequestListMetadataFormatsMultipleErrors(): void
156 $processor =
new RequestProcessor(
158 $this->getSettings(
'prefix_'),
159 $this->getRepository(),
160 $this->getTokenHandler()
163 $expected_response = <<<XML
165 <response_info>
base url:ListMetadataFormats:identifier=prefix_id,until=some date</response_info>
166 <error>badArgument</error>
167 <error>idDoesNotExist</error>
171 $response = $processor->getResponseToRequest($this->getRequest(
173 Verb::LIST_MD_FORMATS,
174 [Argument::IDENTIFIER->value =>
'prefix_id', Argument::UNTIL_DATE->value =>
'some date'],
178 $this->assertXmlStringEqualsXmlString($expected_response,
$response->saveXML());
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null