-/*
- * Created on Jul 31, 2004
+/*************************************************************************
+ * @author Ali Echihabi (ali_echihabi@ieee.org, ali.echihabi@souss.ca)
*
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
+ * Plugin for PHP unit Testing.
+ * www.phpeclipse.de
+ *
+ *************************************************************************/
+
package net.sourceforge.phpeclipse.phpunit.testpool;
import java.util.Vector;
-/**
- * @author Ali Echihabi
- *
- * To change the template for this generated type comment go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
public class TestSuite {
+ private boolean hasFailure;
+
+ private boolean isAllPass;
+ private boolean hasError;
private Vector testCases; // current or actual.
+
private Vector testSuites; // current or actual.
+
private String name;
+
private String id;
- private int numTestCasesExpected; //expected
+
+ private int numTestCasesExpected; // expected
+
private int numTestCasesRunSoFar;
- TestSuite parent;
- /**
- * @param name
- * @param testID
- * @param testCount
- */
- public TestSuite(String name, String testID, int testCount) {
-
- this.parent = null;
- this.id = testID;
- this.name = name;
- this.numTestCasesExpected = testCount;
-
- testCases = new Vector();
- testSuites = new Vector();
-
- }
+ TestSuite parent;
/**
* @param name
* @param testCount
*/
public TestSuite(TestSuite parent, String name, String testID, int testCount) {
-
+
this.parent = parent;
this.id = testID;
this.name = name;
this.numTestCasesExpected = testCount;
-
+
testCases = new Vector();
testSuites = new Vector();
+
+ hasError = false;
+ isAllPass = true;
+ hasFailure = false;
}
-
+
public void addTestCase(TestCase test) {
testCases.addElement(test);
test.setParentSuite(this);
numTestCasesRunSoFar++;
}
-
- public void removeTestCase(TestCase test) {}
-
+
+ public void removeTestCase(TestCase test) {
+ }
+
public boolean contains(TestCase test) {
-
+
return false;
-
+
}
-
+
public String toString() {
-
+
String string = "";
-
- //print test cases.
+
+ // print test cases.
TestCase tc = null;
- for(int i = 0; i < testCases.size(); i++) {
-
+ for (int i = 0; i < testCases.size(); i++) {
+
tc = (TestCase) testCases.elementAt(i);
string += " - " + tc.getTestID() + ", " + tc.getTestName() + "\n";
-
-
+
}
-
- for(int i = 0; i < testSuites.size(); i++)
+
+ for (int i = 0; i < testSuites.size(); i++)
string += ((TestSuite) testSuites.elementAt(i)).toString();
-
- //print its own test suites.
+
+ // print its own test suites.
return string;
}
*/
public void addTestSuite(TestSuite suite) {
testSuites.addElement(suite);
-
+
}
/**
* @return
*/
public boolean isFinished() {
-
+
return numTestCasesRunSoFar >= numTestCasesExpected;
-
+
}
/**
* @return
*/
public int getNumTestCases() {
-
+
return testCases.size();
}
testSuites = vector;
}
+ /**
+ * @return
+ */
+ public boolean hasError() {
+
+ return hasError;
+
+ }
+
+ public void setHasError() {
+
+ if (hasError)
+ return;
+
+ hasError = true;
+
+ if (parent != null)
+ parent.setHasError();
+ }
+
+ /**
+ * @return
+ */
+ public boolean hasFailure() {
+
+ return hasFailure;
+
+ }
+
+ public void setHasFailure() {
+
+ if (hasFailure)
+ return;
+
+ hasFailure = true;
+
+ if (parent != null)
+ parent.setHasFailure();
+ }
+
+ public boolean isAllPass() {
+
+ return !hasError() && !hasFailure();
+
+ }
}