package com.mumux.androidtesting.uiautomator;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;
import com.mumux.androidtesting.actions.Action;
import com.mumux.androidtesting.actions.ActionParseException;
import com.mumux.androidtesting.actions.ActionParser;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ActionUiAutomatorTestCase extends UiAutomatorTestCase {
private final static String TOKEN_SEP = "~";
private final static String SPACE_ENCODING = "%";
public void testBasic() {
System.err.println("DEBUG - testBasic");
System.err.println("params=" + getParams());
String[] tokens = getParams().getString("action").replace(SPACE_ENCODING, " ").split(TOKEN_SEP);
Action action = ActionParser.getAction(tokens[0]);
if (action == null) {
System.err.println("Action " + tokens[0] + " not found");
return;
}
List<String> values = new ArrayList<>();
values.addAll(Arrays.asList(tokens).subList(1, tokens.length));
try {
action.parseValues(values.toArray(new String[]{}));
} catch (ActionParseException e) {
System.err.println(e.getMessage());
return;
}
System.err.println("Executing " + action);
String error = action.run(this, Runtime.getRuntime());
if (error == null) {
System.err.println("Success");
} else {
System.err.println("Failure");
System.err.println(error);
}
//System.err.println("action=" + action);
}
}