package net.jsunit.model; import net.jsunit.utility.FileUtility; import java.io.File; public class DummyTestPageWriter { public static final String REFERENCED_JS_FILE_1_CONTENTS = "function myFunction1() {return 2;}"; public static final String REFERENCED_JS_FILE_2_CONTENTS = "function myFunction2() {return \"foo\";}"; private String directory; private String testPageFileName; private String filenamePrefix; public DummyTestPageWriter(String directory, String testPageFileName, String referencedJsFilePrefix) { this.directory = directory; this.testPageFileName = testPageFileName; this.filenamePrefix = referencedJsFilePrefix; } public DummyTestPageWriter(String directory, String testPageFilename) { this(directory, testPageFilename, ""); } public String generateTestPageContents() { return "<html>\r\n" + "<head>\r\n" + "<script language=\"javascript\" src=\".." + File.separator + "app" + File.separator + "jsUnitCore.js\"></script>\r\n" + "<script language=\"javascript\" src=\"." + File.separator + "a" + File.separator + "b" + File.separator + filenamePrefix + "file1.js\"></script>\r\n" + "<script language=\"javascript\" src=\"." + File.separator + "a" + File.separator + "b" + File.separator + "c" + File.separator + filenamePrefix + "file2.js\"></script>\r\n" + "<script language=\"javascript\">\r\n" + "function testSimple1() {\r\n" + " assertEquals(2, myFunction1());\r\n" + "}\r\n" + "function testSimple2() {\r\n" + " assertEquals(\"foo\", myFunction2());\r\n" + "}\r\n" + "</script>\r\n" + "</head>\r\n" + "</html>"; } public void writeFiles() { new File(".", directory + File.separator + "a" + File.separator + "b" + File.separator + "c").mkdirs(); FileUtility.write(new File(directory + File.separator + filenamePrefix + testPageFileName), generateTestPageContents()); FileUtility.write(new File(directory + File.separator + "a" + File.separator + "b", filenamePrefix + "file1.js"), REFERENCED_JS_FILE_1_CONTENTS); FileUtility.write(new File(directory + File.separator + "a" + File.separator + "b" + File.separator + "c", filenamePrefix + "file2.js"), REFERENCED_JS_FILE_2_CONTENTS); } public void removeFiles() { FileUtility.deleteDirectoryAndContents(directory); } }