@Test public void testEscapeSolrQueryFunction() { final VariableResolverImpl resolver = new VariableResolverImpl(); ContextImpl context = new ContextImpl(null, resolver, null, Context.FULL_DUMP, Collections.EMPTY_MAP, null, null); Context.CURRENT_CONTEXT.set(context); try { Map m = new HashMap(); m.put("query", "c:t"); resolver.addNamespace( "dataimporter.functions", EvaluatorBag.getFunctionsNamespace(Collections.EMPTY_LIST, null)); resolver.addNamespace("e", m); String s = resolver.replaceTokens("${dataimporter.functions.escapeQueryChars(e.query)}"); org.junit.Assert.assertEquals("c\\:t", s); } finally { Context.CURRENT_CONTEXT.remove(); } }