diff options
author | Daniel Kesselberg <mail@danielkesselberg.de> | 2020-01-16 14:04:23 +0100 |
---|---|---|
committer | Backportbot <backportbot-noreply@rullzer.com> | 2020-02-06 20:32:23 +0000 |
commit | 2a5ae7ab4829692dc7587081d59ec2010507c802 (patch) | |
tree | d1a58dd9653ed50d68ee84928dc84a50e3b1b6b7 | |
parent | 8e02d45d4d3929c2130da423c5c74af2e272c553 (diff) | |
download | nextcloud-server-2a5ae7ab4829692dc7587081d59ec2010507c802.tar.gz nextcloud-server-2a5ae7ab4829692dc7587081d59ec2010507c802.zip |
Add test to trigger "Trying to access array offset on value of type int"
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
-rw-r--r-- | tests/lib/AppFramework/OCS/BaseResponseTest.php | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/tests/lib/AppFramework/OCS/BaseResponseTest.php b/tests/lib/AppFramework/OCS/BaseResponseTest.php new file mode 100644 index 00000000000..8a86ae13e79 --- /dev/null +++ b/tests/lib/AppFramework/OCS/BaseResponseTest.php @@ -0,0 +1,62 @@ +<?php + +declare(strict_types=1); + +/** + * @copyright 2020 Daniel Kesselberg <mail@danielkesselberg.de> + * + * @author 2020 Daniel Kesselberg <mail@danielkesselberg.de> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace Test\AppFramework\Middleware; + + +use OC\AppFramework\OCS\BaseResponse; + +class BaseResponseTest extends \Test\TestCase { + + public function testToXml(): void { + + /** @var BaseResponse $response */ + $response = $this->createMock(BaseResponse::class); + + $writer = new \XMLWriter(); + $writer->openMemory(); + $writer->setIndent(false); + $writer->startDocument(); + + $data = [ + 'hello' => 'hello', + 'information' => [ + '@test' => 'some data', + 'someElement' => 'withAttribute', + ], + 'value without key', + ]; + + $this->invokePrivate($response, 'toXml', [$data, $writer]); + $writer->endDocument(); + + $this->assertEquals( + "<?xml version=\"1.0\"?>\n<hello>hello</hello><information test=\"some data\"><someElement>withAttribute</someElement></information><element>value without key</element>\n", + $writer->outputMemory(true) + ); + } + +} |