public FEELFnResult<String> invoke(@ParameterName("string") String string, @ParameterName("start position") Number start) {
        return invoke(string, start, null);
    }
@Test
    void invokeStartNegative() {
        FunctionTestUtil.assertResult(substringFunction.invoke("test", -1), "t");
        FunctionTestUtil.assertResult(substringFunction.invoke("test", -2), "st");
        FunctionTestUtil.assertResult(substringFunction.invoke("test", -4), "test");

        FunctionTestUtil.assertResult(substringFunction.invoke("test", -2, 1), "s");
        FunctionTestUtil.assertResult(substringFunction.invoke("test", -3, 2), "es");
    }