public async void CreateProject() { var projectFormValidator = new ProjectFormValidator(); var projectModel = new ProjectModel(_customerAccess) { Name = ProjectName, Comment = Comment, CustomerName = SelectedCustomer }; var validationResult = projectFormValidator.Validate(projectModel); if (validationResult.IsValid) { var projectEntity = await projectModel.ConvertToProjectEntity(); var addProjectResult = await _projectAccess.AddProject(projectEntity); if (addProjectResult) { _events.PublishOnUIThread(new NewProjectAddedEvent()); TryClose(); } else { MessageBox.Show("Wystąpił błąd podczas zapisu danych. Spróbuj ponownie"); } } else { MessageBox.Show("Błąd walidacji danych"); } }
public async void SaveButton() { var projectModel = new ProjectModel(_customerAccess) { Id = project.Id, Name = ProjectName, Status = SelectedProjectStatus, CustomerName = SelectedProjectCustomer, Comment = Comment }; var projectFormValidator = new ProjectFormValidator(); var validationResult = projectFormValidator.Validate(projectModel); // For tests ProjectValidationResult = validationResult.IsValid; if (validationResult.IsValid) { var projectEntity = await projectModel.ConvertToProjectEntity(); var resultTask = await _projectAccess.UpdateProject(projectEntity); // For tests UpdateProjectResult = resultTask; if (resultTask) { _events.PublishOnUIThread(new ChangedProjectCredentialsEvent(project.Id)); TryClose(); } else { MessageBox.Show("Wystąpił błąd podczas zapisu danych. Spróbuj ponownie"); } } else { MessageBox.Show("Błąd walidacji danych"); } }
public async void ConvertToProjectEntity_Test() { // Arrange int sampleCustomerId = 13; var customerAccessMock = new Mock <ICustomerAccess>(); customerAccessMock .Setup(x => x.GetCustomerId(It.IsAny <string>())) .ReturnsAsync(sampleCustomerId); int sampleId = 4; string sampleName = "sampleName"; string sampleStatus = "Open"; string sampleComment = "someComment"; string sampleCustomerName = "someCustomerName"; ProjectModel projectModel = new ProjectModel(customerAccessMock.Object) { Id = sampleId, Name = sampleName, Status = sampleStatus, Comment = sampleComment, CustomerName = sampleCustomerName }; // Act var projectEntity = await projectModel.ConvertToProjectEntity(); // Assert Assert.Equal(sampleId, projectEntity.Id); Assert.Equal(sampleName, projectEntity.Name); Assert.Equal(sampleStatus, projectEntity.Status); Assert.Equal(sampleComment, projectEntity.Comment); Assert.Equal(sampleCustomerId, projectEntity.CustomerID); Assert.True(projectEntity.GetType() == typeof(DataAccess.Entities.Project)); Assert.Null(projectEntity.Customer); }