public async Task <ActionResult> CreatePortableSensor([Bind(Prefix = nameof(CreatePortableSensorViewModel.Model))]
                                                              [BindRequired] CreatePortableSensorModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(new CreatePortableSensorViewModel(model)));
            }

            var command = _mapper.Map <CreatePortableSensorModel, CreatePortableSensorCommand>(model);
            await _mediator.Send(command);

            return(RedirectToAction("Index"));
        }
        public async Task <ActionResult> CreatePortableSensor(
            CreatePortableSensorModel model)
        {
            if (!ModelState.IsValid)
            {
                return(ValidationProblem(ModelState));
            }

            var command           = _mapper.Map <CreatePortableSensorModel, CreatePortableSensorCommand>(model);
            var portableSensorDto = await _mediator.Send(command);

            return(Ok(_mapper.Map <PortableSensorDTO, PortableSensorModel>(portableSensorDto)));
        }
        public async Task Create_portable_sensor_and_response_ok_status_code()
        {
            //Arrange
            using var server = new TestServerBuilder()
                               .UseDefaultAuth()
                               .Build();
            var client = server.CreateClient();

            var portableSensor = new CreatePortableSensorModel {
                ApiKey = CryptoHelper.GenerateApiKey()
            };
            var portableSensorJsonStr = JsonConvert.SerializeObject(portableSensor);

            //Act
            var response = await client.PostAsync("api/admin/sensors/portable",
                                                  new StringContent(portableSensorJsonStr, Encoding.UTF8, "application/json"));

            //Assert
            response.EnsureSuccessStatusCode();
        }
 public CreatePortableSensorViewModel(CreatePortableSensorModel model)
 {
     Model = model;
 }