package net.jsunit.model; import junit.framework.TestCase; import net.jsunit.utility.StringUtility; import java.io.FileNotFoundException; public class FailedToLaunchBrowserResultTest extends TestCase { private Throwable exception = new FileNotFoundException(); private String xml = "<browserResult failedToLaunch=\"true\">" + "<properties>" + "<property name=\"browserFileName\" value=\"c:\\Program Files\\Internet Explorer\\iexplore.exe\" />" + "<property name=\"browserId\" value=\"3\" />" + "<property name=\"serverSideExceptionStackTrace\"><![CDATA[" + StringUtility.stackTraceAsString(exception) + "]]></property>" + "</properties>" + "</browserResult>"; private BrowserResult result; public void setUp() throws Exception { super.setUp(); result = new BrowserResult(); result.setFailedToLaunch(); result.setBrowser(new Browser("c:\\Program Files\\Internet Explorer\\iexplore.exe", 3)); result.setServerSideException(exception); } public void testSimple() { assertEquals("c:\\Program Files\\Internet Explorer\\iexplore.exe", result.getBrowser().getFileName()); assertEquals(0d, result.getTime()); assertEquals(ResultType.FAILED_TO_LAUNCH.getDisplayString(), result.getDisplayString()); assertEquals(0, result.getTestCount()); assertEquals(ResultType.FAILED_TO_LAUNCH, result.getResultType()); assertEquals(0, result.getTestPageResults().size()); assertEquals(StringUtility.stackTraceAsString(exception), result.getServerSideExceptionStackTrace()); } public void testCompleted() { assertFalse(result.completedTestRun()); assertFalse(result.timedOut()); assertFalse(result.externallyShutDown()); assertTrue(result.failedToLaunch()); } public void testXml() { assertEquals(xml, result.asXmlFragment()); } public void testReconstituteFromXml() { BrowserResultBuilder builder = new BrowserResultBuilder(new DummyBrowserSource("c:\\Program Files\\Internet Explorer\\iexplore.exe", 3)); BrowserResult reconstitutedResult = builder.build(xml); assertEquals("c:\\Program Files\\Internet Explorer\\iexplore.exe", reconstitutedResult.getBrowser().getFileName()); assertTrue(reconstitutedResult.failedToLaunch()); assertEquals(ResultType.FAILED_TO_LAUNCH, reconstitutedResult.getResultType()); //TODO: somehow they're not quite equal //assertEquals(Utility.stackTraceAsString(exception), reconstitutedResult.getServerSideExceptionStackTrace()); } }