mirror of
https://github.com/friendica/friendica
synced 2024-12-22 19:20:17 +00:00
Move ApiResponse & Twitter Status tests
This commit is contained in:
parent
2c15fb03ff
commit
2e221943d4
3 changed files with 194 additions and 133 deletions
|
@ -8,7 +8,6 @@ namespace Friendica\Test\legacy;
|
|||
use Friendica\App;
|
||||
use Friendica\Core\Config\Capability\IManageConfigValues;
|
||||
use Friendica\DI;
|
||||
use Friendica\Module\Api\ApiResponse;
|
||||
use Friendica\Module\BaseApi;
|
||||
use Friendica\Security\BasicAuth;
|
||||
use Friendica\Test\FixtureTest;
|
||||
|
@ -536,107 +535,7 @@ class ApiTest extends FixtureTest
|
|||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::reformatXML() function.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiReformatXml()
|
||||
{
|
||||
$item = true;
|
||||
$key = '';
|
||||
self::assertTrue(ApiResponse::reformatXML($item, $key));
|
||||
self::assertEquals('true', $item);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::reformatXML() function with a statusnet_api key.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiReformatXmlWithStatusnetKey()
|
||||
{
|
||||
$item = '';
|
||||
$key = 'statusnet_api';
|
||||
self::assertTrue(ApiResponse::reformatXML($item, $key));
|
||||
self::assertEquals('statusnet:api', $key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::reformatXML() function with a friendica_api key.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiReformatXmlWithFriendicaKey()
|
||||
{
|
||||
$item = '';
|
||||
$key = 'friendica_api';
|
||||
self::assertTrue(ApiResponse::reformatXML($item, $key));
|
||||
self::assertEquals('friendica:api', $key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::createXML() function.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiCreateXml()
|
||||
{
|
||||
self::assertEquals(
|
||||
'<?xml version="1.0"?>' . "\n" .
|
||||
'<root_element 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" .
|
||||
' <data>some_data</data>' . "\n" .
|
||||
'</root_element>' . "\n",
|
||||
DI::apiResponse()->createXML(['data' => ['some_data']], 'root_element')
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::createXML() function without any XML namespace.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiCreateXmlWithoutNamespaces()
|
||||
{
|
||||
self::assertEquals(
|
||||
'<?xml version="1.0"?>' . "\n" .
|
||||
'<ok>' . "\n" .
|
||||
' <data>some_data</data>' . "\n" .
|
||||
'</ok>' . "\n",
|
||||
DI::apiResponse()->createXML(['data' => ['some_data']], 'ok')
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::formatData() function.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiFormatData()
|
||||
{
|
||||
$data = ['some_data'];
|
||||
self::assertEquals($data, DI::apiResponse()->formatData('root_element', 'json', $data));
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::formatData() function with an XML result.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiFormatDataWithXml()
|
||||
{
|
||||
self::assertEquals(
|
||||
'<?xml version="1.0"?>' . "\n" .
|
||||
'<root_element 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" .
|
||||
' <data>some_data</data>' . "\n" .
|
||||
'</root_element>' . "\n",
|
||||
DI::apiResponse()->formatData('root_element', 'xml', ['data' => ['some_data']])
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the api_format_items_embeded_images() function.
|
||||
|
@ -653,38 +552,6 @@ class ApiTest extends FixtureTest
|
|||
*/
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the api_format_items_activities() function.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiFormatItemsActivities()
|
||||
{
|
||||
$item = ['uid' => 0, 'uri-id' => 1];
|
||||
$result = DI::friendicaActivities()->createFromUriId($item['uri-id'], $item['uid']);
|
||||
self::assertArrayHasKey('like', $result);
|
||||
self::assertArrayHasKey('dislike', $result);
|
||||
self::assertArrayHasKey('attendyes', $result);
|
||||
self::assertArrayHasKey('attendno', $result);
|
||||
self::assertArrayHasKey('attendmaybe', $result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the api_format_items_activities() function with an XML result.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiFormatItemsActivitiesWithXml()
|
||||
{
|
||||
$item = ['uid' => 0, 'uri-id' => 1];
|
||||
$result = DI::friendicaActivities()->createFromUriId($item['uri-id'], $item['uid'], 'xml');
|
||||
self::assertArrayHasKey('friendica:like', $result);
|
||||
self::assertArrayHasKey('friendica:dislike', $result);
|
||||
self::assertArrayHasKey('friendica:attendyes', $result);
|
||||
self::assertArrayHasKey('friendica:attendno', $result);
|
||||
self::assertArrayHasKey('friendica:attendmaybe', $result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the api_format_items() function.
|
||||
* @doesNotPerformAssertions
|
||||
|
|
48
tests/src/Factory/Api/Twitter/ActvitiesTest.php
Normal file
48
tests/src/Factory/Api/Twitter/ActvitiesTest.php
Normal file
|
@ -0,0 +1,48 @@
|
|||
<?php
|
||||
|
||||
namespace Friendica\Test\src\Factory\Api\Twitter;
|
||||
|
||||
use Friendica\DI;
|
||||
use Friendica\Factory\Api\Friendica\Activities;
|
||||
use Friendica\Test\FixtureTest;
|
||||
|
||||
class ActvitiesTest extends FixtureTest
|
||||
{
|
||||
/**
|
||||
* Test the api_format_items_activities() function.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiFormatItemsActivities()
|
||||
{
|
||||
$item = ['uid' => 0, 'uri-id' => 1];
|
||||
|
||||
$friendicaActivitiesFac = new Activities(DI::logger(), DI::baseUrl(), DI::twitterUser());
|
||||
$result = $friendicaActivitiesFac->createFromUriId($item['uri-id'], $item['uid']);
|
||||
|
||||
self::assertArrayHasKey('like', $result);
|
||||
self::assertArrayHasKey('dislike', $result);
|
||||
self::assertArrayHasKey('attendyes', $result);
|
||||
self::assertArrayHasKey('attendno', $result);
|
||||
self::assertArrayHasKey('attendmaybe', $result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the api_format_items_activities() function with an XML result.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiFormatItemsActivitiesWithXml()
|
||||
{
|
||||
$item = ['uid' => 0, 'uri-id' => 1];
|
||||
|
||||
$friendicaActivitiesFac = new Activities(DI::logger(), DI::baseUrl(), DI::twitterUser());
|
||||
$result = $friendicaActivitiesFac->createFromUriId($item['uri-id'], $item['uid'], 'xml');
|
||||
|
||||
self::assertArrayHasKey('friendica:like', $result);
|
||||
self::assertArrayHasKey('friendica:dislike', $result);
|
||||
self::assertArrayHasKey('friendica:attendyes', $result);
|
||||
self::assertArrayHasKey('friendica:attendno', $result);
|
||||
self::assertArrayHasKey('friendica:attendmaybe', $result);
|
||||
}
|
||||
}
|
|
@ -113,4 +113,150 @@ class ApiResponseTest extends MockedTest
|
|||
|
||||
self::assertEquals('{"error":"API endpoint %s %s is not implemented","error_description":"The API endpoint is currently not implemented but might be in the future."}', $response->getContent());
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::reformatXML() function.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiReformatXml()
|
||||
{
|
||||
$item = true;
|
||||
$key = '';
|
||||
self::assertTrue(ApiResponse::reformatXML($item, $key));
|
||||
self::assertEquals('true', $item);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::reformatXML() function with a statusnet_api key.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiReformatXmlWithStatusnetKey()
|
||||
{
|
||||
$item = '';
|
||||
$key = 'statusnet_api';
|
||||
self::assertTrue(ApiResponse::reformatXML($item, $key));
|
||||
self::assertEquals('statusnet:api', $key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::reformatXML() function with a friendica_api key.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiReformatXmlWithFriendicaKey()
|
||||
{
|
||||
$item = '';
|
||||
$key = 'friendica_api';
|
||||
self::assertTrue(ApiResponse::reformatXML($item, $key));
|
||||
self::assertEquals('friendica:api', $key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::createXML() function.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiCreateXml()
|
||||
{
|
||||
$l10n = \Mockery::mock(L10n::class);
|
||||
$l10n->shouldReceive('t')->andReturnUsing(function ($args) {
|
||||
return $args;
|
||||
});
|
||||
$args = \Mockery::mock(Arguments::class);
|
||||
$args->shouldReceive('getQueryString')->andReturn('');
|
||||
$baseUrl = \Mockery::mock(BaseURL::class);
|
||||
$twitterUser = \Mockery::mock(User::class);
|
||||
|
||||
$response = new ApiResponse($l10n, $args, new NullLogger(), $baseUrl, $twitterUser);
|
||||
|
||||
self::assertEquals(
|
||||
'<?xml version="1.0"?>' . "\n" .
|
||||
'<root_element 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" .
|
||||
' <data>some_data</data>' . "\n" .
|
||||
'</root_element>' . "\n",
|
||||
$response->createXML(['data' => ['some_data']], 'root_element')
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::createXML() function without any XML namespace.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiCreateXmlWithoutNamespaces()
|
||||
{
|
||||
$l10n = \Mockery::mock(L10n::class);
|
||||
$l10n->shouldReceive('t')->andReturnUsing(function ($args) {
|
||||
return $args;
|
||||
});
|
||||
$args = \Mockery::mock(Arguments::class);
|
||||
$args->shouldReceive('getQueryString')->andReturn('');
|
||||
$baseUrl = \Mockery::mock(BaseURL::class);
|
||||
$twitterUser = \Mockery::mock(User::class);
|
||||
|
||||
$response = new ApiResponse($l10n, $args, new NullLogger(), $baseUrl, $twitterUser);
|
||||
|
||||
self::assertEquals(
|
||||
'<?xml version="1.0"?>' . "\n" .
|
||||
'<ok>' . "\n" .
|
||||
' <data>some_data</data>' . "\n" .
|
||||
'</ok>' . "\n",
|
||||
$response->createXML(['data' => ['some_data']], 'ok')
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::formatData() function.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiFormatData()
|
||||
{
|
||||
$l10n = \Mockery::mock(L10n::class);
|
||||
$l10n->shouldReceive('t')->andReturnUsing(function ($args) {
|
||||
return $args;
|
||||
});
|
||||
$args = \Mockery::mock(Arguments::class);
|
||||
$args->shouldReceive('getQueryString')->andReturn('');
|
||||
$baseUrl = \Mockery::mock(BaseURL::class);
|
||||
$twitterUser = \Mockery::mock(User::class);
|
||||
|
||||
$response = new ApiResponse($l10n, $args, new NullLogger(), $baseUrl, $twitterUser);
|
||||
|
||||
$data = ['some_data'];
|
||||
self::assertEquals($data, $response->formatData('root_element', 'json', $data));
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the BaseApi::formatData() function with an XML result.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function testApiFormatDataWithXml()
|
||||
{
|
||||
$l10n = \Mockery::mock(L10n::class);
|
||||
$l10n->shouldReceive('t')->andReturnUsing(function ($args) {
|
||||
return $args;
|
||||
});
|
||||
$args = \Mockery::mock(Arguments::class);
|
||||
$args->shouldReceive('getQueryString')->andReturn('');
|
||||
$baseUrl = \Mockery::mock(BaseURL::class);
|
||||
$twitterUser = \Mockery::mock(User::class);
|
||||
|
||||
$response = new ApiResponse($l10n, $args, new NullLogger(), $baseUrl, $twitterUser);
|
||||
|
||||
self::assertEquals(
|
||||
'<?xml version="1.0"?>' . "\n" .
|
||||
'<root_element 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" .
|
||||
' <data>some_data</data>' . "\n" .
|
||||
'</root_element>' . "\n",
|
||||
$response->formatData('root_element', 'xml', ['data' => ['some_data']])
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue