assertCount(2, $users); $user1 = $users->firstWhere('name', 'Peter Tester'); $this->assertNotNull($user1); $this->assertSame(null, $user1->password); $this->assertSame('Peter Tester', $user1->name); $this->assertSame('peter.test@email.test', $user1->email); $clients = Client::all(); $this->assertCount(1, $clients); $client1 = $clients->firstWhere('name', 'Big Company'); $this->assertNotNull($client1); $projects = Project::all(); $this->assertCount(2, $projects); $project1 = $projects->firstWhere('name', 'Project without Client'); $this->assertNotNull($project1); $this->assertNull($project1->client_id); $project2 = $projects->firstWhere('name', 'Project for Big Company'); $this->assertNotNull($project2); $this->assertSame($client1->getKey(), $project2->client_id); $tasks = Task::all(); $this->assertCount(1, $tasks); $task1 = $tasks->firstWhere('name', 'Task 1'); $this->assertNotNull($task1); $this->assertSame($project2->getKey(), $task1->project_id); $tags = Tag::all(); $this->assertCount(2, $tags); $tag1 = $tags->firstWhere('name', 'Development'); $tag2 = $tags->firstWhere('name', 'Backend'); $this->assertNotNull($tag1); return (object) [ 'user1' => $user1, 'project1' => $project1, 'project2' => $project2, 'tag1' => $tag1, 'tag2' => $tag2, ]; } /** * @return object{client1: Client, project1: Project, project2: Project, task1: Task} */ protected function checkTestScenarioProjectsOnlyAfterImport(): object { $clients = Client::all(); $this->assertCount(1, $clients); $client1 = $clients->firstWhere('name', 'Big Company'); $this->assertNotNull($client1); $projects = Project::all(); $this->assertCount(2, $projects); $project1 = $projects->firstWhere('name', 'Project without Client'); $this->assertNotNull($project1); $this->assertNull($project1->client_id); $project2 = $projects->firstWhere('name', 'Project for Big Company'); $this->assertNotNull($project2); $this->assertSame($client1->getKey(), $project2->client_id); $tasks = Task::all(); $this->assertCount(3, $tasks); $task1 = $tasks->firstWhere('name', 'Task 1'); $this->assertNotNull($task1); $this->assertSame($project2->getKey(), $task1->project_id); $task2 = $tasks->firstWhere('name', 'Task 2'); $this->assertNotNull($task2); $this->assertSame($project2->getKey(), $task2->project_id); $task3 = $tasks->firstWhere('name', 'Task 3'); $this->assertNotNull($task3); $this->assertSame($project2->getKey(), $task3->project_id); return (object) [ 'client1' => $client1, 'project1' => $project1, 'project2' => $project2, 'task1' => $task1, ]; } }