public void RandomizerOnCreateMethodNotCalledInEditMode()
 {
     // TestRandomizer.OnCreate() should NOT be called here while in edit-mode
     // if ScenarioBase.CreateRandomizer<>() was coded correctly
     Assert.DoesNotThrow(() =>
     {
         m_Scenario.AddRandomizer(new ErrorsOnCreateTestRandomizer());
     });
 }
        public IEnumerator OnUpdateExecutesEveryFrame()
        {
            yield return(CreateNewScenario(10, 1));

            m_Scenario.AddRandomizer(new ExampleTransformRandomizer());
            var transform       = m_TestObject.transform;
            var initialPosition = Vector3.zero;

            transform.position = initialPosition;

            yield return(null);

            Assert.AreNotEqual(initialPosition, transform.position);
            // ReSharper disable once Unity.InefficientPropertyAccess
            initialPosition = transform.position;

            yield return(null);

            // ReSharper disable once Unity.InefficientPropertyAccess
            Assert.AreNotEqual(initialPosition, transform.position);
        }
 public void OneRandomizerInstancePerTypeTest()
 {
     m_Scenario = m_TestObject.AddComponent <FixedLengthScenario>();
     m_Scenario.AddRandomizer(new ExampleTransformRandomizer());
     Assert.Throws <ScenarioException>(() => m_Scenario.AddRandomizer(new ExampleTransformRandomizer()));
 }