Я провожу тесты, которые включают добавление клиентов полосы, и когда тест закончен, я хотел удалить их из полосы.
namespace Tests\Feature;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Illuminate\Foundation\Testing\WithFaker;
use Tests\TestCase;
use App\Plan;
class AccountsTest extends TestCase
{
use RefreshDatabase;
protected $account;
protected $user;
public function setUp() :void
{
parent::setUp();
$this->seed();
}
public function tearDown(): void
{
parent::tearDown();
if (isset($this->account) && $this->account->hasStripeId()) {
$this->account->asStripeCustomer()->delete();
}
}
// sets up user and account and stripe customer
private function setUpSubscribedAccount($stripe_plan = 'Enterprise') {
...
}
/**
* @test
*/
public function a_user_can_visit_account_page() {
$this->setUpSubscribedAccount();
$this->actingAs($this->user);
$this->get(route('account.show'))
->assertStatus(200);
}
...
}
Если tearDown
приводит к
"Illuminate \ Contracts \ Container \ BindingResolutionException: целевой класс [config] не существует ». «Вызвано ReflectionException: конфигурация класса не существует»
После удаления мой тест проходит успешно и никаких ошибок не происходит.