public void TestCompileError() { IScriptEngineFactory factory = new JScriptEngineFactory(); Assert.IsTrue(factory.CanCompile("test.js")); Assert.IsTrue(factory.CanCompile("test.JS")); Assert.IsFalse(factory.CanCompile("test.vbs")); IScriptEngine engine = null; try { engine = factory.Create(); engine.AddGlobalIntstance("Test", "JScript TestOK"); engine.AddScriptCodeFromText("TestCode", "でたらめなコード"); engine.Compile(); engine.Run(); } finally { if (engine != null) { engine.Close(); } } }
public void TestCompile() { IScriptEngineFactory factory = new JScriptEngineFactory(); Assert.IsTrue(factory.CanCompile("test.js")); Assert.IsTrue(factory.CanCompile("test.JS")); Assert.IsFalse(factory.CanCompile("test.vbs")); IScriptEngine engine = null; try { engine = factory.Create(); // engine.GenerateDebugInfo = true; engine.AddScriptCodeFromText("TestCode", "import System; Console.WriteLine(\"JScript TestOK\");"); engine.Compile(); engine.Run(); } catch (CompileErrorException e) { Console.WriteLine(e.GetType().Name); Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); foreach (CompileErrorInfo cei in e.GetCompileErrorInfos()) { Console.WriteLine("Source : " + cei.SourceName); Console.WriteLine("Desc : " + cei.Description); Console.WriteLine("Line : " + cei.ErrorLine); Console.WriteLine("LineText : " + cei.ErrorText); } Assert.Fail(); } catch (Exception e) { Console.WriteLine(e.GetType().Name); Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); Assert.Fail(); } finally { if (engine != null) { engine.Close(); } } }