public async Task <ActionResult> Create() { Logger.Trace("Create::Get"); var query = new ClientEditorFormQuery(); var form = await mediator.SendAsync(query); return(View(form)); }
public async Task <ActionResult> Edit(int?id) { Logger.Trace("Edit::Get::{0}", id); if (!id.HasValue) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var query = new ClientEditorFormQuery(clientId: id); var form = await mediator.SendAsync(query); return(View(form)); }
public async Task Missing_identifiertypes_generate_warning() { var clientId = 42; var query = new ClientEditorFormQuery(clientId: clientId); clients.GetById(Arg.Is(clientId)).Returns(Enumerable.Empty <Client>().AsAsyncQueryable()); identifierTypes.All.Returns(Enumerable.Empty <ClientIdentifierType>().AsEnumerable()); await handler.Handle(query); handler.Logger.Received().Warn(Arg.Any <string>(), clientId); }
public async Task Can_get_form() { var identifierTypes = new[] { new ClientIdentifierType { Id = 1, Name = "foo" } }; var query = new ClientEditorFormQuery(); this.identifierTypes.All.Returns(identifierTypes.AsEnumerable()); var result = await handler.Handle(query); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(ClientEditorForm)); Assert.IsNull(result.ClientId); }
public async Task Can_get_form_for_missing_client() { var clientId = 42; var identifierTypes = new[] { new ClientIdentifierType { Id = 1, Name = "foo" } }; var query = new ClientEditorFormQuery(clientId: clientId); clients.GetById(Arg.Is(clientId)).Returns(Enumerable.Empty <Client>().AsAsyncQueryable()); this.identifierTypes.All.Returns(identifierTypes.AsEnumerable()); var result = await handler.Handle(query); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(ClientEditorForm)); handler.Logger.Received().Warn(Arg.Any <string>(), clientId); }
public async Task Can_get_form_for_client() { var organization = new Organization { Id = 1 }; var clientId = 42; var identifierTypes = new[] { new ClientIdentifierType { Id = 1, Name = "foo" } }; var client = new Client { Id = clientId, Identifiers = new[] { new ClientIdentifier { ClientIdentifierType = identifierTypes.First() } } }; client.AddResidency(organization); var query = new ClientEditorFormQuery(clientId: clientId); tenantOrganizationProvider.GetTenantOrganization().Returns(organization); clients.GetById(Arg.Is(clientId)).Returns(new[] { client }.AsAsyncQueryable()); this.identifierTypes.All.Returns(identifierTypes.AsEnumerable()); var result = await handler.Handle(query); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(ClientEditorForm)); Assert.AreEqual(result.ClientId, client.Id); }