Exemplo n.º 1
0
        public void TestIssue111()
        {
            var context = new SerializationContext
            {
                SerializationMethod      = SerializationMethod.Map,
                EnumSerializationOptions =
                {
                    SerializationMethod = EnumSerializationMethod.ByName
                },
                CompatibilityOptions =
                {
                    PackerCompatibilityOptions = PackerCompatibilityOptions.None
                }
            };

            var serializer = context.GetSerializer <Dictionary <string, object> >();

            var dict = new Dictionary <string, object>();

            dict["a"]       = "x";
            dict["b"]       = true;
            dict["c"]       = 5;
            dict["myclass"] = new Issue111Class()
            {
                x = 8, y = "ola"
            };

            byte[] body = serializer.PackSingleObject(dict);

            using (var stream = new MemoryStream(body))
            {
                var unpackedDictionary = Unpacking.UnpackDictionary(stream);
                Assert.That(unpackedDictionary.Count, Is.EqualTo(4));
                Assert.That(unpackedDictionary["a"] == "x");
                Assert.That(unpackedDictionary["b"] == true);
                Assert.That(unpackedDictionary["c"] == 5);
                Assert.That(unpackedDictionary["myclass"].IsDictionary);
                var myClass = unpackedDictionary["myclass"].AsDictionary();
                Assert.That(myClass["x"] == 8);
                Assert.That(myClass["y"] == "ola");
            }
        }
Exemplo n.º 2
0
		public void TestIssue111()
		{
			var context = new SerializationContext
			{
				SerializationMethod = SerializationMethod.Map,
				EnumSerializationMethod = EnumSerializationMethod.ByName,
				CompatibilityOptions =
				{
					PackerCompatibilityOptions = PackerCompatibilityOptions.None
				}
			};
			var serializer = context.GetSerializer<Dictionary<string, object>>();

			var dict = new Dictionary<string, object>();
			dict[ "a" ] = "x";
			dict[ "b" ] = true;
			dict[ "c" ] = 5;
			dict[ "myclass" ] = new Issue111Class() { x = 8, y = "ola" };

			byte[] body = serializer.PackSingleObject( dict );

			using ( var stream = new MemoryStream( body ) )
			{
				var unpackedDictionary = Unpacking.UnpackDictionary( stream );
				Assert.That( unpackedDictionary.Count, Is.EqualTo( 4 ) );
				Assert.That( unpackedDictionary[ "a" ] == "x" );
				Assert.That( unpackedDictionary[ "b" ] == true );
				Assert.That( unpackedDictionary[ "c" ] == 5 );
				Assert.That( unpackedDictionary[ "myclass" ].IsDictionary );
				var myClass = unpackedDictionary[ "myclass" ].AsDictionary();
				Assert.That( myClass[ "x" ] == 8 );
				Assert.That( myClass[ "y" ] == "ola" );
			}
		}