public async Task ImageProcessController_AddByVideoCameraAsync_Successfully() { //Arrange var imageProcess = new ImageProcessViewModel() { IdVideoCameras = 1, IdReference = Guid.NewGuid(), ImageName = "out000090.png", IpUserRequest = "200.111.222.33", VideoPath = "/user/danieldangeloresendebarros/opt", SecondsToStart = 15, DtProcess = DateTime.Now }; using (var sc = new StreamContent(File.OpenRead($"Img/Thumbnail/{imageProcess.ImageName}"))) using (var ms = new MemoryStream()) { await sc.CopyToAsync(ms); imageProcess.ImageFile = ms.ToArray(); } //Act using (var postContent = new StringContent(JsonConvert.SerializeObject(imageProcess), Encoding.UTF8, "application/json")) using (var response = await Environment.ServerApiSecurity .CreateRequest("ImageProcess/AddByVideoCameraAsync") .AddHeader("Authorization", "Bearer " + _loginAdm.access_token) .And(request => request.Content = postContent) .And(request => request.Method = HttpMethod.Post) .PostAsync()) { //Assert response.EnsureSuccessStatusCode(); } }
public async Task ImageProcessController_AddByVideoCameraAsync_Unauthorized() { //Arrange var imageProcess = new ImageProcessViewModel() { IdVideoCameras = 1, IdReference = Guid.NewGuid(), ImageFile = null, ImageName = "", IpUserRequest = "200.111.222.33", VideoPath = "/user/danieldangeloresendebarros/opt", SecondsToStart = 15, DtProcess = DateTime.Now }; //Act using (var postContent = new StringContent(JsonConvert.SerializeObject(imageProcess), Encoding.UTF8, "application/json")) using (var response = await Environment.ServerApiSecurity .CreateRequest("ImageProcess/AddByVideoCameraAsync") .And(request => request.Content = postContent) .And(request => request.Method = HttpMethod.Post) .PostAsync()) { //Assert Assert.Equal(HttpStatusCode.Unauthorized, response.StatusCode); } }
//[Authorize(Policy = "ImageProcess.AddByVideoCamera")] public async Task <IActionResult> AddByVideoCameraAsync([FromBody] ImageProcessViewModel viewModel) { if (!IsModelStateValid()) { return(Response()); } var videoCamera = await _videoCameraRepository.GetByIdAsync(viewModel.IdVideoCameras); if (videoCamera == null) { NotifyError("", "VideoCamera not found"); return(Response()); } var userLoggedInDB = await GetUserDbByIdentityAsync(HttpContext); if (userLoggedInDB == null) { return(Response()); } var userLoggedIn = Mapper.Map <UserViewModel, User>(userLoggedInDB); var imageProcess = await AddAsync(viewModel, userLoggedIn); if (imageProcess == null) { NotifyError("", "ImageProcess not inserted or found"); return(Response()); } foreach (var analyzeRequestVideoCamera in videoCamera.AnalyzesRequests) { var imageProcessAnalyze = await AddAnalyzeAsync(userLoggedIn, imageProcess, analyzeRequestVideoCamera); if (imageProcessAnalyze == null) { NotifyError("", "ImageProcessAnalyze not inserted or found"); return(Response()); } var adapterReturnResponse = await _imageProcessAdapter.AnalyzeImageProcessAsync(videoCamera, imageProcess, analyzeRequestVideoCamera); if (adapterReturnResponse == null) { NotifyError("", "ImageProcessAdapter.AnalyzeImage Error"); } await UpdateAnalyzeAsync(userLoggedIn, imageProcessAnalyze, adapterReturnResponse); } return(Response()); }
private async Task <ImageProcess> AddAsync(ImageProcessViewModel viewModel, User userLoggedIn) { var idReference = Guid.NewGuid().ToString(); var domainModel = Mapper.Map <ImageProcessModel>(viewModel); domainModel.IpUserRequest = GetClientIPAddress(); domainModel.IdReference = new Guid(idReference); var cmd = new AddImageProcessCommand(userLoggedIn, domainModel); await _mediator.SendCommand(cmd); return(await _imageProcessRepository.GetByIdReferenceAsync(idReference)); }