Я пытаюсь утверждать, что в базе данных есть запись, но она не работает, и я не знаю, как решить проблему
Мой код:
class ControlTransferRejectTest extends TestCase
{
use RefreshDatabase;
private const TO_USER_ID = 'to_user_id';
private const FROM_USER_ID = 'from_user_id';
private const TC_SITE_ID = 'tc_site_id';
private const CONTROL_TYPE = 'type';
private const ROUTE_STORE = 'controltransfers.store';
public function setUp()
{
parent::setUp();
// spin up 16 sites to support control transfer
$this->sites = create('App\Site', [], 16);
// spin up 107 users to support control transfer
$this->users = create('App\User', [], 107);
}
/** @test */
public function authenticated_user_with_pending_control_transfer_rejects()
{
// ARRANGE test preconditions
$postArray = [
self::TO_USER_ID => $this->users[0]->id,
self::TC_SITE_ID => $this->sites[0]->id,
self::CONTROL_TYPE => 'Transfer'
];
$response = $this->post(route(self::ROUTE_STORE), $postArray);
$this->assertDatabaseHas('control_transfers', [
self::TO_USER_ID => $this->users[0]->id,
parent::SITE_ID => $this->sites[0]->id,
self::FROM_USER_ID => $this->users[1]->id,
self::CONTROL_TYPE => 'Transfer',
'outcome' => NULL,
'pending' => True
]);
// ACT on the items under test
// ASSERT that the expected results have occurred
}
}
Но когда я пытаюсь выполнить тест, он говорит
Таблица пуста
продавец / Laravel / рамки / SRC / Осветите / Foundation / Тестирование / вопросы / InteractsWithDatabase.php: 22 * 1009 *
Мой сценарий использования: я вызываю функцию контроллера, которая создает записи в двух разных таблицах.
Я пытаюсь проверить в одной таблице, но это не удается из-за ошибки выше.