コード例 #1
0
        public void FilterClaims_GroupSettingsNullFilters_ReturnsOriginalClaims()
        {
            var groupMatchSettings = new GroupFilterSettings();

            var claims = new List <Claim>
            {
                new Claim("role", "Admin")
            };

            var filteredClaims = new GroupFilterService(groupMatchSettings).FilterClaims(claims).ToList();

            Assert.Equal(1, filteredClaims.Count);
            Assert.Equal("Admin", filteredClaims[0].Value);
        }
コード例 #2
0
        public void FilterClaims_EmptyPrefixesAndSuffixes_ReturnsOriginalClaims()
        {
            var groupMatchSettings = new GroupFilterSettings
            {
                Prefixes = new List <string>(),
                Suffixes = new List <string>()
            };

            var claims = new List <Claim>
            {
                new Claim("role", "Admin")
            };

            var filteredClaims = new GroupFilterService(groupMatchSettings).FilterClaims(claims).ToList();

            Assert.Equal(1, filteredClaims.Count);
            Assert.Equal("Admin", filteredClaims[0].Value);
        }
コード例 #3
0
        public void FilterClaims_NoMatchingPrefixesAndSuffixes_ReturnsEmptyClaimList()
        {
            var groupMatchSettings = new GroupFilterSettings
            {
                Prefixes = new List <string>
                {
                    "foo"
                },
                Suffixes = new List <string>
                {
                    "bar"
                }
            };

            var claims = new List <Claim>
            {
                new Claim("role", "Admin")
            };

            var filteredClaims = new GroupFilterService(groupMatchSettings).FilterClaims(claims).ToList();

            Assert.Equal(0, filteredClaims.Count);
        }
コード例 #4
0
        public void FilterClaims_MatchingPrefixesAndSuffixes_ReturnsFilteredClaims()
        {
            var groupMatchSettings = new GroupFilterSettings
            {
                Prefixes = new List <string>
                {
                    "Admin",
                    "User",
                    "HC"
                },
                Suffixes = new List <string>
                {
                    "user",
                    "Safety"
                }
            };

            var claims = new List <Claim>
            {
                new Claim("role", "Administrator"),
                new Claim("role", "User"),
                new Claim("role", "NoMatch"),
                new Claim("role", "Superuser"),
                new Claim("role", "HCPatientSafety")
            };

            var filteredClaims = new GroupFilterService(groupMatchSettings).FilterClaims(claims).ToList();

            var claimComparer = new ClaimComparer();

            Assert.Equal(4, filteredClaims.Count);
            Assert.True(filteredClaims.Contains(claims[0], claimComparer));
            Assert.True(filteredClaims.Contains(claims[1], claimComparer));
            Assert.True(filteredClaims.Contains(claims[3], claimComparer));
            Assert.True(filteredClaims.Contains(claims[4], claimComparer));
        }
コード例 #5
0
 public GroupFilterService(GroupFilterSettings groupFilterSettings)
 {
     _groupFilterSettings = groupFilterSettings;
 }