From 0da0e43aa5b8abda5a81c4bceec66bbe66849e52 Mon Sep 17 00:00:00 2001 From: "Erik C. Thauvin" Date: Wed, 15 Mar 2023 09:32:34 -0700 Subject: [PATCH] EncodeUrl failure for testing --- lib/src/main/java/rife/render/EncodeUrl.java | 6 +++++- lib/src/test/java/rife/render/TestEncode.java | 3 +-- lib/src/test/resources/templates/encodeUrl.html | 5 +++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/lib/src/main/java/rife/render/EncodeUrl.java b/lib/src/main/java/rife/render/EncodeUrl.java index 05e3f85..c8abe66 100644 --- a/lib/src/main/java/rife/render/EncodeUrl.java +++ b/lib/src/main/java/rife/render/EncodeUrl.java @@ -41,10 +41,14 @@ public class EncodeUrl implements ValueRenderer { */ @Override public String render(Template template, String valueId, String differentiator) { + String value; if (template.hasValueId(differentiator)) { - return StringUtils.encodeUrl(template.getValue(differentiator)); + value = template.getValue(differentiator); + } else if (template.hasAttribute(differentiator)) { + value = template.getAttribute(differentiator).toString(); } else { return ""; } + return StringUtils.encodeUrl(value); } } diff --git a/lib/src/test/java/rife/render/TestEncode.java b/lib/src/test/java/rife/render/TestEncode.java index edff752..6b580f7 100644 --- a/lib/src/test/java/rife/render/TestEncode.java +++ b/lib/src/test/java/rife/render/TestEncode.java @@ -23,11 +23,10 @@ import rife.template.TemplateFactory; import static org.assertj.core.api.Assertions.assertThat; class TestEncode { - @Disabled("Until renderer can access beans") @Test void testEncodeUrl() { var t = TemplateFactory.HTML.get("encodeUrl"); - t.setBean(new ValueBean("a test &")); + t.setAttribute("foo", "a test &"); var encodedValue = "a%20test%20%26"; assertThat(t.getContent()).isEqualTo(encodedValue + "
\n" + encodedValue); } diff --git a/lib/src/test/resources/templates/encodeUrl.html b/lib/src/test/resources/templates/encodeUrl.html index 3fbe396..cf5a5f9 100644 --- a/lib/src/test/resources/templates/encodeUrl.html +++ b/lib/src/test/resources/templates/encodeUrl.html @@ -1,2 +1,3 @@ -
-{{v render:rife.render.EncodeUrl:value/}} \ No newline at end of file +
+{{v render:rife.render.EncodeUrl:foo/}} +{{v foo/}} \ No newline at end of file