public static void StringArray() { var methods = Mock.Of<IMethods>(x => x.StringArray() == new[]{"Hi","You"}); var engine = new JurassicJsEngine(new Global() {Methods = methods}); var result = engine.Evaluate("methods.stringArray()"); Assert.AreEqual(new[]{"Hi", "You"}, result); }
public static void ParamsWithReturnValue() { var global = new Mock <IParamsMethods>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("method3('23')"); global.Verify(x => x.Method3("23")); }
public static void ParamsAndFixedArgument() { var global = new Mock <IParamsMethods>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("method2(1,'23')"); global.Verify(x => x.Method2(1, "23")); }
public static void ParamsMethodCallTwoArg() { var global = new Mock <IParamsMethods>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("method1(1,'2')"); global.Verify(x => x.Method1(1, "2")); }
public static void ParamsMethodCallOneArg(string arg, object expected) { var global = new Mock <IParamsMethods>(); var engine = new JurassicJsEngine(global.Object); engine.Execute($"method1({arg})"); global.Verify(x => x.Method1(expected)); }
public static void ParamsMethodCallBoolAndArgs() { var global = new Mock <IParamsMethods>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("method4(true)"); global.Verify(x => x.Method4(true)); }
public static void ObjPreferableForInt() { var global = new Mock <IStringObjectOverload>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("log(1)"); global.Verify(x => x.Log(1), Times.Once); }
public void CallWarnObject() { var global = new Mock <IOverloadWithParams>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("warn(this)"); global.Verify(x => x.Warn(global.Object)); }
public void OverloadCallObj() { var global = new Mock <IOverloads>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("method({name:'x'})"); global.Verify(x => x.Method(It.IsAny <C>())); }
public void OverloadCallNoArgs() { var global = new Mock <IOverloads>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("method()"); global.Verify(x => x.Method()); }
public void OverloadCallStringToBool() { var global = new Mock <IOverloads>(); var engine = new JurassicJsEngine(global.Object); engine.Execute("method('false')"); global.Verify(x => x.Method(true)); }
public static void TypeArray() { var resultArray = new[] {new AnotherType(), new AnotherType()}; var methods = Mock.Of<IMethods>(x => x.TypeArray() == resultArray); var engine = new JurassicJsEngine(new Global() {Methods = methods}); var result = engine.Evaluate("methods.typeArray()"); Assert.AreEqual(resultArray, result); }
public static void DefineCtorFunction(string code, int expectedWidth, int expectedHeight) { var global = new TestingGlobal(); var jsEngine = new JurassicJsEngine(global); var img = (Img)jsEngine.Evaluate(code); Assert.That(img.Width, Is.EqualTo(expectedWidth), "Width"); Assert.That(img.Height, Is.EqualTo(expectedHeight), "Height"); }
public void CallCtorUlong() { var engine = new JurassicJsEngine(null); engine.AddGlobalType(typeof(UlongCtor)); var result = engine.Evaluate("new UlongCtor(5)"); Assert.IsInstanceOf <UlongCtor>(result); }
public static void PassToShort(string code, short expected) { var methods = Mock.Of <IMethods>(); var engine = new JurassicJsEngine(new Global() { Methods = methods }); engine.Execute(code); Mock.Get(methods).Verify(x => x.ShortArg(expected), Times.Once); }
public string AccessObjectIndex(string code) { var engine = new JurassicJsEngine(new { Data = new ObjectIndexGet() }); return((string)engine.Evaluate(code)); }