import org.cacert.gigi.dbObjects.Digest;
import org.cacert.gigi.localisation.Language;
-import org.cacert.gigi.output.Outputable;
-import org.cacert.gigi.output.template.HashAlgorithms;
+import org.cacert.gigi.output.HashAlgorithms;
import org.cacert.gigi.output.template.IterableDataset;
+import org.cacert.gigi.output.template.Outputable;
import org.cacert.gigi.output.template.OutputableArrayIterable;
import org.cacert.gigi.output.template.Template;
import org.junit.Test;
assertEquals("This val\"> val3<\" the val4> textl", testExecute(Language.getInstance(Locale.ENGLISH), vars, "<?=s,$!var,$!var2,$!var3,This %s %s the %s text?>l"));
assertEquals("This blargh<>!, <>! textl", testExecute(Language.getInstance(Locale.ENGLISH), vars, "<?=s,\"blargh<>!\",!\"<>!\",This %s, %s text?>l"));
+ assertEquals("This blargh<>!, <>!l", testExecute(Language.getInstance(Locale.ENGLISH), vars, "<?=s,\"blargh<>!\",!\"<>!\",This %s, %s?>l"));
}
@Test
}
+ @Test
+ public void testInvalidBracketContent() {
+ try {
+ assertEquals("", testExecute(Language.getInstance(Locale.ENGLISH), vars, "<? } ?>"));
+ fail("should throw an error");
+ } catch (Error e) {
+
+ }
+ }
+
+ @Test
+ public void testIfElse() {
+ vars.put("b", Boolean.TRUE);
+ assertEquals("true", testExecute(Language.getInstance(Locale.ENGLISH), vars, "<? if($b){ ?>true<? } else{?>false<?}?>"));
+ vars.put("b", Boolean.FALSE);
+ assertEquals("false", testExecute(Language.getInstance(Locale.ENGLISH), vars, "<? if($b){ ?>true<? } else{?>false<?}?>"));
+
+ vars.put("b", new Object());
+ assertEquals("true", testExecute(Language.getInstance(Locale.ENGLISH), vars, "<? if($b){ ?>true<? } else{?>false<?}?>"));
+ vars.put("b", null);
+ assertEquals("false", testExecute(Language.getInstance(Locale.ENGLISH), vars, "<? if($b){ ?>true<? } else{?>false<?}?>"));
+ }
}