private static Saml2NameIdentifier ProcessLogoutNameIdentifier(Claim claim) { var fields = DelimitedString.Split(claim.Value); var saml2NameIdentifier = new Saml2NameIdentifier(fields[4]); if (!string.IsNullOrEmpty(fields[0])) { saml2NameIdentifier.NameQualifier = fields[0]; } if (!string.IsNullOrEmpty(fields[1])) { saml2NameIdentifier.SPNameQualifier = fields[1]; } if (!string.IsNullOrEmpty(fields[2])) { saml2NameIdentifier.Format = new Uri(fields[2]); } if (!string.IsNullOrEmpty(fields[3])) { saml2NameIdentifier.SPProvidedId = fields[3]; } return(saml2NameIdentifier); }
public void DelimitedString_Split_EscapeCharaters() { var actual = DelimitedString.Split("a/,b//c,/,,//,"); var expected = new[] { "a,b/c", ",", "/", "" }; actual.Should().BeEquivalentTo(expected); }
public void DelimitedString_Split_EndsWithEscapedDelimiter() { var actual = DelimitedString.Split("a/,"); var expected = new[] { "a," }; actual.Should().BeEquivalentTo(expected); }
public void DelimitedString_Split_EmptyStrings() { var actual = DelimitedString.Split(",aa,,bb,"); var expected = new[] { "", "aa", "", "bb", "" }; actual.Should().BeEquivalentTo(expected); }
public void DelimitedString_Split_SimpleWithoutEscaping() { var actual = DelimitedString.Split("aa,bb,cc"); var expected = new[] { "aa", "bb", "cc" }; actual.Should().BeEquivalentTo(expected); }