@Override public Context getTargetContext() { return base.getTargetContext(); }
@Override public void runOnMainSync(Runnable runner) { base.runOnMainSync(runner); }
/** Set the Component for the Activity to display. */ public void setComponent(final Component component) { final Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation(); instrumentation.runOnMainSync( new Runnable() { @Override public void run() { getActivity().setComponent(component); } }); instrumentation.waitForIdleSync(); }
public void testListClick() throws InterruptedException { Instrumentation.ActivityMonitor monitor = instrumentation.addMonitor(SubActivity.class.getName(), null, false); Spoon.screenshot(getActivity(), "init"); // listviewactivity -> subactivity final ListView listView = (ListView) getActivity().findViewById(R.id.list); instrumentation.waitForIdleSync(); instrumentation.runOnMainSync(new Runnable() { @Override public void run() { assertTrue(listView.performItemClick(listView.getChildAt(0), 0, 0)); } }); Activity detailActivity = instrumentation.waitForMonitor(monitor); // Wait for animation Thread.sleep(2000l); instrumentation.waitForIdleSync(); Spoon.screenshot(detailActivity, "listview_transition"); // subactivity -> listviewactivity sendKeys(KeyEvent.KEYCODE_BACK); // Wait for animation Thread.sleep(2000l); instrumentation.waitForIdleSync(); Spoon.screenshot(getActivity(), "listview_transition_backpress"); }
public void testScroll() throws Throwable { UiTestUtils.swipeVertically(this, scrollable, UiTestUtils.Direction.UP); getInstrumentation().waitForIdleSync(); UiTestUtils.swipeVertically(this, scrollable, UiTestUtils.Direction.DOWN); getInstrumentation().waitForIdleSync(); }
@Override public Context getContext() { return base.getContext(); }
@Before public void initActivity() { instrumentation = InstrumentationRegistry.getInstrumentation(); Instrumentation.ActivityMonitor monitor = new Instrumentation.ActivityMonitor(TestActivity.class.getName(), null, false); instrumentation.addMonitor(monitor); Intent intent = new Intent(instrumentation.getTargetContext(), TestActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); instrumentation.startActivitySync(intent); activity = instrumentation.waitForMonitor(monitor); assertNotNull(activity); }
@Override public void callActivityOnCreate(Activity activity, Bundle icicle) { base.callActivityOnCreate(activity, icicle); }
@Override public void initActivity() { super.initActivity(); welcomeMonitor = new Instrumentation.ActivityMonitor(DefaultWelcomeActivity.class.getName(), null, false); instrumentation.addMonitor(welcomeMonitor); new WelcomeHelper(activity, DefaultWelcomeActivity.class).forceShow(); welcomeActivity = (WelcomeActivity) instrumentation.waitForMonitor(welcomeMonitor); }
IntentFilter intF = new IntentFilter("ACTIVITY.THAT.YOU.WANT.TO.LAUNCH"); Instrumentation instrumentation = new Instrumentation(); Instrumentation.ActivityMonitor monitor = instrumentation.addMonitor(intF, null, true); Intent i = new Intent("ACTIVITY.THAT.YOU.WANT.TO.LAUNCH"); instrumentation.startActivitySync(i);
/** * Creates a new ActivityMonitor and returns it * * @return an ActivityMonitor */ private ActivityMonitor getActivityMonitor(){ IntentFilter filter = null; ActivityMonitor activityMonitor = instrumentation.addMonitor(filter, null, false); return activityMonitor; }
@Override public void starts(Class<? extends Activity> activityClass) { ActivityMonitor monitor = instrumentation.addMonitor(activityClass.getCanonicalName(), null, false); performPendingAction(); assertTrue(instrumentation.checkMonitorHit(monitor, 1)); Activity lastActivity = monitor.getLastActivity(); getStoryTestCase().setCurrentActivity(lastActivity); }
@UiThreadTest public void testListItemClickStartsActivity() { final Instrumentation inst = getInstrumentation(); final IntentFilter intentFilter = new IntentFilter(); // here add conditions to your filter, i.e. intentFilter.addAction() ActivityMonitor monitor = inst.addMonitor(intentFilter, null, false); assertEquals(0, monitor.getHits()); // here perform desired click on list monitor.waitForActivityWithTimeout(5000); assertEquals(1, monitor.getHits()); inst.removeMonitor(monitor); }
public void testGoSubActivity2() throws InterruptedException { Spoon.screenshot(getActivity(), "init"); Instrumentation.ActivityMonitor monitor = instrumentation.addMonitor(SubActivity2.class.getName(), null, false); final ImageView imageView = (ImageView) getActivity().findViewById(R.id.imageView2); instrumentation.waitForIdleSync(); instrumentation.runOnMainSync(new Runnable() { @Override public void run() { assertTrue(imageView.performClick()); } }); Activity activity = instrumentation.waitForMonitor(monitor); // Verify new activity was shown. ANDROID.assertThat(monitor).hasHits(1); // Wait for animation Thread.sleep(2000l); Spoon.screenshot(activity, "sub_activity_shown"); // subactivity -> mainactivity sendKeys(KeyEvent.KEYCODE_BACK); // Wait for animation Thread.sleep(2000l); instrumentation.waitForIdleSync(); Spoon.screenshot(getActivity(), "main_activity_backed"); }
public void testScroll() throws Throwable { UiTestUtils.swipeVertically(this, scrollable, UiTestUtils.Direction.UP); getInstrumentation().waitForIdleSync(); UiTestUtils.swipeVertically(this, scrollable, UiTestUtils.Direction.DOWN); getInstrumentation().waitForIdleSync(); }
/** Can be overridden to customize the failure string message. */ protected @NonNull String buildLeakDetectedMessage( @NonNull List<InstrumentationLeakResults.Result> detectedLeaks) { StringBuilder failureMessage = new StringBuilder(); failureMessage.append( "Test failed because memory leaks were detected, see leak traces below.\n"); failureMessage.append(SEPARATOR); Context context = getInstrumentation().getContext(); for (InstrumentationLeakResults.Result detectedLeak : detectedLeaks) { failureMessage.append( LeakCanary.leakInfo(context, detectedLeak.heapDump, detectedLeak.analysisResult, true)); failureMessage.append(SEPARATOR); } return failureMessage.toString(); } }
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @Override public void callActivityOnCreate(Activity activity, Bundle icicle, PersistableBundle persistentState) { base.callActivityOnCreate(activity, icicle, persistentState); }
@Test public void testForceShow() { ActivityMonitor monitor = new ActivityMonitor(DefaultWelcomeActivity.class.getName(), null, false); instrumentation.addMonitor(monitor); helper.forceShow(); Activity welcomeActivity = instrumentation.waitForMonitor(monitor); assertNotNull(welcomeActivity); }
@Override public ActivityMonitor addMonitor(IntentFilter filter, ActivityResult result, boolean block) { return base.addMonitor(filter, result, block); }
@Override public void startsWithIntentAction(String intentAction) { ActivityMonitor monitor = instrumentation.addMonitor(intentAction, null, false); performPendingAction(); assertTrue(instrumentation.checkMonitorHit(monitor, 1)); Activity lastActivity = monitor.getLastActivity(); getStoryTestCase().setCurrentActivity(lastActivity); } }