1 package org.robolectric.integrationtests.axt; 2 3 import static androidx.test.espresso.Espresso.onView; 4 import static androidx.test.espresso.assertion.ViewAssertions.matches; 5 import static androidx.test.espresso.matcher.ViewMatchers.isCompletelyDisplayed; 6 import static androidx.test.espresso.matcher.ViewMatchers.withId; 7 import static org.robolectric.shadows.ShadowLooper.shadowMainLooper; 8 9 import androidx.test.core.app.ActivityScenario; 10 import androidx.test.espresso.Espresso; 11 import androidx.test.ext.junit.runners.AndroidJUnit4; 12 import org.junit.Before; 13 import org.junit.Test; 14 import org.junit.runner.RunWith; 15 import org.robolectric.integration.axt.R; 16 17 /** Verify Espresso usage with paused looper */ 18 @RunWith(AndroidJUnit4.class) 19 public final class EspressoWithPausedLooperTest { 20 21 @Before setUp()22 public void setUp() { 23 shadowMainLooper().pause(); 24 ActivityScenario.launch(EspressoActivity.class); 25 } 26 27 @Test launchActivity()28 public void launchActivity() {} 29 30 @Test onIdle_doesnt_block()31 public void onIdle_doesnt_block() { 32 Espresso.onIdle(); 33 } 34 35 /** Perform the equivalent of launchActivityAndFindView_ById except using espresso APIs */ 36 @Test launchActivityAndFindView_espresso()37 public void launchActivityAndFindView_espresso() { 38 onView(withId(R.id.edit_text)).check(matches(isCompletelyDisplayed())); 39 } 40 } 41