Pterodactyl-Panel/tests/Integration/IntegrationTestCase.php

47 lines
1.3 KiB
PHP
Raw Normal View History

2018-03-04 23:30:16 +01:00
<?php
namespace Pterodactyl\Tests\Integration;
use Carbon\CarbonImmutable;
use Pterodactyl\Tests\TestCase;
2018-03-04 23:30:16 +01:00
use Illuminate\Database\Eloquent\Model;
use Pterodactyl\Tests\Traits\Integration\CreatesTestModels;
2018-03-04 23:30:16 +01:00
use Pterodactyl\Transformers\Api\Application\BaseTransformer;
abstract class IntegrationTestCase extends TestCase
{
use CreatesTestModels;
2018-03-04 23:30:16 +01:00
/**
* Setup base integration test cases.
*/
public function setUp(): void
2018-03-04 23:30:16 +01:00
{
parent::setUp();
// Disable event dispatcher to prevent eloquence from trying to
// perform validation on models going into the database. If this is
// not disabled, eloquence validation errors get swallowed and
// the tests cannot complete because nothing is put into the database.
Model::unsetEventDispatcher();
}
2018-03-26 00:41:36 +02:00
/**
* @return array
*/
2018-03-04 23:30:16 +01:00
protected function connectionsToTransact()
{
return ['testing'];
}
/**
* Return an ISO-8601 formatted timestamp to use in the API response.
*/
protected function formatTimestamp(string $timestamp): string
{
return CarbonImmutable::createFromFormat(CarbonImmutable::DEFAULT_TO_STRING_FORMAT, $timestamp)
2018-03-04 23:30:16 +01:00
->setTimezone(BaseTransformer::RESPONSE_TIMEZONE)
->toIso8601String();
}
}