コード例 #1
0
        public async Task It_should_update()
        {
            Application testApp = DataSeed.Application1;

            using TestServer server = TestServer(UserRole.Administrator);
            using HttpClient client = server.CreateHttpClient();

            UpdateApplicationDto updtestApp = new UpdateApplicationDto()
            {
                ApplicationDefinition = new DefinitionDto()
                {
                    Description = Guid.NewGuid().ToString(),
                    Name        = Guid.NewGuid().ToString()
                }
            };

            HttpResponseMessage result = await client.PatchAsync($"feature/application/{testApp.Code}/update", updtestApp.Serialize());

            Log.WriteLine(result.Content.ReadAsStringAsync().Result);
            Assert.Equal(HttpStatusCode.OK, result.StatusCode);

            ApplicationDTO updateDto = result.Deserialize <ApplicationDTO>();

            Assert.Equal(updtestApp.ApplicationDefinition.Description, updateDto.Description);
            Assert.Equal(updtestApp.ApplicationDefinition.Name, updateDto.Name);
        }
コード例 #2
0
        public async Task UpdateApplicationCommandHandler_Handle_ShouldUpdateApplicationEntity()
        {
            var applicationId = Guid.Parse("3513F862-2FF9-4D29-B46E-C56987A58191");

            Context.Applications.Add(new Domain.Entities.Application
            {
                Id          = applicationId,
                Name        = "Application",
                Description = "Description"
            });

            Context.SaveChanges();
            var application = new UpdateApplicationDto
            {
                Id          = Guid.Parse("3513F862-2FF9-4D29-B46E-C56987A58191"),
                Name        = "App",
                Description = "this test should fail"
            };

            var updateCommand = new UpdateApplicationCommand(application);
            await _updateApplicationCommandHandler.Handle(updateCommand, CancellationToken.None);

            var updatedApplicationEntity = await
                                           Context.Applications.FirstOrDefaultAsync(app => app.Id == applicationId, CancellationToken.None);

            Assert.Equal(application.Name, updatedApplicationEntity.Name);
        }
コード例 #3
0
        public async Task <IActionResult> UpdateApplication([FromRoute] string code, [FromBody] UpdateApplicationDto application)
        {
            UsersApplications app = await _mediator.Send(new UpdateCommand(code, application));

            ApplicationDTO response = new ApplicationDTO(app);

            return(Ok(response));
        }
コード例 #4
0
 public async Task UpdateApplicationCommandHandler_Handle_ShouldThrowExceptionIfDataIsNotExists()
 {
     Context.Applications.Add(new Domain.Entities.Application
     {
         Id          = Guid.Parse("3513F862-2FF9-4D29-B46E-C56987A58191"),
         Name        = "Application",
         Description = "Description"
     });
     Context.SaveChanges();
     var application = new UpdateApplicationDto
     {
         Id          = Guid.NewGuid(),
         Name        = "App",
         Description = "this test should fail"
     };
     var updateCommand = new UpdateApplicationCommand(application);
     await Assert.ThrowsAsync <InvalidDataException>(() =>
                                                     _updateApplicationCommandHandler.Handle(updateCommand, CancellationToken.None));
 }
コード例 #5
0
        public async Task It_should_not_update_if_user_forbiden()
        {
            Application testApp = DataSeed.Application2;

            using TestServer server = TestServer(UserRole.Viewer);
            using HttpClient client = server.CreateHttpClient();

            UpdateApplicationDto updtestApp = new UpdateApplicationDto()
            {
                ApplicationDefinition = new DefinitionDto()
                {
                    Description = Guid.NewGuid().ToString(),
                    Name        = Guid.NewGuid().ToString()
                }
            };

            HttpResponseMessage result = await client.PatchAsync($"feature/application/{testApp.Code}/update", updtestApp.Serialize());

            Assert.Equal(HttpStatusCode.Forbidden, result.StatusCode);
        }
コード例 #6
0
ファイル: ApplicationService.cs プロジェクト: munendra/Spider
 public Task <UpdateApplicationDto> UpdateApplication(UpdateApplicationDto updateApplication)
 {
     return(Mediator.Send(new UpdateApplicationCommand(updateApplication)));
 }
コード例 #7
0
        public async Task <IActionResult> UpdateApplication([FromBody] UpdateApplicationDto updateDto)
        {
            var response = await _mediator.Send(new UpdateApplicationCommand(updateDto));

            return(Ok(response));
        }
コード例 #8
0
 public ApplicationCannotBeUpdatedWithDuplicateNameBusinessRule(IQueryable <Application> applications, UpdateApplicationDto updateDto)
 {
     _applications = applications;
     _updateDto    = updateDto;
 }
コード例 #9
0
        public async Task <IActionResult> UpdateApplication(UpdateApplicationDto application)
        {
            var updatedApplication = await _applicationService.UpdateApplication(application);

            return(Ok(updatedApplication));
        }
コード例 #10
0
 public UpdateApplicationCommand(UpdateApplicationDto application)
 {
     ApplicationUpdateDto = application;
 }