create(); $response = $this->get(route('requirement-group.index')); $response->assertStatus(200) ->assertJsonStructure([ 'data' => [ '*' => [ 'id', 'name', 'abbr_name', 'asset_id', 'parent_id', ] ] ]); } public function test_requirement_group_create(): void { $response = $this->post(route('requirement-group.store'), [ 'abbr_name' => fake()->text(10), 'name' => fake()->text(100), 'asset_id'=> 1, 'parent_id'=> 0 ]); $response->assertStatus(201); } public function test_requirement_group_show() { $group = RequirementGroup::factory()->create(); $response = $this->get(route('requirement-group.show', ['requirement-group' => $group->id])); $response->assertStatus(200) ->assertJsonStructure([ 'data' => [ 'id', 'name', 'abbr_name', 'asset_id', 'parent_id' ] ]); } public function test_requirement_group_update(): void { $group = RequirementGroup::factory()->create(); $form = [ 'name' => fake()->text(100), 'abbr_name' => fake()->text(15), 'asset_id'=> 1, 'parent_id'=> 0 ]; $response = $this->put(route('requirement-group.update', ['requirement_group' => $group->id]), $form); $response->assertStatus(204); $newRequirementGroup = RequirementGroup::find($group->id); $this->assertEquals($form['name'], $newRequirementGroup->name); $this->assertEquals($form['abbr_name'], $newRequirementGroup->abbr_name); $this->assertEquals($form['asset_id'], $newRequirementGroup->asset_id); $this->assertEquals($form['parent_id'], $newRequirementGroup->parent_id); } public function test_requirement_group_delete(): void { $group = RequirementGroup::factory()->create(); $response = $this->delete(route('requirement-group.destroy', ['requirement_group' => $group->id])); $response->assertStatus(204); $this->assertNull(RequirementGroup::find($group->id)); } }