38 lines
1.2 KiB
PHP
38 lines
1.2 KiB
PHP
<?php
|
|
|
|
use App\Livewire\Studio\Master\Outlet\Create;
|
|
use App\Livewire\Studio\Master\Outlet\Index;
|
|
use App\Models\Outlet;
|
|
use Illuminate\Foundation\Testing\RefreshDatabase;
|
|
use Livewire\Livewire;
|
|
|
|
uses(RefreshDatabase::class);
|
|
|
|
it('renders successfully', function () {
|
|
Livewire::test(Create::class)
|
|
->assertViewIs('livewire.studio.master.outlet.form')
|
|
->assertViewHas('pageTitle', 'Tambah Outlet');
|
|
});
|
|
|
|
it('can create an outlet', function () {
|
|
$data = Outlet::factory()->operational()->raw();
|
|
|
|
Livewire::test(Create::class)
|
|
->set('form.name', $data['name'])
|
|
->set('form.phone_number', $data['phone_number'])
|
|
->set('form.address', $data['address'])
|
|
->set('form.landmark', $data['landmark'])
|
|
->set('form.maps_url', $data['maps_url'])
|
|
->set('form.opening_hours', $data['opening_hours'])
|
|
->set('form.facilities', $data['facilities'])
|
|
->set('form.opened_date', $data['opened_date'])
|
|
->set('form.status', $data['status']->value)
|
|
->call('save')
|
|
->assertRedirect(Index::class);
|
|
|
|
$this->assertDatabaseHas('outlets', [
|
|
'name' => $data['name'],
|
|
'phone_number' => $data['phone_number'],
|
|
]);
|
|
});
|