diff --git a/core/src/test/java/io/parsingdata/metal/expression/value/reference/CurrentIterationTest.java b/core/src/test/java/io/parsingdata/metal/expression/value/reference/CurrentIterationTest.java index fcad3d86..9f7e6e92 100644 --- a/core/src/test/java/io/parsingdata/metal/expression/value/reference/CurrentIterationTest.java +++ b/core/src/test/java/io/parsingdata/metal/expression/value/reference/CurrentIterationTest.java @@ -39,6 +39,7 @@ public class CurrentIterationTest extends ParameterizedParse { public static final Token VALUE_EQ_ITERATION = def("value", con(1), eq(CURRENT_ITERATION)); + public static final Token VALUE_NOT_EQ_ITERATION = def("value", con(1), not(eq(CURRENT_ITERATION))); public static final Token VALUE_EQ_255 = def("value", con(1), eq(con(255))); @Parameterized.Parameters(name="{0} ({4})") @@ -48,8 +49,10 @@ public static Collection data() { { "[0, 1, 2, 3] repn=4(CURRENT_ITERATION)", repn(VALUE_EQ_ITERATION, con(4)), stream(0, 1, 2, 3), enc(), true }, { "[255, 0, 1, 2, 3, 255] def(255), while<3(CURRENT_ITERATION), def (255)", seq(VALUE_EQ_255, whl(VALUE_EQ_ITERATION, not(eq(con(3)))), VALUE_EQ_255), stream(255, 0, 1, 2, 3, 255), enc(), true }, { "[0, 0, 1, 2, 1, 0, 1, 2] repn=2(CURRENT_ITERATION, repn=3(CURRENT_ITERATION))", repn(seq(VALUE_EQ_ITERATION, repn(VALUE_EQ_ITERATION, con(3))), con(2)), stream(0, 0, 1, 2, 1, 0, 1, 2), enc(), true }, - { "[0, 0] seq(CURRENT_ITERATION, ...)", seq(VALUE_EQ_ITERATION, VALUE_EQ_ITERATION), stream(0, 0), enc(), false }, - { "[0] CURRENT_ITERATION", VALUE_EQ_ITERATION, stream(0), enc(), false } + { "[0, 1] seq(CURRENT_ITERATION, ...)", seq(VALUE_EQ_ITERATION, VALUE_EQ_ITERATION), stream(0, 1), enc(), false }, + { "[0] CURRENT_ITERATION", VALUE_EQ_ITERATION, stream(0), enc(), false }, + { "[0, 1] seq(!CURRENT_ITERATION, ...)", seq(VALUE_NOT_EQ_ITERATION, VALUE_NOT_EQ_ITERATION), stream(0, 1), enc(), true }, + { "[0] !CURRENT_ITERATION", VALUE_NOT_EQ_ITERATION, stream(0), enc(), true } }); }