new RunnerConfigMarshaller<RNAalifold>(RunnerConfig.class);
rnaalifoldConfig = rnaalifoldmarsh.read(new FileInputStream(new File(
rnaalifoldConfigFile)), RunnerConfig.class);
+ // set Name value separator
+ rnaalifoldConfig.setPrmSeparator(" ");
+ log.info("prmSeparator: " + rnaalifoldConfig.getPrmSeparator());
rnaalifoldOpc = new OptionCombinator(rnaalifoldConfig);
log.info("Num options: " + rnaalifoldOpc.getAllOptions().size());
public void testOptions() {
test(rnaalifoldOpc.getAllOptions());
}
+
+ @Test(groups = { AllTestSuit.test_group_runner })
+ public void testOptionPairs() throws ResultNotAvailableException {
+ List<Option<?>> pair = new ArrayList<Option<?>>();
+ List<Option<?>> options = rnaalifoldOpc.getAllOptions();
+ int numpairs = 0;
+ for (int i = 0; i<options.size(); i++) {
+ for (int j = i; j<options.size(); j++) {
+ if (i != j) {
+ //System.out.println("special numOptions: " + options.size());
+ //System.out.println("special loop varaibles:- (i,j): (" + i + "," + j +")");
+ pair.clear();
+ pair.add(options.get(i)); pair.add(options.get(j));
+ log.info("option pair to test: " + pair);
+ // I want to catch ResultNotAvailableException here so
+ // I can return a list of imcompatable options but
+ // singleTest calls a fail() method...
+ // can i fail the test and continue running?
+ test(pair);
+
+ //System.out.println("special numpairstested: " + ++numpairs);
+ }
+ }
+ }
+ }
@Test(groups = { AllTestSuit.test_group_runner })
public void testParameters() {
test(options);
}
+ /*
void test(Map<Parameter<?>, String> paramValue) {
List<Parameter<?>> paramList = new ArrayList<Parameter<?>>(paramValue
.keySet());
}
log.info("NUMBER OF COMBINATION TESTED: " + paramValue.size());
}
+ */
void test(List<? extends Option<?>> params) {
for (int i = 0; i < params.size(); i++) {
log.info("NUMBER OF COMBINATION TESTED: " + params.size());
}
+ @Test
+ void singleParamTest() {
+ //List<Parameter<?>> params = rnaalifoldOpc.getAllParameters();
+ //System.out.println("special: params: " + params);
+
+ //List<String> args = rnaalifoldOpc.argumentsToCommandString(params);
+ List<String> args = new ArrayList<String>();
+ args.add("-T 37"); args.add("-S 1.07"); args.add("--stochBT_en=10");
+ args.add("--MEA=1");
+ System.out.println("special: args: " + args);
+ singleTest(args);
+
+ }
+
void singleTest(List<String> params) {
try {
log.info("Using arguments: " + params);