Exemple #1
0
        public void Saml2RequestBase_ReadBasePropertiesWithNullArgument_ShouldThrow()
        {
            var    subject = new ConcreteSaml2Request();
            Action a       = () => subject.TestReadBasePropertiesWithNull();

            a.ShouldThrow <ArgumentNullException>().And.ParamName.Should().Be("xml");
        }
Exemple #2
0
        public void Saml2RequestBase_ToXNodes_IssueInstant()
        {
            var r = new ConcreteSaml2Request();

            r.ToXElement().Attribute("IssueInstant").Should().NotBeNull()
            .And.Subject.Value.Should().Be(r.IssueInstant);
        }
Exemple #3
0
        public void Saml2RequestBase_Id_IsUnique()
        {
            var r1 = new ConcreteSaml2Request();
            var r2 = new ConcreteSaml2Request();

            r1.Id.Should().NotBe(r2.Id);
        }
Exemple #4
0
        public void Saml2RequestBase_ToXNodes_Version()
        {
            var r = new ConcreteSaml2Request();

            r.ToXElement().Attribute("Version").Should().NotBeNull()
            .And.Subject.Value.Should().Be(r.Version);
        }
Exemple #5
0
        public void Saml2RequestBase_IssueInstant_Format()
        {
            var issueInstant = new ConcreteSaml2Request().IssueInstant;

            Regex.IsMatch(issueInstant,
                          "20[0-9]{2}-((0[0-9])|(1[0-2]))-(([0-2][0-9])|(3[0-1]))T(([01][0-9])|(2[0-3]))(:[0-5][0-9]){2}Z")
            .Should().BeTrue();
        }
Exemple #6
0
        public void Saml2RequestBase_IssueInstant_IsNow()
        {
            var issueInstant = new ConcreteSaml2Request().IssueInstant;

            var parsed = DateTime.Parse(issueInstant).ToUniversalTime();

            parsed.Should().BeCloseTo(DateTime.UtcNow, 1200);
            parsed.Kind.Should().Be(DateTimeKind.Utc);
        }
Exemple #7
0
        public void Saml2RequestBase_ToXNodes_Issuer()
        {
            var uri = "http://sp.example.com/";
            var r   = new ConcreteSaml2Request()
            {
                Issuer = new EntityId(uri)
            };

            r.ToXElement().Element(Saml2Namespaces.Saml2 + "Issuer").Value.Should().Be(uri);
        }
Exemple #8
0
        public void Saml2RequestBase_ToXNodes_Destination()
        {
            var uri = "http://idp.example.com/";
            var r   = new ConcreteSaml2Request()
            {
                DestinationUrl = new Uri(uri)
            };

            r.ToXElement().Attribute("Destination").Should().NotBeNull()
            .And.Subject.Value.Should().Be(uri);
        }
Exemple #9
0
        public void Saml2RequestBase_Id_IsValidXsId()
        {
            var id = new ConcreteSaml2Request().Id.Value;

            Regex.IsMatch(id, "[^:0-9][^:]*").Should().BeTrue();
        }
Exemple #10
0
        public void Saml2RequestBase_MessageName()
        {
            var subject = new ConcreteSaml2Request();

            subject.MessageName.Should().Be("SAMLRequest");
        }
Exemple #11
0
        public void Saml2RequestBase_ToXNodes_Saml2NamespacePrefix()
        {
            var r = new ConcreteSaml2Request();

            r.ToXElement().GetPrefixOfNamespace(Saml2Namespaces.Saml2Name).Should().Be("saml2");
        }