]> git.mxchange.org Git - friendica.git/blobdiff - tests/ApiTest.php
Merge pull request #5966 from JeroenED/theme/frio/oembed/view-active-class
[friendica.git] / tests / ApiTest.php
index c8443512c8a461e417b5992c383a608e35f94809..c509c7d2a4233b3ea69ab5b7a6d823246ae357da 100644 (file)
@@ -5,12 +5,14 @@
 
 namespace Friendica\Test;
 
-use Friendica\App;
+use Friendica\BaseObject;
 use Friendica\Core\Config;
 use Friendica\Core\PConfig;
-use Friendica\Network\BadRequestException;
+use Friendica\Core\Protocol;
+use Friendica\Core\System;
 use Friendica\Network\HTTPException;
-use Friendica\Render\FriendicaSmarty;
+
+require_once __DIR__ . '/../include/api.php';
 
 /**
  * Tests for the API functions.
@@ -20,18 +22,14 @@ use Friendica\Render\FriendicaSmarty;
  */
 class ApiTest extends DatabaseTest
 {
-
        /**
         * Create variables used by tests.
         */
-       protected function setUp()
+       public function setUp()
        {
-               global $a;
                parent::setUp();
 
-               // Reusable App object
-               $this->app = new App(__DIR__.'/../');
-               $a = $this->app;
+               $this->app = BaseObject::getApp();
 
                // User data that the test database is populated with
                $this->selfUser = [
@@ -63,6 +61,10 @@ class ApiTest extends DatabaseTest
                        'uid' => $this->selfUser['id']
                ];
 
+               Config::set('system', 'url', 'http://localhost');
+               Config::set('system', 'hostname', 'localhost');
+               Config::set('system', 'worker_dont_fork', true);
+
                // Default config
                Config::set('config', 'hostname', 'localhost');
                Config::set('system', 'throttle_limit_day', 100);
@@ -71,6 +73,17 @@ class ApiTest extends DatabaseTest
                Config::set('system', 'theme', 'system_theme');
        }
 
+       /**
+        * Cleanup variables used by tests.
+        */
+       protected function tearDown()
+       {
+               parent::tearDown();
+
+               $this->app->argc = 1;
+               $this->app->argv = ['home'];
+       }
+
        /**
         * Assert that an user array contains expected keys.
         * @param array $user User array
@@ -719,10 +732,10 @@ class ApiTest extends DatabaseTest
         */
        public function testApiGetUserWithCustomFrioSchema()
        {
-               PConfig::set($this->selfUser['id'], 'frio', 'schema', '---');
-               PConfig::set($this->selfUser['id'], 'frio', 'nav_bg', '#123456');
-               PConfig::set($this->selfUser['id'], 'frio', 'link_color', '#123456');
-               PConfig::set($this->selfUser['id'], 'frio', 'background_color', '#123456');
+               $ret1 = PConfig::set($this->selfUser['id'], 'frio', 'schema', '---');
+               $ret2 = PConfig::set($this->selfUser['id'], 'frio', 'nav_bg', '#123456');
+               $ret3 = PConfig::set($this->selfUser['id'], 'frio', 'link_color', '#123456');
+               $ret4 = PConfig::set($this->selfUser['id'], 'frio', 'background_color', '#123456');
                $user = api_get_user($this->app);
                $this->assertSelfUser($user);
                $this->assertEquals('123456', $user['profile_sidebar_fill_color']);
@@ -1205,7 +1218,8 @@ class ApiTest extends DatabaseTest
        {
                $_FILES = [
                        'media' => [
-                               'id' => 666
+                               'id' => 666,
+                               'tmp_name' => 'tmp_name'
                        ]
                ];
                api_media_upload();
@@ -2164,7 +2178,7 @@ class ApiTest extends DatabaseTest
        public function testApiFormatItemsEmbededImages()
        {
                $this->assertEquals(
-                       'text ' . \Friendica\Core\System::baseUrl() . '/display/item_guid',
+                       'text ' . System::baseUrl() . '/display/item_guid',
                        api_format_items_embeded_images(['guid' => 'item_guid'], 'text data:image/foo')
                );
        }
@@ -2338,7 +2352,7 @@ class ApiTest extends DatabaseTest
                                'body' => '',
                                'verb' => '',
                                'author-id' => 43,
-                               'author-network' => \Friendica\Core\Protocol::DFRN,
+                               'author-network' => Protocol::DFRN,
                                'author-link' => 'http://localhost/profile/othercontact',
                                'plink' => '',
                        ]
@@ -2361,7 +2375,7 @@ class ApiTest extends DatabaseTest
                                'body' => '',
                                'verb' => '',
                                'author-id' => 43,
-                               'author-network' => \Friendica\Core\Protocol::DFRN,
+                               'author-network' => Protocol::DFRN,
                                'author-link' => 'http://localhost/profile/othercontact',
                                'plink' => '',
                        ]
@@ -2635,7 +2649,7 @@ class ApiTest extends DatabaseTest
                $result = api_statusnet_config('json');
                $this->assertEquals('localhost', $result['config']['site']['server']);
                $this->assertEquals('default', $result['config']['site']['theme']);
-               $this->assertEquals(\Friendica\Core\System::baseUrl() . '/images/friendica-64.png', $result['config']['site']['logo']);
+               $this->assertEquals(System::baseUrl() . '/images/friendica-64.png', $result['config']['site']['logo']);
                $this->assertTrue($result['config']['site']['fancy']);
                $this->assertEquals('en', $result['config']['site']['language']);
                $this->assertEquals('UTC', $result['config']['site']['timezone']);
@@ -3365,7 +3379,7 @@ class ApiTest extends DatabaseTest
         */
        public function testApiFriendicaRemoteauthWithCorrectUrl()
        {
-               $this->markTestIncomplete("We can't use an assertion here because of goaway().");
+               $this->markTestIncomplete("We can't use an assertion here because of App->redirect().");
                $_GET['url'] = 'url';
                $_GET['c_url'] = $this->selfUser['nurl'];
                api_friendica_remoteauth();
@@ -3377,7 +3391,7 @@ class ApiTest extends DatabaseTest
         */
        public function testApiShareAsRetweet()
        {
-               $item = ['body' => ''];
+               $item = ['body' => '', 'author-id' => 1, 'owner-id' => 1];
                $result = api_share_as_retweet($item);
                $this->assertFalse($result);
        }