public void ShouldNotEditClaimSetIfNameEmpty() { var testApplication = new Application { ApplicationName = $"Test Application {DateTime.Now:O}" }; Save(testApplication); var testClaimSet = new ClaimSet { ClaimSetName = "TestClaimSet1", Application = testApplication }; Save(testClaimSet); var editModel = new EditClaimSetModel { ClaimSetName = "", ClaimSetId = testClaimSet.ClaimSetId }; Scoped <ISecurityContext>(securityContext => { var validator = new EditClaimSetModelValidator(securityContext); var validationResults = validator.Validate(editModel); validationResults.IsValid.ShouldBe(false); validationResults.Errors.Single().ErrorMessage.ShouldBe("'Claim Set Name' must not be empty."); }); }
public void ShouldNotEditClaimSetIfNameNotUnique() { var testApplication = new Application { ApplicationName = $"Test Application {DateTime.Now:O}" }; Save(testApplication); var alreadyExistingClaimSet = new ClaimSet { ClaimSetName = "TestClaimSet1", Application = testApplication }; Save(alreadyExistingClaimSet); var testClaimSet = new ClaimSet { ClaimSetName = "TestClaimSet2", Application = testApplication }; Save(testClaimSet); var editModel = new EditClaimSetModel { ClaimSetName = "TestClaimSet1", ClaimSetId = testClaimSet.ClaimSetId }; Scoped <ISecurityContext>(securityContext => { var validator = new EditClaimSetModelValidator(securityContext); var validationResults = validator.Validate(editModel); validationResults.IsValid.ShouldBe(false); validationResults.Errors.Single().ErrorMessage.ShouldBe("A claim set with this name already exists in the database. Please enter a unique name."); }); }
public void ShouldEditClaimSet() { var testApplication = new Application { ApplicationName = $"Test Application {DateTime.Now:O}" }; Save(testApplication); var alreadyExistingClaimSet = new ClaimSet { ClaimSetName = "TestClaimSet", Application = testApplication }; Save(alreadyExistingClaimSet); var editModel = new EditClaimSetModel { ClaimSetName = "TestClaimSetEdited", ClaimSetId = alreadyExistingClaimSet.ClaimSetId }; Scoped <ISecurityContext>(securityContext => { var command = new EditClaimSetCommand(securityContext); command.Execute(editModel); }); var editedClaimSet = Transaction(securityContext => securityContext.ClaimSets.Single(x => x.ClaimSetId == alreadyExistingClaimSet.ClaimSetId)); editedClaimSet.ClaimSetName.ShouldBe(editModel.ClaimSetName); }
public void ShouldNotEditClaimSetIfNameLengthGreaterThan255Characters() { var testApplication = new Application { ApplicationName = $"Test Application {DateTime.Now:O}" }; Save(testApplication); var testClaimSet = new ClaimSet { ClaimSetName = "TestClaimSet1", Application = testApplication }; Save(testClaimSet); var editModel = new EditClaimSetModel { ClaimSetName = "ThisIsAClaimSetWithNameLengthGreaterThan255CharactersThisIsAClaimSetWithNameLengthGreaterThan255CharactersThisIsAClaimSetWithNameLengthGreaterThan255CharactersThisIsAClaimSetWithNameLengthGreaterThan255CharactersThisIsAClaimSetWithNameLengthGreaterThan255CharactersThisIsAClaimSetWithNameLengthGreaterThan255Characters", ClaimSetId = testClaimSet.ClaimSetId }; Scoped <ISecurityContext>(securityContext => { var validator = new EditClaimSetModelValidator(securityContext); var validationResults = validator.Validate(editModel); validationResults.IsValid.ShouldBe(false); validationResults.Errors.Single().ErrorMessage.ShouldBe("The claim set name must be less than 255 characters."); }); }
public ActionResult EditClaimSet(int claimSetId) { var existingClaimSet = _getClaimSetByIdQuery.Execute(claimSetId); var model = new EditClaimSetModel { ClaimSetName = existingClaimSet.Name, ClaimSetId = claimSetId, Applications = _getApplicationsByClaimSetIdQuery.Execute(claimSetId), ResourceClaims = _getResourcesByClaimSetIdQuery.AllResources(claimSetId), AllResourceClaims = _getResourceClaimsQuery.GetSelectListForResourceClaims() }; return(PartialView("_EditClaimSet", model)); }
public ActionResult EditClaimSet(EditClaimSetModel model) { _editClaimSetCommand.Execute(model); return(RedirectToAction("ClaimSets", "GlobalSettings")); }