seedLookupData(); $busy = $this->agent(['name' => 'Busy Agent']); $quiet = $this->agent(['name' => 'Quiet Agent']); $this->ticket(['agent' => $busy, 'status_id' => $fixtures['open']->id, 'priority_id' => $fixtures['normal']->id]); $this->ticket(['agent' => $busy, 'status_id' => $fixtures['open']->id, 'priority_id' => $fixtures['normal']->id]); $selected = app(AgentAssignmentService::class)->selectAgentId(null); self::assertSame($quiet->id, $selected); } public function test_assignment_prefers_category_agents_when_category_has_agents(): void { $fixtures = $this->seedLookupData(); $generalAgent = $this->agent(['name' => 'General Agent']); $categoryAgent = $this->agent(['name' => 'Category Agent']); $fixtures['category']->agents()->attach($categoryAgent->id); $this->ticket(['agent' => $generalAgent, 'status_id' => $fixtures['open']->id, 'priority_id' => $fixtures['normal']->id]); $selected = app(AgentAssignmentService::class)->selectAgentId($fixtures['category']->id); self::assertSame($categoryAgent->id, $selected); } }