Skip to content

Commit dfcd35b

Browse files
committed
Fix setup of old test which was not properly testing any real logic
1 parent d5c198b commit dfcd35b

3 files changed

Lines changed: 26 additions & 51 deletions

File tree

src/test/java/com/hubspot/jinjava/lib/tag/eager/EagerImportTagTest.java

Lines changed: 22 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import com.hubspot.jinjava.interpret.Context;
1010
import com.hubspot.jinjava.interpret.DeferredValue;
1111
import com.hubspot.jinjava.interpret.JinjavaInterpreter;
12+
import com.hubspot.jinjava.interpret.RenderResult;
1213
import com.hubspot.jinjava.lib.filter.Filter;
1314
import com.hubspot.jinjava.lib.tag.ImportTag;
1415
import com.hubspot.jinjava.lib.tag.ImportTagTest;
@@ -22,12 +23,12 @@
2223
import com.hubspot.jinjava.loader.RelativePathResolver;
2324
import com.hubspot.jinjava.loader.ResourceLocator;
2425
import com.hubspot.jinjava.mode.EagerExecutionMode;
25-
import com.hubspot.jinjava.objects.collections.PyMap;
2626
import com.hubspot.jinjava.tree.parse.DefaultTokenScannerSymbols;
2727
import com.hubspot.jinjava.tree.parse.TagToken;
2828
import java.io.IOException;
2929
import java.nio.charset.Charset;
3030
import java.nio.charset.StandardCharsets;
31+
import java.util.HashMap;
3132
import java.util.Map;
3233
import java.util.Map.Entry;
3334
import java.util.Optional;
@@ -165,66 +166,32 @@ public void itHandlesMultiLayerAliased() {
165166
@Test
166167
@SuppressWarnings("unchecked")
167168
public void itHandlesMultiLayerAliasedAndDeferred() {
169+
setupResourceLocator();
168170
String child2Alias = "double_child";
169-
JinjavaInterpreter child = getChildInterpreter(interpreter, CONTEXT_VAR);
170-
JinjavaInterpreter child2 = getChildInterpreter(child, child2Alias);
171-
172-
child2.render("{% set foo = 'foo val' %}");
173-
child.render("{% set bar = 'bar val' %}");
174-
child2.render("{% set foo_d = deferred %}");
175-
176-
getAliasedStrategy(child2Alias, child).integrateChild(child2);
177-
getAliasedStrategy(CONTEXT_VAR, interpreter).integrateChild(child);
171+
RenderResult result = jinjava.renderForResult(
172+
"{% import 'layer-one.jinja' as context_var %}",
173+
new HashMap<>()
174+
);
178175

179-
assertThat(interpreter.getContext().get(CONTEXT_VAR)).isInstanceOf(PyMap.class);
180-
assertThat(
181-
((Map<String, Object>) interpreter.getContext().get(CONTEXT_VAR)).get(child2Alias)
182-
)
183-
.isInstanceOf(DeferredValue.class);
176+
assertThat(result.getContext().get(CONTEXT_VAR)).isInstanceOf(DeferredValue.class);
184177
assertThat(
185178
(
186-
(
187-
(Map<String, Object>) (
188-
(DeferredValue) (
189-
(Map<String, Object>) (interpreter.getContext().get(CONTEXT_VAR))
190-
).get(child2Alias)
191-
).getOriginalValue()
192-
).get("foo")
193-
)
194-
)
195-
.isEqualTo("foo val");
196-
197-
assertThat(
198-
(((Map<String, Object>) interpreter.getContext().get(CONTEXT_VAR)).get("bar"))
199-
)
200-
.isEqualTo("bar val");
201-
}
202-
203-
@Test
204-
@SuppressWarnings("unchecked")
205-
public void itHandlesMultiLayerAliasedAndNullDeferred() {
206-
String child2Alias = "double_child";
207-
JinjavaInterpreter child = getChildInterpreter(interpreter, CONTEXT_VAR);
208-
JinjavaInterpreter child2 = getChildInterpreter(child, child2Alias);
209-
210-
child2.render("{% set foo = 'foo val' %}");
211-
child.render("{% set bar = 'bar val' %}");
212-
child2.render("{% set foo_d = deferred %}");
213-
214-
getAliasedStrategy(child2Alias, child).integrateChild(child2);
215-
getAliasedStrategy(CONTEXT_VAR, interpreter).integrateChild(child);
216-
217-
assertThat(interpreter.getContext().get(CONTEXT_VAR)).isInstanceOf(PyMap.class);
218-
assertThat(
219-
((Map<String, Object>) interpreter.getContext().get(CONTEXT_VAR)).get(child2Alias)
179+
(Map<String, Object>) (
180+
(DeferredValue) result.getContext().get(CONTEXT_VAR)
181+
).getOriginalValue()
182+
).get(child2Alias)
220183
)
221184
.isInstanceOf(DeferredValue.class);
222185
assertThat(
223186
(
224187
(
225188
(Map<String, Object>) (
226189
(DeferredValue) (
227-
(Map<String, Object>) interpreter.getContext().get(CONTEXT_VAR)
190+
(
191+
(Map<String, Object>) (
192+
(DeferredValue) result.getContext().get(CONTEXT_VAR)
193+
).getOriginalValue()
194+
)
228195
).get(child2Alias)
229196
).getOriginalValue()
230197
).get("foo")
@@ -233,7 +200,11 @@ public void itHandlesMultiLayerAliasedAndNullDeferred() {
233200
.isEqualTo("foo val");
234201

235202
assertThat(
236-
(((Map<String, Object>) interpreter.getContext().get(CONTEXT_VAR)).get("bar"))
203+
(
204+
(Map<String, Object>) (
205+
(DeferredValue) result.getContext().get(CONTEXT_VAR)
206+
).getOriginalValue()
207+
).get("bar")
237208
)
238209
.isEqualTo("bar val");
239210
}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{% set bar = 'bar val' %}
2+
{% import 'layer-two.jinja' as double_child %}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{% set foo = 'foo val' %}
2+
{% set foo_d = deferred %}

0 commit comments

Comments
 (0)