コード例 #1
0
        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);
        }
コード例 #3
0
        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)));
        }