public void ShouldBuildWithSubject()
        {
            object subject = IdentityProfiles.CreateStandardSubject();

            SessionSpecification sessionSpec =
                new SessionSpecificationBuilder()
                .WithSubject(subject)
                .Build();

            Assert.AreEqual(subject, sessionSpec.Subject);
        }
Exemple #2
0
        public void ShouldBuildADynamicScenario()
        {
            DynamicPolicy somePolicy  = TestTools.ShareUrl.CreateStandardPolicy();
            object        someSubject = IdentityProfiles.CreateStandardSubject();

            DynamicScenario result = new DynamicScenarioBuilder()
                                     .WithCallbackEndpoint(_someEndpoint)
                                     .WithPolicy(somePolicy)
                                     .WithExtension(extension1)
                                     .WithExtension(extension2)
                                     .WithSubject(someSubject)
                                     .Build();

            var expectedExtensions = new List <BaseExtension> {
                extension1, extension2
            };

            Assert.AreEqual(_someEndpoint, result.CallbackEndpoint);
            Assert.AreEqual(somePolicy, result.DynamicPolicy);
            CollectionAssert.AreEqual(expectedExtensions, result.Extensions);
            Assert.AreEqual(someSubject, result.Subject);

            string serializedScenario = JsonConvert.SerializeObject(
                result,

                new JsonSerializerSettings
            {
                NullValueHandling = NullValueHandling.Ignore
            });

            object deserializedObject;

            using (StreamReader r = File.OpenText("TestData/DynamicPolicy.json"))
            {
                string json = r.ReadToEnd();
                deserializedObject = JsonConvert.DeserializeObject(json);
            }

            string expectedJson = JsonConvert.SerializeObject(deserializedObject);

            Assert.AreEqual(expectedJson, serializedScenario);
        }