Esempio n. 1
0
        public void Should_Return_True_If_Given_Mime_Is_Correct()
        {
            var hyperionBodyDeserializer = new HyperionBodyDeserializer();

            var canDeserialize = hyperionBodyDeserializer.CanDeserialize("application/x-hyperion", new BindingContext());

            Assert.True(canDeserialize);
        }
        public void Should_Return_True_If_Given_Mime_Is_Correct()
        {
            var serializer = new Serializer(new SerializerOptions(preserveObjectReferences: HyperionSerializerSettings.Default.PreserveObjectReferences,
                                                                  versionTolerance: HyperionSerializerSettings.Default.VersionTolerance,
                                                                  ignoreISerializable: HyperionSerializerSettings.Default.IgnoreISerializable));

            var hyperionBodyDeserializer = new HyperionBodyDeserializer(serializer);

            bool canDeserialize = hyperionBodyDeserializer.CanDeserialize("application/x-hyperion", new BindingContext());

            Assert.True(canDeserialize);
        }
Esempio n. 3
0
        public void Should_Deserialize_Given_Object()
        {
            var serializer = new Serializer(new SerializerOptions(
                                                preserveObjectReferences: HyperionSerializerSettings.Default.PreserveObjectReferences,
                                                versionTolerance: HyperionSerializerSettings.Default.VersionTolerance,
                                                ignoreISerializable: true));

            var user = new TestUser
            {
                Age  = 31,
                Id   = Guid.NewGuid(),
                Name = "Deniz"
            };


            var hyperionBodyDeserializer = new HyperionBodyDeserializer();

            var context = new BindingContext
            {
                DestinationType          = typeof(TestUser),
                ValidModelBindingMembers = typeof(TestUser)
                                           .GetProperties(BindingFlags.Public | BindingFlags.Instance)
                                           .Select(p => new BindingMemberInfo(p))
            };

            using (var bodyStream = new MemoryStream())
            {
                serializer.Serialize(user, bodyStream);

                bodyStream.Position = 0;

                var deserializedUser = hyperionBodyDeserializer.Deserialize("application/x-hyperion", bodyStream, context);

                var testUser = deserializedUser as TestUser;

                Assert.True(testUser != null);

                Assert.Equal(testUser.Name, user.Name);
                Assert.Equal(testUser.Age, user.Age);
                Assert.Equal(testUser.Id, user.Id);
            }
        }