예제 #1
0
 public void Setup()
 {
     _trackedVehicleRepository = Substitute.For <ITrackedVehicleRepository>();
     _busPublisher             = Substitute.For <IBusPublisher>();
     _logger = Substitute.For <ILogger <StopVehicleTrackingHandler> >();
     _stopVehicleTrackingHandler = new StopVehicleTrackingHandler(_trackedVehicleRepository, _busPublisher, _logger);
     _vehicleId = Guid.NewGuid().ToString();
     _command   = new StopVehicleTrackingCommand(_vehicleId);
 }
예제 #2
0
        public async Task <IActionResult> StopVehicleTracking([FromBody] StopVehicleTrackingCommand command)
        {
            if (command == null || string.IsNullOrEmpty(command.VehicleId))
            {
                return(BadRequest());
            }

            await _busPublisher.PublishAsync(command)
            .AnyContext();

            return(Accepted());
        }