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); } }