@Test public void invokeParamStringInvalid() { FunctionTestUtil.assertResultError(durationFunction.invoke("test"), InvalidParametersEvent.class); FunctionTestUtil.assertResultError(durationFunction.invoke("test HHH"), InvalidParametersEvent.class); FunctionTestUtil.assertResultError(durationFunction.invoke("testP2Y3D"), InvalidParametersEvent.class); FunctionTestUtil.assertResultError(durationFunction.invoke("test P2Y3D"), InvalidParametersEvent.class); FunctionTestUtil.assertResultError(durationFunction.invoke("P2Y3DD"), InvalidParametersEvent.class); FunctionTestUtil.assertResultError(durationFunction.invoke("P3DD"), InvalidParametersEvent.class); FunctionTestUtil.assertResultError(durationFunction.invoke("PT3HH"), InvalidParametersEvent.class); FunctionTestUtil.assertResultError(durationFunction.invoke("P2Y3M4DT3H"), InvalidParametersEvent.class); }
@Before public void setUp() { durationFunction = new DurationFunction(); }
return BuiltInFunctions.getFunction( DateAndTimeFunction.class ).invoke( value ).cata( justNull(), Function.identity() ); } else if ( feelType.equals( org.kie.dmn.feel.lang.types.BuiltInType.DURATION ) ) { return BuiltInFunctions.getFunction( DurationFunction.class ).invoke( value ).cata( justNull(), Function.identity() ); } else if ( feelType.equals( org.kie.dmn.feel.lang.types.BuiltInType.BOOLEAN ) ) { return Boolean.parseBoolean( value );
@Test public void invokeParamStringNull() { FunctionTestUtil.assertResultError(durationFunction.invoke((String) null), InvalidParametersEvent.class); }
@Test public void invokeParamTemporalAmountNull() { FunctionTestUtil.assertResultError(durationFunction.invoke((TemporalAmount) null), InvalidParametersEvent.class); }
@Test public void invokeParamStringDuration() { FunctionTestUtil.assertResult(durationFunction.invoke("P2D"), Duration.of(2, ChronoUnit.DAYS)); FunctionTestUtil.assertResult(durationFunction.invoke("P2DT3H"), Duration.of(2, ChronoUnit.DAYS).plusHours(3)); FunctionTestUtil.assertResult( durationFunction.invoke("P2DT3H28M"), Duration.of(2, ChronoUnit.DAYS).plusHours(3).plusMinutes(28)); FunctionTestUtil.assertResult( durationFunction.invoke("P2DT3H28M15S"), Duration.of(2, ChronoUnit.DAYS).plusHours(3).plusMinutes(28).plusSeconds(15)); }
@Test public void invokeParamTemporalPeriod() { FunctionTestUtil.assertResult(durationFunction.invoke(Period.parse("P2Y3M4D")), Period.of(2, 3, 4)); }
@Test public void invokeParamTemporalDuration() { FunctionTestUtil.assertResult( durationFunction.invoke(Duration.parse("P2DT3H28M15S")), Duration.of(2, ChronoUnit.DAYS).plusHours(3).plusMinutes(28).plusSeconds(15)); }