public void Can_update_an_organization() { var form = new OrganizationEditorForm { OrganizationId = 42, Name = "name", GroupName = "groupname", Abbreviation = "abbreviation", Phone = "phone", AddressLine1 = "addressline1", AddressLine2 = "addressline2", City = "city", State = "state", PostalCode = "postalcode", FiscalContactSamAccountName = "fiscalcontactsamaccountname", ITConactSamAccountName = "itcontactsamaccountname" }; var organization = new Organization(); form.UpdateOrganization(organization); Assert.AreEqual(organization.Name, form.Name); Assert.AreEqual(organization.GroupName, form.GroupName); Assert.AreEqual(organization.Abbreviation, form.Abbreviation); Assert.AreEqual(organization.Phone, form.Phone); Assert.AreEqual(organization.AddressLine1, form.AddressLine1); Assert.AreEqual(organization.AddressLine2, form.AddressLine2); Assert.AreEqual(organization.City, form.City); Assert.AreEqual(organization.State, form.State.ToUpper()); Assert.AreEqual(organization.PostalCode, form.PostalCode); Assert.AreEqual(organization.FiscalContactSamAccountName, form.FiscalContactSamAccountName); Assert.AreEqual(organization.ITConactSamAccountName, form.ITConactSamAccountName); }
public void Can_build_from_parent_Oranization() { var organization = new Organization { Id = 42, }; var result = OrganizationEditorForm.FromParentOrganization(organization, new Feature[] {}); Assert.AreEqual(result.ParentOrganizationId, organization.Id); }
public async Task Post_Edit() { var form = new OrganizationEditorForm(); mediator.SendAsync(Arg.Any <AddOrEditOrganizationCommand>()) .Returns(Task.FromResult(new SuccessResult(42) as ICommandResult)); var result = await controller.Edit(form) as RedirectToRouteResult; Assert.IsNotNull(result); Assert.AreEqual(result.RouteValues["Id"], 42); mediator.Received() .SendAsync(Arg.Is <AddOrEditOrganizationCommand>(f => f.Editor == form)) .IgnoreAwaitForNSubstituteAssertion(); }
public async Task Post_Edit_with_invalid_model() { var form = new OrganizationEditorForm(); controller.ModelState.AddModelError("any", "error"); var result = await controller.Edit(form) as ViewResult; Assert.IsNotNull(result); Assert.AreEqual(result.Model, form); Assert.IsTrue(result.ViewData.ModelState.ContainsKey("any")); mediator.DidNotReceive() .SendAsync(Arg.Is <AddOrEditOrganizationCommand>(f => f.Editor == form)) .IgnoreAwaitForNSubstituteAssertion(); }
public async Task <ActionResult> Edit(OrganizationEditorForm form) { Logger.Trace("Edit::Post::{0}", form.OrganizationId); if (ModelState.IsValid) { var result = await mediator.SendAsync(new AddOrEditOrganizationCommand(form, ModelState)); if (result.IsSuccess) { return(RedirectToAction("Index", new { Id = result.Result })); } ModelState.AddModelError("", result.Result.ToString()); } return(View(form)); }
public async Task Post_Edit_with_failure() { const string message = "ouch"; var form = new OrganizationEditorForm(); mediator.SendAsync(Arg.Any <AddOrEditOrganizationCommand>()) .Returns(Task.FromResult(new FailureResult(message) as ICommandResult)); var result = await controller.Edit(form) as ViewResult; Assert.IsNotNull(result); Assert.AreEqual(result.Model, form); Assert.IsTrue(result.ViewData.ModelState.ContainsKey(string.Empty)); Assert.IsTrue(result.ViewData.ModelState[string.Empty].Errors .Any(e => e.ErrorMessage == message)); mediator.Received() .SendAsync(Arg.Is <AddOrEditOrganizationCommand>(f => f.Editor == form)) .IgnoreAwaitForNSubstituteAssertion(); }
public void Can_build_from_Oranization() { var organization = new Organization { Id = 42, Name = "name", GroupName = "groupname", Abbreviation = "abbreviation", Phone = "phone", AddressLine1 = "addressline1", AddressLine2 = "addressline2", City = "city", State = "state", PostalCode = "postalcode", FiscalContactSamAccountName = "fiscalcontactsamaccountname", ITConactSamAccountName = "itcontactsamaccountname", Parent = new Organization { Id = 24 } }; var result = OrganizationEditorForm.FromOrganization(organization, new Feature[] {}); Assert.AreEqual(result.OrganizationId, organization.Id); Assert.AreEqual(result.Name, organization.Name); Assert.AreEqual(result.GroupName, organization.GroupName); Assert.AreEqual(result.Abbreviation, organization.Abbreviation); Assert.AreEqual(result.Phone, organization.Phone); Assert.AreEqual(result.AddressLine1, organization.AddressLine1); Assert.AreEqual(result.AddressLine2, organization.AddressLine2); Assert.AreEqual(result.City, organization.City); Assert.AreEqual(result.State, organization.State); Assert.AreEqual(result.PostalCode, organization.PostalCode); Assert.AreEqual(result.FiscalContactSamAccountName, organization.FiscalContactSamAccountName); Assert.AreEqual(result.ITConactSamAccountName, organization.ITConactSamAccountName); Assert.AreEqual(result.ParentOrganizationId, organization.Parent.Id); }