/// <summary> /// 更新项目 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task UpdateProject(UpdateProjectInputDto input) { var project = await _demoProjectRepository .IncludeIf(input.SyncUnitProject, x => x.DemoUnitProjects) .Include(x => x.DemoUnitProjects) .GetAsync(input.ProjectId); if (project == null) { throw new UserFriendlyException("未找到指定的项目"); } if (input.SyncUnitProject) { project.SynchronizationUnitProjectName(input.Name); } else { project.UpdateName(input.Name); } }
public async Task UpdateProjectTest(string name, bool syncUnitProject) { var project = await AddProjectTest(); var input = new UpdateProjectInputDto() { ProjectId = project.Id, Name = name, SyncUnitProject = syncUnitProject }; await WithUnitOfWorkAsync(async() => { await _demoProjectAppService.UpdateProject(input); }); await WithUnitOfWorkAsync(async() => { var projectUpdated = await _demoProjectRepository.Include(x => x.DemoUnitProjects).FirstOrDefaultAsync(x => x.Id == project.Id); projectUpdated.ShouldNotBeNull(); projectUpdated.Name.ShouldBe(name); if (syncUnitProject) { projectUpdated.DemoUnitProjects.Any().ShouldBeTrue(); projectUpdated.DemoUnitProjects.First().Name.ShouldBe(name); } }); }