com pftt2: fixing ScenarioSet isSupported bug: src/com/mostc/pftt/scenario/Scenario.java src/com/mostc/pftt/scenario/ScenarioSet.java
src/com/mostc/pftt/scenario/app/ZipDbApplication.java
| From: | Anatol Belski | Date: | Sat, 19 Oct 2013 00:30:30 +0000 |
| Subject: | com pftt2: fixing ScenarioSet isSupported bug: src/com/mostc/pftt/scenario/Scenario.java src/com/mostc/pftt/scenario/ScenarioSet.java src/com/mostc/pftt/scenario/app/ZipDbApplication.java |
||
| Groups: | php.qa | ||
| Request: | Send a blank email to php-qa+get-68341@lists.php.net to get a copy of this message | ||
Commit: 00443ccd7d12429eb88f2d76531105bcde7dc578
Author: Matt Ficken <v-mafick@microsoft.com> Fri, 18 Oct 2013 17:30:30 -0700
Parents: 9696ac26c694c0061677535fe56ee5ad41c769a4
Branches: master
Link: http://git.php.net/?p=pftt2.git;a=commitdiff;h=00443ccd7d12429eb88f2d76531105bcde7dc578
Log:
fixing ScenarioSet isSupported bug
bug if loading application scenarios and not loading mysql scenario and
running PHPT tests - #isSupported returns false for PHPT tests (caused
by ZipDbApplication)
Former-commit-id: ff9589c739c5d5f0df251f6e871a298a2a522e85
Changed paths:
M src/com/mostc/pftt/scenario/Scenario.java
M src/com/mostc/pftt/scenario/ScenarioSet.java
M src/com/mostc/pftt/scenario/app/ZipDbApplication.java
Diff:
diff --git a/src/com/mostc/pftt/scenario/Scenario.java b/src/com/mostc/pftt/scenario/Scenario.java
index 62997a0..60c0ca2 100644
--- a/src/com/mostc/pftt/scenario/Scenario.java
+++ b/src/com/mostc/pftt/scenario/Scenario.java
@@ -51,7 +51,7 @@ public abstract class Scenario {
return getClass();
}
- /** Provide directories and files containing debugging symbols to Symbolic Debugger.
+ /** Provide DIRECTORIES containing debugging symbols to Symbolic Debugger.
*
* Ex: this is used to provide Apache debug symbols to WinDebug(on Windows).
*
@@ -155,13 +155,18 @@ public abstract class Scenario {
* @param host
* @param build
* @param scenario_set
+ * @param layer TODO
* @return
*/
@Overridable
- public boolean isSupported(ConsoleManager cm, Host host, PhpBuild build, ScenarioSet scenario_set)
{
+ public boolean isSupported(ConsoleManager cm, Host host, PhpBuild build, ScenarioSet scenario_set,
EScenarioSetPermutationLayer layer) {
return true;
}
+ public final boolean isSupported(ConsoleManager cm, Host host, PhpBuild build, ScenarioSet
scenario_set) {
+ return isSupported(cm, host, build, scenario_set, null);
+ }
+
@Override
public String toString() {
return getName();
diff --git a/src/com/mostc/pftt/scenario/ScenarioSet.java
b/src/com/mostc/pftt/scenario/ScenarioSet.java
index 80dba2f..83a6f3c 100644
--- a/src/com/mostc/pftt/scenario/ScenarioSet.java
+++ b/src/com/mostc/pftt/scenario/ScenarioSet.java
@@ -11,6 +11,7 @@ import java.util.List;
import com.mostc.pftt.host.Host;
import com.mostc.pftt.model.core.PhpBuild;
import com.mostc.pftt.results.ConsoleManager;
+import com.mostc.pftt.results.EPrintType;
/** A Set of Scenarios to test PHP under.
*
@@ -191,16 +192,25 @@ public class ScenarioSet extends ArrayList<Scenario> {
* @param cm
* @param host
* @param build
+ * @param layer
* @return
*/
- public boolean isSupported(ConsoleManager cm, Host host, PhpBuild build) {
+ public boolean isSupported(ConsoleManager cm, Host host, PhpBuild build,
EScenarioSetPermutationLayer layer) {
for (Scenario s :this) {
- if (!s.isSupported(cm, host, build, this))
+ if (!s.isSupported(cm, host, build, this, layer)) {
+ if (cm!=null) {
+ cm.println(EPrintType.CLUE, getClass(), "Not Supported");
+ }
return false;
+ }
}
return true;
}
+ public final boolean isSupported(ConsoleManager cm, Host host, PhpBuild build) {
+ return isSupported(cm, host, build, null);
+ }
+
@Override
public ScenarioSet clone() {
return (ScenarioSet) super.clone();
@@ -284,7 +294,7 @@ public class ScenarioSet extends ArrayList<Scenario> {
ScenarioSet ss;
while (ss_it.hasNext()) {
ss = ss_it.next();
- if (!ss.isSupported(cm, host, build))
+ if (!ss.isSupported(cm, host, build, layer))
ss_it.remove();
}
return scenario_sets;
diff --git a/src/com/mostc/pftt/scenario/app/ZipDbApplication.java
b/src/com/mostc/pftt/scenario/app/ZipDbApplication.java
index 4e20dfa..813afb2 100644
--- a/src/com/mostc/pftt/scenario/app/ZipDbApplication.java
+++ b/src/com/mostc/pftt/scenario/app/ZipDbApplication.java
@@ -13,8 +13,17 @@ import com.mostc.pftt.scenario.ScenarioSet;
public abstract class ZipDbApplication extends ZipApplication {
@Override
- public boolean isSupported(ConsoleManager cm, Host host, PhpBuild build, ScenarioSet scenario_set)
{
- return null != scenario_set.getScenario(MySQLScenario.class);
+ public boolean isSupported(ConsoleManager cm, Host host, PhpBuild build, ScenarioSet scenario_set,
EScenarioSetPermutationLayer layer) {
+ if (layer==EScenarioSetPermutationLayer.FUNCTIONAL_TEST_CORE)
+ // for using
core_all,app_all commands together (fe caaa)
+ return true;
+ if (!scenario_set.contains(MySQLScenario.class)) {
+ if (cm!=null) {
+ cm.println(EPrintType.CLUE, getClass(), "Requires MySQL Scenario. Try adding
local_mysql to your -config.");
+ }
+ return false;
+ }
+ return true;
}
protected MySQLScenario requireMySQLScenario(ConsoleManager cm, ScenarioSet scenario_set) {