Example #1
0
        public void ScenarioConfigurationOverwrittenDuringDeserialization()
        {
            m_TestObject = new GameObject();
            m_Scenario   = m_TestObject.AddComponent <TestFixedLengthScenario>();

            var constants = new FixedLengthScenario.Constants
            {
                framesPerIteration = 2,
                totalIterations    = 2
            };

            var changedConstants = new FixedLengthScenario.Constants
            {
                framesPerIteration = 0,
                totalIterations    = 0
            };

            // Serialize some values
            m_Scenario.constants = constants;
            var serializedConfig = m_Scenario.SerializeToJson();

            // Change the values
            m_Scenario.constants = changedConstants;
            m_Scenario.DeserializeFromJson(serializedConfig);

            // Check if the values reverted correctly
            Assert.AreEqual(m_Scenario.constants.framesPerIteration, constants.framesPerIteration);
            Assert.AreEqual(m_Scenario.constants.totalIterations, constants.totalIterations);
        }
Example #2
0
        public void ScenarioConfigurationSerializesProperly()
        {
            m_TestObject = new GameObject();
            m_Scenario   = m_TestObject.AddComponent <TestFixedLengthScenario>();
            m_Scenario.AddRandomizer(new RotationRandomizer());

            string RemoveWhitespace(string str) =>
            string.Join("", str.Split(default(string[]), StringSplitOptions.RemoveEmptyEntries));

            var expectedConfigAsset = (TextAsset)Resources.Load("SampleScenarioConfiguration");
            var expectedText        = RemoveWhitespace(expectedConfigAsset.text);
            var scenarioJson        = RemoveWhitespace(m_Scenario.SerializeToJson());

            Assert.AreEqual(expectedText, scenarioJson);
        }