Skip to content

Commit

Permalink
#236: Improved test coverage for CurrentIteration.
Browse files Browse the repository at this point in the history
  • Loading branch information
jvdb committed Jul 18, 2018
1 parent c3c961e commit cab9c3e
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@
import io.parsingdata.metal.expression.value.bitwise.ShiftLeft;
import io.parsingdata.metal.expression.value.bitwise.ShiftRight;
import io.parsingdata.metal.expression.value.reference.Count;
import io.parsingdata.metal.expression.value.reference.CurrentIteration;
import io.parsingdata.metal.expression.value.reference.CurrentOffset;
import io.parsingdata.metal.expression.value.reference.First;
import io.parsingdata.metal.expression.value.reference.Last;
Expand Down Expand Up @@ -191,7 +192,7 @@ public static Collection<Object[]> data() throws IllegalAccessException, Invocat
And.class, Or.class, ShiftLeft.class, ShiftRight.class, Add.class, Div.class, Mod.class, Mul.class,
io.parsingdata.metal.expression.value.arithmetic.Sub.class, Cat.class, Nth.class, Elvis.class,
FoldLeft.class, FoldRight.class, Const.class, Expand.class, Bytes.class, CurrentOffset.class,
FoldCat.class,
FoldCat.class, CurrentIteration.class,
// Expressions
Eq.class, EqNum.class, EqStr.class, GtEqNum.class, GtNum.class, LtEqNum.class, LtNum.class,
io.parsingdata.metal.expression.logical.And.class, io.parsingdata.metal.expression.logical.Or.class,
Expand Down
5 changes: 4 additions & 1 deletion core/src/test/java/io/parsingdata/metal/ToStringTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;

import static io.parsingdata.metal.Shorthand.CURRENT_ITERATION;
import static io.parsingdata.metal.Shorthand.CURRENT_OFFSET;
import static io.parsingdata.metal.Shorthand.SELF;
import static io.parsingdata.metal.Shorthand.add;
Expand Down Expand Up @@ -121,7 +122,7 @@ private Token t() {
}

private ValueExpression v() {
return fold(foldLeft(foldRight(rev(bytes(neg(add(div(mod(mul(sub(cat(last(ref(n()))), first(nth(exp(ref(n()), con(1)), con(1)))), con(1)), cat(ref(n()), ref(t()))), add(SELF, add(offset(ref(n())), add(CURRENT_OFFSET, count(ref(n())))))), elvis(ref(n()), ref(n())))))), Shorthand::add, ref(n())), Shorthand::add), Shorthand::add, ref(n()));
return fold(foldLeft(foldRight(rev(bytes(neg(add(div(mod(mul(sub(cat(last(ref(n()))), first(nth(exp(ref(n()), con(1)), con(1)))), sub(CURRENT_ITERATION, con(1))), cat(ref(n()), ref(t()))), add(SELF, add(offset(ref(n())), add(CURRENT_OFFSET, count(ref(n())))))), elvis(ref(n()), ref(n())))))), Shorthand::add, ref(n())), Shorthand::add), Shorthand::add, ref(n()));
}

@Test
Expand All @@ -148,6 +149,8 @@ public void specialExpressions() {
assertEquals("Self", SELF.toString());
assertTrue(v().toString().contains("CurrentOffset"));
assertEquals("CurrentOffset", CURRENT_OFFSET.toString());
assertTrue(v().toString().contains("CurrentIteration"));
assertEquals("CurrentIteration", CURRENT_ITERATION.toString());
}

@Test
Expand Down

0 comments on commit cab9c3e

Please sign in to comment.