<?xml version="1.0" ?>

<!DOCTYPE testcases [
  <!ELEMENT testcases (config*, testcase*)>
  <!ELEMENT testcase (config*)>
     <!ATTLIST testcase 
               name CDATA #REQUIRED
               template CDATA #IMPLIED
               expected CDATA #IMPLIED
               nooutput CDATA #IMPLIED
               class CDATA #IMPLIED
     >
     <!-- The default of "template" is "${name}.ftl" -->
     <!-- The default of "expected" is "${name}.txt" -->
     
 <!ELEMENT config EMPTY>
     <!ATTLIST config 
            auto_import CDATA #IMPLIED
            classic_compatible (Y|N|2) #IMPLIED
            clear_encoding_map (Y|N) #IMPLIED
            input_encoding CDATA #IMPLIED
            locale CDATA #IMPLIED
            object_wrapper CDATA #IMPLIED
            output_encoding CDATA #IMPLIED
            output_dir CDATA #IMPLIED
            strict_syntax (Y|N) #IMPLIED
            new_builtin_class_resolver CDATA #IMPLIED
            url_escaping_charset CDATA #IMPLIED
            incompatible_improvements CDATA #IMPLIED
      >
]>

<testcases>
   <config input_encoding="UTF-8" output_encoding="UTF-8" />
   
   <testcase name="arithmetic" />
   <testcase name="bean-maps"/>
   <testcase name="beans">
      <config object_wrapper="freemarker.ext.beans.BeansWrapper"/>
   </testcase>
   <testcase name="boolean" />
   <testcase name="charset-in-header">
      <config clear_encoding_map="Y"/>
      <config input_encoding="ISO-8859-5"/>
   </testcase>
   <testcase name="comment" />
   <testcase name="comparisons" />
   <testcase name="dateformat" />
   <testcase name="default"/>
   <testcase name="default-xmlns">
      <config object_wrapper="freemarker.ext.beans.BeansWrapper"/>
   </testcase>
   <testcase name="encoding-builtins" />
   <testcase name="escapes" />
   <testcase name="hashliteral" />
   <testcase name="identifier" >
      <config strict_syntax="N" />
   </testcase>
   <testcase name="import">
      <config auto_import="import_lib.ftl as my"/>
   </testcase>
   <testcase name="include" />
   <testcase name="interpret"/>
   <testcase name="iterators"/>
   <testcase name="lastcharacter"/>
   <testcase name="list" />
   <testcase name="listliteral" />
   <testcase name="localization" >
      <config locale="en_AU"/>
   </testcase>
   <testcase name="loopvariable" />
   <testcase name="macros"/>
   <testcase name="macros2"/>
   <testcase name="multimodels"/>
   <testcase name="nested" />
   <testcase name="newlines1" />
   <testcase name="newlines2" />
   <testcase name="noparse" />
   <testcase name="number-format" />
   <testcase name="number-literal" >
      <config locale="fr_FR"/>
   </testcase>
   <testcase name="numerical-cast" />
   <testcase name="output-encoding1"/>
   <testcase name="output-encoding2">
       <config output_encoding="UTF-16"/>
   </testcase>
   <testcase name="output-encoding3">
       <config output_encoding="ISO-8859-1" url_escaping_charset="UTF-16" />
       
   </testcase>
   <testcase name="precedence"/>
   <testcase name="recover" />
   <testcase name="root" />
   <testcase name="sequence-builtins-with-BeansWrapper" template="sequence-builtins.ftl" expected="sequence-builtins.txt">
      <config object_wrapper="freemarker.ext.beans.BeansWrapper"/> 
   </testcase>
   <testcase name="sequence-builtins-with-DefaultObjectWrapper" template="sequence-builtins.ftl" expected="sequence-builtins.txt">
      <config object_wrapper="freemarker.template.DefaultObjectWrapper"/> 
   </testcase>
   <testcase name="sequence-builtins-with-SimpleObjectWrapper" template="sequence-builtins.ftl" expected="sequence-builtins.txt">
      <config object_wrapper="freemarker.template.SimpleObjectWrapper"/> 
   </testcase>
   <testcase name="strictinheader">
      <config strict_syntax="N"/>
   </testcase>
   <testcase name="existence-operators" nooutput="true" />
   <testcase name="string-builtins1" />
   <testcase name="string-builtins2" />
   <testcase name="string-builtins-regexps" />
   <testcase name="stringbimethods" />
   <testcase name="stringliteral"/>
   <testcase name="if" />
   <testcase name="switch" />
   <testcase name="transforms"/>
   <testcase name="type-builtins"/>
   <testcase name="var-layers"/>
   <testcase name="variables"/>
   <testcase name="whitespace-trim"/>
   <testcase name="wstrip-in-header"/>
   <testcase name="xml-fragment">
      <config object_wrapper="freemarker.ext.beans.BeansWrapper"/> 
   </testcase>
   <testcase name="xmlns1">
      <config object_wrapper="freemarker.ext.beans.BeansWrapper"/>
   </testcase>
   <testcase name="xmlns2" template="xmlns1.ftl"  expected="xmlns1.txt" />
   <testcase name="xmlns3">
      <config object_wrapper="freemarker.ext.beans.BeansWrapper"/>
   </testcase>   
   <testcase name="xmlns4">
      <config object_wrapper="freemarker.ext.beans.BeansWrapper"/>
   </testcase>   
   <testcase name="xmlns5">
      <config object_wrapper="freemarker.ext.beans.BeansWrapper"/>
   </testcase>   
   <testcase name="hashconcat"/>
   <testcase name="new-defaultresolver" />
   <testcase name="new-unrestricted">
      <config new_builtin_class_resolver="unrestricted"/>
   </testcase>   
   <testcase name="new-safer">
      <config new_builtin_class_resolver="safer"/>
   </testcase>   
   <testcase name="new-allowsnothing">
      <config new_builtin_class_resolver="allows_nothing"/>
   </testcase>   
   <testcase name="new-optin">
      <config new_builtin_class_resolver="
      		allowed_classes: freemarker.test.templatesuite.models.NewTestModel,
      		trusted_templates: subdir/new-optin.ftl, subdir/subsub/*"
      />
   </testcase>   
   <testcase name="specialvars">
      <config locale="en_US"/>
      <config output_encoding="utf-8"/>
      <config url_escaping_charset="iso-8859-1"/>
   </testcase>   
   <testcase name="iso8601" />
   <testcase name="number-to-date" />
   <testcase name="varargs" />
   <testcase name="overloaded-methods-23bc" nooutput="true" />
   <testcase name="classic-compatible">
      <config classic_compatible="Y"/>
   </testcase>   
   <testcase name="classic-compatible-mode2" nooutput="true">
      <config classic_compatible="2"/>
   </testcase>   
   <testcase name="boolean-formatting"  />
   <testcase name="number-math-builtins" nooutput="true" />
   <testcase name="string-builtin-coercion" nooutput="true" />
   <testcase name="string-builtins-ici-2.3.20" nooutput="true">
      <config incompatible_improvements="2.3.20"/>
   </testcase>
   <testcase name="string-builtins-ici-2.3.19" nooutput="true">
      <config incompatible_improvements="2.3.19"/>
   </testcase>
   <testcase name="overloaded-methods-2-inc-ici-2.3.20" nooutput="true">
      <config object_wrapper="freemarker.ext.beans.BeansWrapperInc2003020"/>
   </testcase>
   <testcase name="overloaded-methods-2-desc-ici-2.3.20" nooutput="true">
      <config object_wrapper="freemarker.ext.beans.BeansWrapperDesc2003020"/>
   </testcase>
</testcases>
