Add parameterized callable functions from CSharp
This commit is contained in:
@@ -166,5 +166,44 @@ end
|
||||
Assert.Equal(100, (long)result);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ReturnFromCSharpCallWithParameter()
|
||||
{
|
||||
const string input = @"
|
||||
function testFunc (b)
|
||||
if b then
|
||||
return 100
|
||||
else
|
||||
return 50
|
||||
end
|
||||
end
|
||||
";
|
||||
var script = new Script(input);
|
||||
Assert.Empty(script.Diagnostics.Messages);
|
||||
var result = script.EvaluateFunction<NumberLong>("testFunc", new object[] {true});
|
||||
Assert.Empty(script.Diagnostics.Messages);
|
||||
Assert.Equal(100, (long)result);
|
||||
var result2 = script.EvaluateFunction<NumberLong>("testFunc", new object[] {false});
|
||||
Assert.Empty(script.Diagnostics.Messages);
|
||||
Assert.Equal(50, (long)result2);
|
||||
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ReturnFromCSharpCallWithParameters()
|
||||
{
|
||||
const string input = @"
|
||||
function add (a, b)
|
||||
return a + b
|
||||
end
|
||||
";
|
||||
var script = new Script(input);
|
||||
Assert.Empty(script.Diagnostics.Messages);
|
||||
var result = script.EvaluateFunction<NumberLong>("add", new object[] {400, 128});
|
||||
Assert.Empty(script.Diagnostics.Messages);
|
||||
Assert.Equal(528, (long)result);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user