mirror of
https://github.com/friendica/friendica
synced 2025-04-26 00:30:12 +00:00
Migrate API\error tests and fix ApiResponse for RSS/atom
This commit is contained in:
parent
23939cd0f1
commit
7797c3a0a8
3 changed files with 93 additions and 112 deletions
93
tests/src/Module/Api/ApiResponseTest.php
Normal file
93
tests/src/Module/Api/ApiResponseTest.php
Normal file
|
@ -0,0 +1,93 @@
|
|||
<?php
|
||||
|
||||
namespace Friendica\Test\src\Module\Api;
|
||||
|
||||
use Friendica\App\Arguments;
|
||||
use Friendica\Core\L10n;
|
||||
use Friendica\Test\MockedTest;
|
||||
use Friendica\Test\Util\ApiResponseDouble;
|
||||
use Psr\Log\NullLogger;
|
||||
|
||||
class ApiResponseTest extends MockedTest
|
||||
{
|
||||
protected function tearDown(): void
|
||||
{
|
||||
ApiResponseDouble::reset();
|
||||
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
public function testErrorWithJson()
|
||||
{
|
||||
$l10n = \Mockery::mock(L10n::class);
|
||||
$args = \Mockery::mock(Arguments::class);
|
||||
$args->shouldReceive('getQueryString')->andReturn('');
|
||||
|
||||
$response = new ApiResponseDouble($l10n, $args, new NullLogger());
|
||||
$response->error(200, 'OK', 'error_message', 'json');
|
||||
|
||||
self::assertEquals('{"error":"error_message","code":"200 OK","request":""}', ApiResponseDouble::getOutput());
|
||||
}
|
||||
|
||||
public function testErrorWithXml()
|
||||
{
|
||||
$l10n = \Mockery::mock(L10n::class);
|
||||
$args = \Mockery::mock(Arguments::class);
|
||||
$args->shouldReceive('getQueryString')->andReturn('');
|
||||
|
||||
$response = new ApiResponseDouble($l10n, $args, new NullLogger());
|
||||
$response->error(200, 'OK', 'error_message', 'xml');
|
||||
|
||||
self::assertEquals('<?xml version="1.0"?>' . "\n" .
|
||||
'<status xmlns="http://api.twitter.com" xmlns:statusnet="http://status.net/schema/api/1/" ' .
|
||||
'xmlns:friendica="http://friendi.ca/schema/api/1/" ' .
|
||||
'xmlns:georss="http://www.georss.org/georss">' . "\n" .
|
||||
' <error>error_message</error>' . "\n" .
|
||||
' <code>200 OK</code>' . "\n" .
|
||||
' <request/>' . "\n" .
|
||||
'</status>' . "\n",
|
||||
ApiResponseDouble::getOutput());
|
||||
}
|
||||
|
||||
public function testErrorWithRss()
|
||||
{
|
||||
$l10n = \Mockery::mock(L10n::class);
|
||||
$args = \Mockery::mock(Arguments::class);
|
||||
$args->shouldReceive('getQueryString')->andReturn('');
|
||||
|
||||
$response = new ApiResponseDouble($l10n, $args, new NullLogger());
|
||||
$response->error(200, 'OK', 'error_message', 'rss');
|
||||
|
||||
self::assertEquals(
|
||||
'<?xml version="1.0"?>' . "\n" .
|
||||
'<status xmlns="http://api.twitter.com" xmlns:statusnet="http://status.net/schema/api/1/" ' .
|
||||
'xmlns:friendica="http://friendi.ca/schema/api/1/" ' .
|
||||
'xmlns:georss="http://www.georss.org/georss">' . "\n" .
|
||||
' <error>error_message</error>' . "\n" .
|
||||
' <code>200 OK</code>' . "\n" .
|
||||
' <request/>' . "\n" .
|
||||
'</status>' . "\n",
|
||||
ApiResponseDouble::getOutput());
|
||||
}
|
||||
|
||||
public function testErrorWithAtom()
|
||||
{
|
||||
$l10n = \Mockery::mock(L10n::class);
|
||||
$args = \Mockery::mock(Arguments::class);
|
||||
$args->shouldReceive('getQueryString')->andReturn('');
|
||||
|
||||
$response = new ApiResponseDouble($l10n, $args, new NullLogger());
|
||||
$response->error(200, 'OK', 'error_message', 'atom');
|
||||
|
||||
self::assertEquals(
|
||||
'<?xml version="1.0"?>' . "\n" .
|
||||
'<status xmlns="http://api.twitter.com" xmlns:statusnet="http://status.net/schema/api/1/" ' .
|
||||
'xmlns:friendica="http://friendi.ca/schema/api/1/" ' .
|
||||
'xmlns:georss="http://www.georss.org/georss">' . "\n" .
|
||||
' <error>error_message</error>' . "\n" .
|
||||
' <code>200 OK</code>' . "\n" .
|
||||
' <request/>' . "\n" .
|
||||
'</status>' . "\n",
|
||||
ApiResponseDouble::getOutput());
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue