postJson(route('folder.store'), [ 'library_id' => Library::factory()->create()->id, 'parent_id' => 0, 'items' => [ ['name' => fake()->name(), 'sequence' => 0], ['name' => fake()->name(), 'sequence' => 0], ] ]); $response->assertStatus(201); } protected function test_folder_list() { Folder::factory(30)->create(); $response = $this->get(route('folder.index')); $response->assertStatus(200) ->assertJsonStructure([ 'data' => [ '*' => [ 'id', 'name', 'global', 'status', 'company' ] ] ]); } public function test_folder_show(): void { $folder = Folder::factory()->create(); $response = $this->getJson(route('folder.show', ['folder' => $folder->id])); $response->assertStatus(200) ->assertJsonStructure([ 'data' => [ 'library_id', 'name', 'parent_id', 'sequence', ] ]); } public function test_folder_update(): void { $folder = Folder::factory()->create(); $form = Folder::factory()->make(); $response = $this->patchJson(route('folder.update', ['folder' => $folder->id]), $form->toArray()); $response->assertStatus(204); $newAsset = Folder::find($folder->id); $this->assertEquals($form->name, $newAsset->name); } public function test_folder_delete(): void { $folder = Folder::factory()->create(); $response = $this->deleteJson(route('folder.destroy', ['folder' => $folder->id])); $response->assertStatus(204); $this->assertNull(Folder::find($folder->id)); } }