1200], (object) ['price' => 1200], (object) ['price' => 1200], ]); $reservation = new Reservation($tickets); $this->assertEquals(3600, $reservation->totalCost()); } /** @test */ function reserved_tickets_are_released_when_a_reservation_is_cancelled() { $tickets = collect([ Mockery::spy(Ticket::class), Mockery::spy(Ticket::class), Mockery::spy(Ticket::class), ]); $reservation = new Reservation($tickets); $reservation->cancel(); foreach ($tickets as $ticket) { $ticket->shouldHaveReceived('release'); } } }