Mercurial > packages > magicforger
view src/Generator/Test/stubs/test.stub @ 39:b5c6ebd33547 ls_dev_2025_09
Improving the factories, tests, and requests
| author | Luka Sitas <sitas.luka.97@gmail.com> |
|---|---|
| date | Thu, 25 Sep 2025 23:16:13 -0400 |
| parents | 116b36f5e73b |
| children | 2cf26b593f4a |
line wrap: on
line source
<?php namespace Tests\CRUD\{{ model }}; use {{ namespacedModel }}; use App\Models\User; use Wizard\Framework\Tests\TestCase; class {{ class }} extends TestCase { /* use RefreshDatabase; */ public function test_{{ modelVariable }}_crud_index_access(): void { $response = $this ->get(route('{{ tableName }}.index')); $response->assertStatus(200); } public function test_{{ modelVariable }}_crud_get_data_access(): void { $response = $this ->post(route('{{ tableName }}.get_data')); $response->assertStatus(200); } public function test_{{ modelVariable }}_crud_create_access(): void { $response = $this ->get(route('{{ tableName }}.create')); $response->assertStatus(200); } public function test_{{ modelVariable }}_crud_edit_access(): void { $item = {{ model }}::factory()->create(); $response = $this ->get(route('{{ tableName }}.edit', $item)); $response->assertStatus(200); } public function test_{{ modelVariable }}_crud_create_usage(): void { $item = {{ model }}::factory()->make(); $response = $this ->from(route('{{ tableName }}.create')) ->post(route('{{ tableName }}.store'), $item->toArray() ); $response ->assertSessionHasNoErrors() ->assertRedirect(route('{{ tableName }}.index')); $this->assertDatabaseHas('{{ tableName }}', $item->toArray()); } public function test_{{ modelVariable }}_crud_create_invalid_data(): void { $response = $this ->from(route('{{ tableName }}.create')) ->post(route('{{ tableName }}.store'), []); $response ->assertSessionHasErrors() ->assertRedirect(route('{{ tableName }}.create')); // Make sure no entry was added $this->assertDatabaseCount('{{ tableName }}', 0); } public function test_{{ modelVariable }}_crud_update_usage(): void { $item = {{ model }}::factory()->create(); $updateData = {{ model }}::factory()->make()->toArray(); $response = $this ->from(route('{{ tableName }}.edit', $item)) ->put(route('{{ tableName }}.update', $item), $updateData); $response ->assertSessionHasNoErrors() ->assertRedirect(route('{{ tableName }}.index')); $this->assertDatabaseHas('{{ tableName }}', $updateData); } public function test_{{ modelVariable }}_crud_edit_invalid_data(): void { $item = {{ model }}::factory()->create(); $response = $this ->from(route('{{ tableName }}.edit', $item)) ->put(route('{{ tableName }}.update', $item), []); $response ->assertSessionHasErrors() ->assertRedirect(route('{{ tableName }}.edit', $item)); // Make sure no entry was added $this->assertDatabaseHas('{{ tableName }}', array_intersect_key($item->toArray(), array_flip($item->getFillable()))); } public function test_{{ modelVariable }}_crud_delete_usage(): void { $item = {{ model }}::factory()->create(); $response = $this ->delete(route('{{ tableName }}.destroy', $item)); $response ->assertSessionHasNoErrors() ->assertRedirect(route('{{ tableName }}.index')); $this->assertSoftDeleted('{{ tableName }}', [ 'id' => $item->id, ]); } }
