Tests.ORecordParsingTests.TestMapDeserialization C# (CSharp) Method

TestMapDeserialization() private method

private TestMapDeserialization ( ) : void
return void
        public void TestMapDeserialization()
        {
            string raw = "rules:{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2},embedded:(rules:{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2}),array:[{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2},{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2}],nested:{\"database.query\":2,\"database.command\":{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2},\"database.hook.record\":2,\"database.hook2.record\":{\"database.hook.record\":2}}";

            ORecord record = new ORecord(ORecordType.Document, 0, UTF8Encoding.UTF8.GetBytes(raw));

            Assert.IsTrue(record.Fields["rules"].GetType() == typeof(string));
            Assert.IsTrue((string)record.Fields["rules"] == "{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2}");

            Dictionary<string, object> embedded = (Dictionary<string, object>)record.Fields["embedded"];

            Assert.IsTrue(embedded["rules"].GetType() == typeof(string));
            Assert.IsTrue((string)embedded["rules"] == "{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2}");

            List<object> array = (List<object>)record.Fields["array"];

            Assert.IsTrue(array[0].GetType() == typeof(string));
            Assert.IsTrue((string)array[0] == "{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2}");

            Assert.IsTrue(array[1].GetType() == typeof(string));
            Assert.IsTrue((string)array[1] == "{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2}");

            Assert.IsTrue(record.Fields["nested"].GetType() == typeof(string));
            Assert.IsTrue((string)record.Fields["nested"] == "{\"database.query\":2,\"database.command\":{\"database.query\":2,\"database.command\":2,\"database.hook.record\":2},\"database.hook.record\":2,\"database.hook2.record\":{\"database.hook.record\":2}}");
        }