示例#1
0
            public void GetEffectiveSubjectId_NonAzureADToken_ReturnsUserSubjectId()
            {
                var expectedSubjectId = TestHelper.GenerateRandomString();

                this.AppConfiguration.AzureAuthenticationEnabled = false;
                claimResult.SchemeItem = "NotAzure";
                user.SubjectId         = expectedSubjectId;

                var result = ClaimsService.GetEffectiveSubjectId(claimResult, user);

                Assert.Equal <string>(expectedSubjectId, result);
            }
示例#2
0
            public void GetEffectiveSubjectId_NullClaimResult_ReturnsException()
            {
                Exception excResult = null;

                try
                {
                    var result = ClaimsService.GetEffectiveSubjectId(null, new User());
                    Assert.True(false, "Should not get past this function call.");
                }
                catch (Exception exc)
                {
                    excResult = exc;
                }

                Assert.NotNull(excResult);
                Assert.IsType <ArgumentNullException>(excResult);
                Assert.True(excResult.Message.Contains("The object name 'claimInformation' cannot be null."));
            }
示例#3
0
            public void GetEffectiveSubjectId_NoAzureClaims_ReturnsUserSubjectId()
            {
                this.AppConfiguration.AzureAuthenticationEnabled = true;

                var expectedSubjectId = TestHelper.GenerateRandomString();
                var claimSubjectId    = TestHelper.GenerateRandomString();

                claimResult.Claims = new List <Claim>()
                {
                };
                user.SubjectId = expectedSubjectId;

                var result = ClaimsService.GetEffectiveSubjectId(claimResult, user);

                Assert.Equal <string>(expectedSubjectId, result);

                Assert.Equal <string>(expectedSubjectId, result);
                Assert.NotEqual <string>(claimSubjectId, result);
            }
示例#4
0
            public void GetEffectiveSubjectId_OIDAlternativeAzureClaim_ReturnsAzureSubjectId()
            {
                this.AppConfiguration.AzureAuthenticationEnabled = true;

                var expectedSubjectId = TestHelper.GenerateRandomString();
                var claimSubjectId    = TestHelper.GenerateRandomString();

                claimResult.Claims = new List <Claim>()
                {
                    new Claim(AzureActiveDirectoryJwtClaimTypes.OID_Alternative, claimSubjectId)
                };
                user.SubjectId = expectedSubjectId;

                var result = ClaimsService.GetEffectiveSubjectId(claimResult, user);

                Assert.Equal <string>(claimSubjectId, result);

                Assert.Equal <string>(claimSubjectId, result);
                Assert.NotEqual <string>(expectedSubjectId, result);
            }
示例#5
0
            public void GetEffectiveSubjectId_NullUser_ReturnsException()
            {
                var claimResult = new ClaimsResult()
                {
                    SchemeItem = FabricIdentityConstants.AuthenticationSchemes.Azure
                };
                Exception excResult = null;

                try
                {
                    var result = ClaimsService.GetEffectiveSubjectId(claimResult, null);
                    Assert.True(false, "Should not get past this function call.");
                }
                catch (Exception exc)
                {
                    excResult = exc;
                }

                Assert.NotNull(excResult);
                Assert.IsType <ArgumentNullException>(excResult);
                Assert.True(excResult.Message.Contains("The object name 'user' cannot be null."));
            }