X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.phpunit/src/net/sourceforge/phpeclipse/phpunit/PHPUnitView.java b/net.sourceforge.phpeclipse.phpunit/src/net/sourceforge/phpeclipse/phpunit/PHPUnitView.java index 656610d..e304352 100644 --- a/net.sourceforge.phpeclipse.phpunit/src/net/sourceforge/phpeclipse/phpunit/PHPUnitView.java +++ b/net.sourceforge.phpeclipse.phpunit/src/net/sourceforge/phpeclipse/phpunit/PHPUnitView.java @@ -6,8 +6,6 @@ import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; import net.sourceforge.phpeclipse.phpunit.testpool.TestCase; import net.sourceforge.phpeclipse.phpunit.testpool.TestPool; @@ -15,19 +13,11 @@ import net.sourceforge.phpeclipse.phpunit.testpool.TestSuite; import org.eclipse.jface.action.Action; import org.eclipse.jface.action.IToolBarManager; -import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.MouseEvent; -import org.eclipse.swt.events.MouseListener; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.FileDialog; import org.eclipse.ui.IActionBars; -import org.eclipse.ui.ISharedImages; -import org.eclipse.ui.IViewSite; -import org.eclipse.ui.PartInitException; -import org.eclipse.ui.PlatformUI; import org.eclipse.ui.part.ViewPart; /** @@ -77,14 +67,18 @@ public class PHPUnitView extends ViewPart { private ProgressInfoComposite progressInfoComposite; private ResultsInfoComposite resultsInfoComposite; - private SettingsInfoComposite settingsInfoComposite; //TODO: move somewhere else, launcher, wizard or preferences. - + //private SettingsInfoComposite settingsInfoComposite; //TODO: move somewhere else, launcher, wizard or preferences. + private FileDialog dialog; + + private String testSuiteToRun = ""; public PHPUnitView() { if(view == null) view = this; + + } @@ -98,6 +92,8 @@ public class PHPUnitView extends ViewPart { //parent.setLayout(new FillLayout(SWT.VERTICAL)); + dialog = new FileDialog(parent.getShell()); + GridLayout gridLayout = new GridLayout(); gridLayout.numColumns = 1; @@ -121,7 +117,7 @@ public class PHPUnitView extends ViewPart { //build the settings composite //buildSettingsComposite(parent); - settingsInfoComposite = new SettingsInfoComposite(parent, SWT.NONE); + //settingsInfoComposite = new SettingsInfoComposite(parent, SWT.NONE); // startButton = new Button(parent, SWT.CENTER); @@ -183,28 +179,17 @@ public class PHPUnitView extends ViewPart { final IActionBars actionBars = getViewSite().getActionBars(); IToolBarManager toolBarManager = actionBars.getToolBarManager(); - String iconsPath = "C:\\Documents and Settings\\Ali Echihabi\\My Documents\\workspace.eclipse2.1\\net.sourceforge.phpeclipse.phpunit\\icons"; - - ImageDescriptor descriptor = null; - String icon = ""; - Action selectTestAction = new Action() { public void run() { - settingsInfoComposite.showFileDialog(); + testSuiteToRun = dialog.open(); } }; + selectTestAction.setText("Select Test Suite"); - selectTestAction.setToolTipText("Select Test Suite"); - try { - icon = "tsuite.gif"; - descriptor = ImageDescriptor.createFromURL(new URL("file://" + iconsPath + "//" + icon)); - selectTestAction.setImageDescriptor(descriptor); - } catch (MalformedURLException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + selectTestAction.setToolTipText("Select Test Suite"); + selectTestAction.setImageDescriptor(PHPUnitImages.DESC_SELECT_TEST_SUITE); toolBarManager.add(selectTestAction); @@ -214,9 +199,12 @@ public class PHPUnitView extends ViewPart { public void run() { - String testFile = settingsInfoComposite.getTestSuite(); + try { - startTests(testFile); + if(testSuiteToRun == null || testSuiteToRun == "") + return; + + startTests(testSuiteToRun); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -225,18 +213,11 @@ public class PHPUnitView extends ViewPart { } }; + startTestAction.setText("Start Test"); startTestAction.setToolTipText("Start Test Suite"); - - try { - icon = "start.gif"; - descriptor = ImageDescriptor.createFromURL(new URL("file://" + iconsPath + "//" + icon)); - startTestAction.setImageDescriptor(descriptor); - } catch (MalformedURLException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - + startTestAction.setImageDescriptor(PHPUnitImages.DESC_RUN_TEST_SUITE); + toolBarManager.add(startTestAction); } @@ -272,29 +253,7 @@ public class PHPUnitView extends ViewPart { } - // action to start tests: - public void startTests() throws IOException { -// // preparation: -// // take the full test suite (could containt other test suites). -// // create temp php file that starts that suite and uses socketTestReport -// // as a test result reporter. -// // add listener: localhost , port 13579 -// // start listening at port. -// -// testPool = new TestPool("RUN MONDAY 11:15 PM"); -// listenForReports(); -// -// try { -// Runtime.getRuntime().exec("php.exe \"C:/Program Files/Apache Group/Apache2/htdocs/phpUnit/suite.php\""); -// } catch (Exception e) { -// -// e.printStackTrace(); -// } - - startTests("C:/Program Files/Apache Group/Apache2/htdocs/phpUnit/suite.php"); - - } public void startTests(String testSuite) throws IOException { @@ -318,7 +277,11 @@ public class PHPUnitView extends ViewPart { BufferedWriter out = new BufferedWriter(new FileWriter(testFile)); out.write("addTest(new TestSuite(\"" + testSuiteName + "\"));" + "\n"); - - - //out.write("$suite->addTest(new TestSuite(\"MoreTesterTests\"));" + "\n"); - //out.write("$suite->addTest(new TestSuite(\"ManyFailingTests\"));" + "\n"); - //out.write("$suite->addTest(new TestSuite(\"AssertEqualsTests\"));" + "\n"); - out.write("$result = new SocketTestResult();" + "\n"); out.write("$suite->run($result);" + "\n"); out.write("$result->report(); " + "\n"); @@ -349,6 +306,12 @@ public class PHPUnitView extends ViewPart { out.write("" + "\n"); out.write("" + "\n"); + out.write("$output = ob_get_contents();" + "\n"); + out.write("$fileHandle = fopen('c:/tmp/phpOut.txt');" + "\n"); + out.write("fclose($fileHandle);" + "\n"); + + + out.write("ob_end();" + "\n"); out.write("?>" + "\n"); out.flush(); @@ -408,10 +371,8 @@ public class PHPUnitView extends ViewPart { * @param testID */ public void handleCommand( - String command, - String testCount, - String testID) { - + String command, String[] args) { + if (command.equals("startAll")) { @@ -420,13 +381,21 @@ public class PHPUnitView extends ViewPart { } else if (command.equals("testSuiteStarted")) { + String testID = args[0]; + String testCount = args[1]; + //createNewTestSuite("TestSuiteName: " + testID, testID, new Integer(testCount).intValue()); - TestSuite suite = new TestSuite("TestSuiteName: " + testID, testID, new Integer(testCount).intValue()); + TestSuite suite = new TestSuite(null, "TestSuiteName: " + testID, testID, new Integer(testCount).intValue()); testPool.addTestSuite(suite); } else if (command.equals("testStarted")) { - testPool.addTest(new TestCase("TestName: " + testID, testID)); + String testID = args[0]; + String testCount = args[1]; + String testName = args[2]; + String parentTestSuiteName = args[3]; + + testPool.addTest(new TestCase(testID, testName, parentTestSuiteName)); } else if (command.equals("testFINISHED")) { @@ -481,4 +450,6 @@ public class PHPUnitView extends ViewPart { } + + } //end of class