private void AssertContentRestrictionForPlant1(IEnumerable <Claim> claims) { var contentRestrictionClaims = GetContentRestrictionClaims(claims); Assert.AreEqual(2, contentRestrictionClaims.Count); Assert.IsTrue(contentRestrictionClaims.Any(r => r.Value == ClaimsTransformation.GetContentRestrictionClaimValue(Restriction1_Plant1))); Assert.IsTrue(contentRestrictionClaims.Any(r => r.Value == ClaimsTransformation.GetContentRestrictionClaimValue(Restriction2_Plant1))); }
public void Setup() { _normalContentRestrictionClaim = new Claim(ClaimTypes.UserData, ClaimsTransformation.GetContentRestrictionClaimValue(ContentRestriction)); _explicitNoRestrictionsClaim = new Claim(ClaimTypes.UserData, ClaimsTransformation.GetContentRestrictionClaimValue(ClaimsTransformation.NoRestrictions)); var principal = new ClaimsPrincipal(); _claimsIdentity = new ClaimsIdentity(); principal.AddIdentity(_claimsIdentity); var claimsProviderMock = new Mock <IClaimsProvider>(); claimsProviderMock.Setup(u => u.GetCurrentUser()).Returns(principal); _dut = new ContentRestrictionsChecker(claimsProviderMock.Object); }
public async Task TransformAsync_OnSecondPlant_ShouldClearAllClaimsForFirstPlant() { var result = await _dut.TransformAsync(_principalWithOid); AssertRoleClaimsForPlant1(result.Claims); AssertProjectClaimsForPlant1(result.Claims); AssertContentRestrictionForPlant1(result.Claims); _plantProviderMock.SetupGet(p => p.Plant).Returns(Plant2); result = await _dut.TransformAsync(_principalWithOid); var claims = GetRoleClaims(result.Claims); Assert.AreEqual(1, claims.Count); Assert.IsNotNull(claims.SingleOrDefault(r => r.Value == Permission1_Plant2)); claims = GetProjectClaims(result.Claims); Assert.AreEqual(1, claims.Count); Assert.IsNotNull(claims.SingleOrDefault(r => r.Value == ClaimsTransformation.GetProjectClaimValue(Project1_Plant2))); claims = GetContentRestrictionClaims(result.Claims); Assert.AreEqual(1, claims.Count); Assert.IsNotNull(claims.SingleOrDefault(r => r.Value == ClaimsTransformation.GetContentRestrictionClaimValue(Restriction1_Plant2))); }