public void ExecuteImmediately() { var TestScriptEngine = new Scripts(); var Enumerable = new EnumerableClass(); TestScriptEngine.Start(Enumerable.YieldOnce(), ""); Assert.IsTrue(Enumerable.Yielded); TestScriptEngine.Update(); Assert.AreEqual(0, TestScriptEngine.ScriptCollection.Count); }
public void RemoveSetsScriptDone() { var TestScriptEngine = new Scripts(); var Enumerable = new EnumerableClass(); var Script = TestScriptEngine.Start(Enumerable.Foo(), "ScriptName"); Assert.IsFalse(Script.Done); TestScriptEngine.Update(); Assert.IsFalse(Script.Done); TestScriptEngine.Remove("ScriptName"); Assert.IsTrue(Script.Done); }
public void ExecuteDeferred() { var TestScriptEngine = new Scripts(); var Enumerable = new EnumerableClass(); TestScriptEngine.Enqueue(Enumerable.YieldOnce(), ""); Assert.IsFalse(Enumerable.Yielded); TestScriptEngine.Update(); Assert.IsTrue(Enumerable.Yielded); TestScriptEngine.Update(); Assert.AreEqual(0, TestScriptEngine.ScriptCollection.Count); }
public void NestedIEnumerator() { var Script = new Scripts(); var ScriptClass = new EnumerableClass(); Script.Start(ScriptClass.NestedIEnumerator()); while (Script.ScriptCollection.Count > 0) { Script.Update(); } Assert.AreEqual(7, ScriptClass.TestInt); }
public void SaveScript() { var TestClass = new EnumerableClass(); var TestScript = new Script(TestClass.Foo()); TestScript.MoveNext(); TestScript.MoveNext(); Assert.AreEqual(false, TestScript.Done); var Check = STACK.State.Serialization.SaveState <Script>(TestScript); TestScript = STACK.State.Serialization.LoadState <Script>(Check); Assert.AreEqual(false, TestScript.Done); }
public void ScriptEngineNestedScript() { Scripts TestScriptEngine = new Scripts(); var EnumerableClass = new EnumerableClass(); TestScriptEngine.Start(EnumerableClass.NestedScript(TestScriptEngine), ""); Assert.AreEqual(1, TestScriptEngine.ScriptCollection.Count); TestScriptEngine.Update(); Assert.AreEqual(2, TestScriptEngine.ScriptCollection.Count); TestScriptEngine.Update(); Assert.IsFalse(EnumerableClass.FinishedNestedScript); TestScriptEngine.Update(); Assert.AreEqual(0, TestScriptEngine.ScriptCollection.Count); Assert.IsTrue(EnumerableClass.FinishedNestedScript); }