Added a few test to cover api docs pages

This commit is contained in:
Dan Brown 2020-01-18 10:04:13 +00:00
parent 8ead596067
commit 64455307b1
No known key found for this signature in database
GPG key ID: 46D9F943C24A2EF9
2 changed files with 42 additions and 2 deletions

42
tests/Api/ApiDocsTest.php Normal file
View file

@ -0,0 +1,42 @@
<?php
namespace Tests;
class ApiDocsTest extends TestCase
{
use TestsApi;
protected $endpoint = '/api/docs';
public function test_docs_page_not_visible_to_normal_viewers()
{
$viewer = $this->getViewer();
$resp = $this->actingAs($viewer)->get($this->endpoint);
$resp->assertStatus(403);
$resp = $this->actingAsApiEditor()->get($this->endpoint);
$resp->assertStatus(200);
}
public function test_docs_page_returns_view_with_docs_content()
{
$resp = $this->actingAsApiEditor()->get($this->endpoint);
$resp->assertStatus(200);
$resp->assertSee(url('/api/docs.json'));
$resp->assertSee('Show a JSON view of the API docs data.');
$resp->assertHeader('Content-Type', 'text/html; charset=UTF-8');
}
public function test_docs_json_endpoint_returns_json()
{
$resp = $this->actingAsApiEditor()->get($this->endpoint . '.json');
$resp->assertStatus(200);
$resp->assertHeader('Content-Type', 'application/json');
$resp->assertJson([
'docs' => [ [
'name' => 'docs-display',
'uri' => 'api/docs'
] ]
]);
}
}

View file

@ -2,9 +2,7 @@
namespace Tests;
use BookStack\Auth\Permissions\RolePermission;
use BookStack\Entities\Book;
use Carbon\Carbon;
class ApiListingTest extends TestCase
{