locations.addSourceFile("testPackage/PropertiesTest.properties");
locations.addSourceFile("testPackage/PropertiesTest_de.properties");
locations.addSourceFile("testPackage/PropertiesTest_es_ES.properties");
locations.addSourceFile("testPackage/PropertiesTest_it_VA_WIN.properties");
PropertyClassGenerator generator = new PropertyClassGenerator(locations);
StringWriter writer = new StringWriter();
ResourceBundleClass rbc = new ResourceBundleClass("testPackage.PropertiesTest");
PropertiesConfiguration p = new PropertiesConfiguration();
p.setProperty("key", "Die Platte \"{1}\" enthält {0}.");
p.setProperty("key2", "Die Platte \"{1}\" enthält {0}.");
PropertiesClass pc = new PropertiesClass(rbc, null,p, null);
generator.generatePropertiesClass(pc, writer);
assertEquals(("package testPackage {\n" +
"import joo.ResourceBundleAwareClassLoader;\n" +
"import joo.JavaScriptObject;\n" +
"\n" +
"/**\n" +
" * Properties class for ResourceBundle \"PropertiesTest\".\n" +
" * @see PropertiesTest_properties#INSTANCE\n" +
" */\n" +
"[ResourceBundle('PropertiesTest')]\n" +
"public class PropertiesTest_properties extends joo.JavaScriptObject {\n" +
"\n" +
"/**\n" +
" * Singleton for the current user Locale's instance of ResourceBundle \"PropertiesTest\".\n" +
" * @see PropertiesTest_properties\n" +
" */\n" +
"public static const INSTANCE:PropertiesTest_properties = ResourceBundleAwareClassLoader.INSTANCE.createSingleton(PropertiesTest_properties) as PropertiesTest_properties;\n" +
"\n" +
"[Resource(key='key',bundle='PropertiesTest')]\n" +
"public native function get key():String;\n" +
"[Resource(key='key2',bundle='PropertiesTest')]\n" +
"public native function get key2():String;\n" +
"\n" +
"public function PropertiesTest_properties() {\n" +
" this[\"key\"] = \"Die Platte \\\"{1}\\\" enthält {0}.\";\n" +
" this[\"key2\"] = \"Die Platte \\\"{1}\\\" enthält {0}.\";\n" +
"}\n" +
"}\n" +
"}").replaceAll("\n", LINE_SEPARATOR), writer.toString());
PropertiesClass psc = new PropertiesClass(rbc, Locale.ENGLISH,p, null);
writer = new StringWriter();
generator.generatePropertiesClass(psc, writer);
assertEquals(("package testPackage {\n" +
"\n" +
"/**\n" +
" * Properties class for ResourceBundle \"PropertiesTest\" and Locale \"en\".\n" +
" * @see PropertiesTest_properties#INSTANCE\n" +