Allow parameter overloading script functions

This commit is contained in:
2019-01-20 15:01:18 +01:00
parent 43da2b3d19
commit 3c0e5f5b13
8 changed files with 354 additions and 174 deletions

View File

@@ -182,5 +182,23 @@ return value
var result = Executor.EvaluateScript<long>(input, Options);
Assert.Equal(6, result);
}
[Fact]
public void HandleMultipleFunctionOptions()
{
const string input = @"
function a(number v)
return v + 10
end
function a(string s)
return s == ""test""
end
return a(50) == 60 and a(""test"")
";
Assert.Equal(60, Executor.EvaluateFunction<long>(input, "a", new object[] {50}));
Assert.True(Executor.EvaluateFunction<bool>(input, "a", new object[] {"test"}));
Assert.True(Executor.EvaluateScript<bool>(input, Options));
}
}
}