package com.hubspot.jinjava.lib.exptest; import com.hubspot.jinjava.doc.annotations.JinjavaDoc; import com.hubspot.jinjava.doc.annotations.JinjavaParam; import com.hubspot.jinjava.doc.annotations.JinjavaSnippet; import com.hubspot.jinjava.interpret.JinjavaInterpreter; import com.hubspot.jinjava.objects.SafeString; import org.apache.commons.lang3.StringUtils; @JinjavaDoc( value = "Return true if string is all uppercased", input = @JinjavaParam(value = "value", type = "string", required = true), snippets = { @JinjavaSnippet( code = "{% if variable is upper %}\n" + " <!-- code to render if variable value is uppercased -->\n" + "{% endif %}" ) } ) public class IsUpperExpTest implements ExpTest { @Override public String getName() { return "upper"; } @Override public boolean evaluate(Object var, JinjavaInterpreter interpreter, Object... args) { if (!(var instanceof String || var instanceof SafeString)) { return false; } return StringUtils.isAllUpperCase(var.toString()); } }