expectException(BadRequestException::class); $create = new Create(DI::app(), DI::l10n(), DI::baseUrl(), DI::args(), DI::logger(), DI::profiler(), DI::apiResponse(), ['REQUEST_METHOD' => Router::POST]); $create->run(); } /** * Test the api_favorites_create_destroy() function with the create action. * * @return void */ public function testApiFavoritesCreateDestroyWithCreateAction() { $create = new Create(DI::app(), DI::l10n(), DI::baseUrl(), DI::args(), DI::logger(), DI::profiler(), DI::apiResponse(), ['REQUEST_METHOD' => Router::POST]); $response = $create->run(['id' => 3]); $json = $this->toJson($response); self::assertStatus($json); } /** * Test the api_favorites_create_destroy() function with the create action and an RSS result. * * @return void */ public function testApiFavoritesCreateDestroyWithCreateActionAndRss() { $create = new Create(DI::app(), DI::l10n(), DI::baseUrl(), DI::args(), DI::logger(), DI::profiler(), DI::apiResponse(), ['REQUEST_METHOD' => Router::POST], ['extension' => ICanCreateResponses::TYPE_RSS]); $response = $create->run(['id' => 3]); self::assertEquals(ICanCreateResponses::TYPE_RSS, $response->getHeaderLine(ICanCreateResponses::X_HEADER)); self::assertXml((string)$response->getBody(), 'statuses'); } /** * Test the api_favorites_create_destroy() function without an authenticated user. * * @return void */ public function testApiFavoritesCreateDestroyWithoutAuthenticatedUser() { self::markTestIncomplete('Needs refactoring of Lists - replace filter_input() with $request parameter checks'); /* $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); DI::args()->setArgv(['api', '1.1', 'favorites', 'create.json']); BasicAuth::setCurrentUserID(); $_SESSION['authenticated'] = false; api_favorites_create_destroy('json'); */ } }