public async Task UpdateOrganisationTypeDetailsHandler_NotOrganisationUser_ThrowsSecurityException() { var authorization = AuthorizationBuilder.CreateUserDeniedFromAccessingOrganisation(); var handler = new UpdateOrganisationTypeDetailsHandler(A <WeeeContext> ._, authorization); var message = new UpdateOrganisationTypeDetails(Guid.NewGuid(), OrganisationType.RegisteredCompany, A <string> ._, A <string> ._, A <string> ._); await Assert.ThrowsAsync <SecurityException>(async() => await handler.HandleAsync(message)); }
public async Task UpdateOrganisationTypeDetailsHandler_NotOrganisationUser_ThrowsSecurityException() { var authorization = AuthorizationBuilder.CreateUserDeniedFromAccessingOrganisation(); var handler = new UpdateOrganisationTypeDetailsHandler(A<WeeeContext>._, authorization); var message = new UpdateOrganisationTypeDetails(Guid.NewGuid(), OrganisationType.RegisteredCompany, A<string>._, A<string>._, A<string>._); await Assert.ThrowsAsync<SecurityException>(async () => await handler.HandleAsync(message)); }
public async Task UpdateOrganisationTypeDetailsHandler_NoSuchOrganisation_ThrowsArgumentException() { WeeeContext context = A.Fake<WeeeContext>(); A.CallTo(() => context.Organisations).Returns(dbHelper.GetAsyncEnabledDbSet(new List<Organisation>())); var authorization = AuthorizationBuilder.CreateUserAllowedToAccessOrganisation(); var handler = new UpdateOrganisationTypeDetailsHandler(context, authorization); var message = new UpdateOrganisationTypeDetails(Guid.NewGuid(), OrganisationType.RegisteredCompany, A<string>._, A<string>._, A<string>._); var exception = await Assert.ThrowsAsync<ArgumentException>(async () => await handler.HandleAsync(message)); Assert.True(exception.Message.ToUpperInvariant().Contains("COULD NOT FIND")); Assert.True(exception.Message.ToUpperInvariant().Contains("ORGANISATION")); Assert.True(exception.Message.Contains(message.OrganisationId.ToString())); }
public async Task UpdateOrganisationTypeDetailsHandler_NoSuchOrganisation_ThrowsArgumentException() { WeeeContext context = A.Fake <WeeeContext>(); A.CallTo(() => context.Organisations).Returns(dbHelper.GetAsyncEnabledDbSet(new List <Organisation>())); var authorization = AuthorizationBuilder.CreateUserAllowedToAccessOrganisation(); var handler = new UpdateOrganisationTypeDetailsHandler(context, authorization); var message = new UpdateOrganisationTypeDetails(Guid.NewGuid(), OrganisationType.RegisteredCompany, A <string> ._, A <string> ._, A <string> ._); var exception = await Assert.ThrowsAsync <ArgumentException>(async() => await handler.HandleAsync(message)); Assert.True(exception.Message.ToUpperInvariant().Contains("COULD NOT FIND")); Assert.True(exception.Message.ToUpperInvariant().Contains("ORGANISATION")); Assert.True(exception.Message.Contains(message.OrganisationId.ToString())); }
public async Task<ActionResult> RegisteredCompanyDetails(RegisteredCompanyDetailsViewModel model) { if (!ModelState.IsValid) { return View(model); } using (var client = apiClient()) { if (model.OrganisationId != null) { // update orgnisation details UpdateOrganisationTypeDetails updateRequest = new UpdateOrganisationTypeDetails( model.OrganisationId.Value, OrganisationType.RegisteredCompany, model.CompanyName, model.BusinessTradingName, model.CompaniesRegistrationNumber); Guid organisationId = await client.SendAsync(User.GetAccessToken(), updateRequest); return RedirectToAction("MainContactPerson", new { organisationId }); } CreateRegisteredCompanyRequest request = new CreateRegisteredCompanyRequest { BusinessName = model.CompanyName, CompanyRegistrationNumber = model.CompaniesRegistrationNumber, TradingName = model.BusinessTradingName }; //create the organisation only if does not exist Guid orgId = await client.SendAsync(User.GetAccessToken(), request); return RedirectToAction("MainContactPerson", new { organisationId = orgId }); } }
public async Task<ActionResult> PartnershipDetails(PartnershipDetailsViewModel model) { if (!ModelState.IsValid) { return View(model); } using (var client = apiClient()) { if (model.OrganisationId != null) { // update orgnisation details UpdateOrganisationTypeDetails updateRequest = new UpdateOrganisationTypeDetails( model.OrganisationId.Value, OrganisationType.Partnership, string.Empty, model.BusinessTradingName, String.Empty); Guid organisationId = await client.SendAsync(User.GetAccessToken(), updateRequest); return RedirectToAction("MainContactPerson", new { organisationId }); } CreatePartnershipRequest request = new CreatePartnershipRequest { TradingName = model.BusinessTradingName }; //create the organisation only if does not exist Guid orgId = await client.SendAsync(User.GetAccessToken(), request); return RedirectToAction("MainContactPerson", new { organisationId = orgId }); } }