1. Go to this page and download the library: Download deepdiver/spectator library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
deepdiver / spectator example snippets
public function testBasicExample()
{
Spectator::using('Api.v1.json');
// ...
class ExampleTest extends TestCase
{
/**
* A basic functional test example.
*
* @return void
*/
public function testBasicExample()
{
$response = $this->postJson('/user', ['name' => 'Sally']);
$response
->assertStatus(201)
->assertJson([
'created' => true,
]);
}
}
use Spectator/Spectator;
class ExampleTest extends TestCase
{
/**
* A basic functional test example.
*
* @return void
*/
public function testBasicExample()
{
Spectator::using('Api.v1.json');
$response = $this->postJson('/user', ['name' => 'Sally']);
$response
->assertValidRequest()
->assertValidResponse(201);
}
}
use Spectator/Spectator;
class ExampleTest extends TestCase
{
public function setUp(): void
{
parent::setUp();
Spectator::using('Api.v1.json');
}
public function testApiEndpoint()
{
// Test request and response...
}
public function testDifferentApiEndpoint()
{
Spectator::using('Other.v1.json');
// Test request and response...
}
}
$this->assertValidRequest();
$this->assertValidResponse($status = null);
$this->assertValidationMessage('Expected validation message');
$this->assertErrorsContain('Check for single error');
$this->assertErrorsContain(['Check for', 'Multiple Errors']);
$this
->actingAs($user)
->postJson('/comments', [
'message' => 'Just over here spectating',
])
->assertCreated()
->assertValidRequest()
->assertValidResponse();
$this
->actingAs($user)
->postJson('/comments', [
'message' => 'Just over here spectating',
])
->assertValidRequest()
->assertValidResponse(201);
class ExampleTestCase
{
public function setUp(): void
{
parent::setUp();
Spectator::using('Api.v1.json');
// Disable exception handling for all tests in this file
$this->withoutExceptionHandling();
}
// ...
}
class ExampleTestCase
{
public function test_some_contract_test_example(): void
{
// Only disable exception handling for this test
$this->withouthExceptionHandling();
// Test request and response ...
}
}