示例#1
0
        public void TestDeserialization(SerializationTestCase testCase)
        {
            var(preferences, persister) = Setup();

            using (persister) {
                var optionKey = testCase.Wrap(preferences);
                var property  = optionKey.GetPropertyName();

                // Set the value and deserialize it
                PropertyService.Set(property, testCase.SerializedValue);
                var success = persister.TryFetch(optionKey, out var deserialized);
                Assert.AreEqual(testCase.Success, success);
                Assert.AreEqual(testCase.Value, deserialized, $"Could not convert {testCase.SerializedValue} to {testCase.Value}");
            }
        }
        public void TestDeserialization(SerializationTestCase testCase)
        {
            var(preferences, persister) = Setup();

            using (persister) {
                var optionKey = testCase.Wrap(preferences);
                var property  = optionKey.GetPropertyName();

                // Set the value and deserialize it
                PropertyService.Set(property, testCase.SerializedValue);
                Assert.AreEqual(testCase.Success, persister.TryFetch(optionKey, out var deserialized));
                if (!testCase.Success)
                {
                    Assert.IsNull(deserialized);
                    return;
                }

                Assert.AreEqual(testCase.Value, deserialized);
            }
        }
示例#3
0
        public void TestSerialization(SerializationTestCase testCase)
        {
            var(preferences, persister) = Setup();

            using (persister) {
                var optionKey = testCase.Wrap(preferences);

                var property = optionKey.GetPropertyName();
                PropertyService.Set(property, null);

                // Try persisting it.
                Assert.AreEqual(testCase.Success, persister.TryPersist(optionKey, testCase.Value));
                if (!testCase.Success)
                {
                    Assert.IsFalse(PropertyService.HasValue(property));
                    return;
                }

                // See if we can deserialize it back as-is
                Assert.AreEqual(testCase.SerializedValue, PropertyService.Get <object> (property));
                Assert.AreEqual(testCase.Success, persister.TryFetch(optionKey, out var deserializedValue));
                Assert.AreEqual(testCase.Value, deserializedValue);
            }
        }
示例#4
0
 private static string PathForTestFile(string fileName)
 => SerializationTestCase.PathForTestFile("Character", "MoveList", fileName);
示例#5
0
 public void Test_Writing_A_Yaml_Move_List_Table_File_Successfully(SerializationTestCaseData <MoveListTable> testCaseData)
 => SerializationTestCase <MoveListTable> .TestWritingYamlSLBFile(testCaseData);
示例#6
0
 public void Test_Writing_An_Move_List_Table_To_A_Binary_File_Successfully(SerializationTestCaseData <MoveListTable> testCaseData)
 => SerializationTestCase <MoveListTable> .TestWritingBinarySLBFile(testCaseData);
示例#7
0
 private static string PathForTestFile(string fileName)
 => SerializationTestCase.PathForTestFile("Character", "AnimationEvents", fileName);
示例#8
0
 public void Test_Writing_A_Yaml_Animation_Event_Table_File_Successfully(SerializationTestCaseData <AnimationEventsTable> testCaseData)
 => SerializationTestCase <AnimationEventsTable> .TestWritingYamlSLBFile(testCaseData);
示例#9
0
 public void Test_Writing_An_Animation_Event_Table_To_A_Binary_File_Successfully(SerializationTestCaseData <AnimationEventsTable> testCaseData)
 => SerializationTestCase <AnimationEventsTable> .TestWritingBinarySLBFile(testCaseData);
示例#10
0
 private static string PathForTestFile(string fileName)
 => SerializationTestCase.PathForTestFile("Level", "Conversation", fileName);
示例#11
0
 public void Test_Writing_A_Yaml_Conversation_File_Successfully(SerializationTestCaseData <CharacterTable> testCaseData)
 => SerializationTestCase <CharacterTable> .TestWritingYamlSLBFile(testCaseData);
示例#12
0
 public void Test_Writing_A_Conversation_To_A_Binary_File_Successfully(SerializationTestCaseData <CharacterTable> testCaseData)
 => SerializationTestCase <CharacterTable> .TestWritingBinarySLBFile(testCaseData);