/** * @test */ public function it_lists_all_stored_cargos() { $trackingIdOne = $this->bookingService->bookNewCargo('USNYC', 'DEHAM'); $trackingIdTwo = $this->bookingService->bookNewCargo('NLRTM', 'USNYC'); $cargoRoutingDtos = $this->bookingService->listAllCargos(); $this->assertEquals(2, count($cargoRoutingDtos)); $generatedTrackingIds = [$trackingIdOne, $trackingIdTwo]; foreach ($cargoRoutingDtos as $cargoRoutingDto) { $this->assertTrue(in_array($cargoRoutingDto->getTrackingId(), $generatedTrackingIds)); } }
public function __invoke(ServerRequestInterface $request, ResponseInterface $response, callable $next) { return new JsonResponse(['cargos' => array_map(function (CargoRoutingDto $cargoRoutingDto) { return $cargoRoutingDto->getArrayCopy(); }, $this->bookingService->listAllCargos())]); }