20 use Slim\Psr7\Factory\StreamFactory;
21 use Slim\Psr7\Headers;
22 use Slim\Psr7\Request;
35 private $osselotController;
37 protected function setUp() :
void
39 $container = M::mock(
'ContainerBuilder');
40 $this->dbHelper = M::mock(DbHelper::class);
41 $restHelper = M::mock(RestHelper::class);
42 $restHelper->shouldReceive(
'getDbHelper')->andReturn($this->dbHelper);
43 $container->shouldReceive(
'get')->withArgs(array(
44 'helper.restHelper'))->andReturn($restHelper);
48 protected function tearDown() :
void
59 $GLOBALS[
'SysConf'] = [
'SYSCONFIG' => []];
60 if ($value !==
null) {
61 $GLOBALS[
'SysConf'][
'SYSCONFIG'][
'EnableOsselotReuse'] = $value;
63 return new Request(
"POST",
new Uri(
"HTTP",
"localhost"),
new Headers(),
64 [], [], (
new StreamFactory())->createStream());
67 private function assertDisabled($response)
69 $response->getBody()->seek(0);
70 $this->assertEquals(501, $response->getStatusCode());
71 $this->assertEquals(
"OSSelot integration is disabled",
72 json_decode($response->getBody()->getContents(),
true)[
'message']);
81 'unchecked in admin UI' => [
'false'],
82 'not configured' => [
null]
91 $request = $this->
prepare($value);
92 $this->assertDisabled($this->osselotController->getPackageVersions(
101 $request = $this->
prepare($value);
102 $this->dbHelper->shouldNotReceive(
'doesIdExist');
103 $this->assertDisabled($this->osselotController->importOsselotReport(
107 public function testGetPackageVersionsEnabled()
109 $request = $this->
prepare(
'true');
110 $this->expectException(HttpBadRequestException::class);
111 $this->osselotController->getPackageVersions($request,
Controller for OSSelot REST API endpoints.
Provides helper methods to access database for REST api.
Override Slim response for withJson function.
Provides various DAO helper functions for REST api.
Test cases for OsselotController.
testGetPackageVersionsDisabled($value)
testImportOsselotReportDisabled($value)
static disabledProvider()