Skip to content

Commit 55efe03

Browse files
author
Nathaniel Pautzke
committed
add additional tests for choice deferred functionality
1 parent 2ee9c94 commit 55efe03

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

src/test/java/com/hubspot/jinjava/el/ext/eager/EagerAstChoiceTest.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.hubspot.jinjava.el.ext.eager;
22

3+
import static org.junit.Assert.assertEquals;
34
import static org.junit.Assert.fail;
45

56
import com.hubspot.jinjava.BaseInterpretingTest;
@@ -90,4 +91,28 @@ public void itDoesNotShortCircuitsChoiceNo() {
9091
Assertions.assertThat(e.getDeferredEvalResult()).isEqualTo("deferred");
9192
}
9293
}
94+
95+
@Test
96+
public void itResolvesChoiceYes() {
97+
interpreter.getContext().put("bar", "bar val");
98+
interpreter.resolveELExpression(
99+
"foo_list[0] == 'val' ? foo_list.add(bar) : deferred",
100+
-1
101+
);
102+
PyList result = (PyList) interpreter.getContext().get("foo_list");
103+
assertEquals(result.size(), 2);
104+
assertEquals(result.get(1), "bar val");
105+
}
106+
107+
@Test
108+
public void itResolvesChoiceNo() {
109+
interpreter.getContext().put("bar", "bar val");
110+
interpreter.resolveELExpression(
111+
"foo_list[0] == 'bar' ? deferred : foo_list.add(bar)",
112+
-1
113+
);
114+
PyList result = (PyList) interpreter.getContext().get("foo_list");
115+
assertEquals(result.size(), 2);
116+
assertEquals(result.get(1), "bar val");
117+
}
93118
}

0 commit comments

Comments
 (0)