Index: development/netbeans/retouche_main_trunk/openide/templates/test/unit/src/org/netbeans/modules/templates/SCFTHandlerTest.java =================================================================== RCS file: /cvs/openide/templates/test/unit/src/org/netbeans/modules/templates/SCFTHandlerTest.java,v retrieving revision 1.2 diff -c -r1.2 SCFTHandlerTest.java *** development/netbeans/retouche_main_trunk/openide/templates/test/unit/src/org/netbeans/modules/templates/SCFTHandlerTest.java 7 Feb 2007 10:02:53 -0000 1.2 --- development/netbeans/retouche_main_trunk/openide/templates/test/unit/src/org/netbeans/modules/templates/SCFTHandlerTest.java 15 Mar 2007 16:08:19 -0000 *************** *** 91,96 **** --- 91,127 ---- } + public void testCreateFromTemplateUsingFreemarkerAndInclude() throws Exception { + FileObject root = FileUtil.createMemoryFileSystem().getRoot(); + FileObject fclasses = FileUtil.createFolder(root, "classes"); + FileObject fincludes = FileUtil.createFolder(root, "includes"); + FileObject fclass = FileUtil.createData(fclasses, "class.txt"); + OutputStream os = fclass.getOutputStream(); + String classtxt = "<#include \"../includes/include.txt\">"; + os.write(classtxt.getBytes()); + os.close(); + fclass.setAttribute("javax.script.ScriptEngine", "freemarker"); + FileObject finclude = FileUtil.createData(fincludes, "include.txt"); + os = finclude.getOutputStream(); + String includetxt = "

${title}

"; + os.write(includetxt.getBytes()); + os.close(); + + + DataObject obj = DataObject.find(fclass); + + DataFolder folder = DataFolder.findFolder(FileUtil.createFolder(root, "target")); + + Map parameters = Collections.singletonMap("title", "Nazdar"); + DataObject n = obj.createFromTemplate(folder, "complex", parameters); + + assertEquals("Created in right place", folder, n.getFolder()); + assertEquals("Created with right name", "complex.txt", n.getName()); + + String exp = "

Nazdar

"; + assertEquals(exp, readFile(n.getPrimaryFile())); + + } public void testBasePropertiesAlwaysPresent() throws Exception { FileObject root = FileUtil.createMemoryFileSystem().getRoot();