diff options
author | Tobrun <tobrun@mapbox.com> | 2016-02-12 09:52:29 +0100 |
---|---|---|
committer | Tobrun <tobrun@mapbox.com> | 2016-02-12 09:52:29 +0100 |
commit | a20225bbf1d3229847bc5b36dacd8babc6d55945 (patch) | |
tree | fa19187b910ec7e3e0ea77ee97e6b0b16e7efad5 | |
parent | 076f29ca300e7e718a76eaf8fb60fc214dd0d29f (diff) | |
download | qtlocation-mapboxgl-a20225bbf1d3229847bc5b36dacd8babc6d55945.tar.gz |
[android] #3919 - restore espresso tests
5 files changed, 73 insertions, 26 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java index 2789e85ed8..76d825516c 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java @@ -2,6 +2,7 @@ package com.mapbox.mapboxsdk.maps; import android.app.Fragment; import android.os.Bundle; +import android.os.Handler; import android.support.annotation.NonNull; import android.view.LayoutInflater; import android.view.View; @@ -29,7 +30,7 @@ public class MapFragment extends Fragment { private MapView mMap; - public static MapFragment newInstance(){ + public static MapFragment newInstance() { return new MapFragment(); } @@ -94,7 +95,12 @@ public class MapFragment extends Fragment { } @NonNull - public void getMapAsync(@NonNull OnMapReadyCallback onMapReadyCallback){ - mMap.getMapAsync(onMapReadyCallback); + public void getMapAsync(@NonNull final OnMapReadyCallback onMapReadyCallback) { + new Handler().post(new Runnable() { + @Override + public void run() { + mMap.getMapAsync(onMapReadyCallback); + } + }); } } diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java index 147cd31b5a..d736cc2a10 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java @@ -1,6 +1,7 @@ package com.mapbox.mapboxsdk.maps; import android.os.Bundle; +import android.os.Handler; import android.support.annotation.NonNull; import android.support.v4.app.Fragment; import android.view.LayoutInflater; @@ -29,7 +30,7 @@ public class SupportMapFragment extends Fragment { private MapView mMap; - public static SupportMapFragment newInstance(){ + public static SupportMapFragment newInstance() { return new SupportMapFragment(); } @@ -94,7 +95,12 @@ public class SupportMapFragment extends Fragment { } @NonNull - public void getMapAsync(@NonNull OnMapReadyCallback onMapReadyCallback){ - mMap.getMapAsync(onMapReadyCallback); + public void getMapAsync(@NonNull final OnMapReadyCallback onMapReadyCallback) { + new Handler().post(new Runnable() { + @Override + public void run() { + mMap.getMapAsync(onMapReadyCallback); + } + }); } } diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MainActivityScreenTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MainActivityScreenTest.java index bbfa4ec73a..8c6e9c50b1 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MainActivityScreenTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MainActivityScreenTest.java @@ -4,17 +4,18 @@ import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.utils.DrawerUtils; +import com.mapbox.mapboxsdk.testapp.utils.GestureUtils; +import com.mapbox.mapboxsdk.testapp.utils.ScreenshotUtil; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import static android.support.test.espresso.Espresso.onView; -import static android.support.test.espresso.action.ViewActions.click; import static android.support.test.espresso.action.ViewActions.doubleClick; -import static android.support.test.espresso.matcher.ViewMatchers.withContentDescription; import static android.support.test.espresso.matcher.ViewMatchers.withId; -import static android.support.test.espresso.matcher.ViewMatchers.withText; /** * Tests on MainActivity with screenshots @@ -23,8 +24,6 @@ import static android.support.test.espresso.matcher.ViewMatchers.withText; @LargeTest public class MainActivityScreenTest extends BaseTest { - private final static String HOME_BUTTON_STRING = "Navigate up"; - @Rule public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>( MainActivity.class); @@ -44,23 +43,13 @@ public class MainActivityScreenTest extends BaseTest { /* * Take a screenshot of Mapbox Streets to monitor #1649 */ - @Test public void testMapboxStreetsBlackAndWhite() { - // Click home and switch to Mapbox streets - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.styleMapboxStreets)) - .perform(click()); - - // Zoom in - onView(withId(R.id.mainMapView)) - .perform(doubleClick()); - onView(withId(R.id.mainMapView)) - .perform(doubleClick()); - - // Standard screenshot - takeNamedScreenshot(mActivity, "testMapboxStreetsBlackAndWhite"); + DrawerUtils.openDrawer(); + DrawerUtils.clickItem(R.string.styleEmerald); + GestureUtils.doubleClickGesture(R.id.mainMapView); + GestureUtils.doubleClickGesture(R.id.mainMapView); + takeNamedScreenshot(mActivity, "testEmeraldStyle"); } } diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/DrawerUtils.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/DrawerUtils.java new file mode 100644 index 0000000000..8d8905fdf4 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/DrawerUtils.java @@ -0,0 +1,29 @@ +package com.mapbox.mapboxsdk.testapp.utils; + +import android.support.annotation.StringRes; +import android.support.test.espresso.Espresso; +import android.support.test.espresso.action.ViewActions; +import android.support.test.espresso.matcher.ViewMatchers; + +import com.mapbox.mapboxsdk.testapp.R; + +import org.hamcrest.Matchers; + +import static android.support.test.espresso.Espresso.onView; +import static android.support.test.espresso.action.ViewActions.click; +import static android.support.test.espresso.matcher.ViewMatchers.withContentDescription; + +public class DrawerUtils { + + private final static String HOME_BUTTON_STRING = "Navigate up"; + + public static void openDrawer(){ + onView(withContentDescription(HOME_BUTTON_STRING)).perform(click()); + } + + public static void clickItem(@StringRes int txtId){ + Espresso.onView(Matchers.allOf(ViewMatchers.withId(R.id.design_menu_item_text), + ViewMatchers.hasSibling(ViewMatchers.withText(txtId)))).perform(ViewActions.click()); + } + +} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/GestureUtils.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/GestureUtils.java new file mode 100644 index 0000000000..37c18399e4 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/GestureUtils.java @@ -0,0 +1,17 @@ +package com.mapbox.mapboxsdk.testapp.utils; + +import android.support.annotation.IdRes; + +import com.mapbox.mapboxsdk.testapp.R; + +import static android.support.test.espresso.Espresso.onView; +import static android.support.test.espresso.action.ViewActions.doubleClick; +import static android.support.test.espresso.matcher.ViewMatchers.withId; + +public class GestureUtils { + + public static void doubleClickGesture(@IdRes int id){ + onView(withId(id)).perform(doubleClick()); + } + +} |