diff options
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp')
35 files changed, 373 insertions, 612 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/CameraActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/CameraActivityTest.java deleted file mode 100644 index 1f176af879..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/CameraActivityTest.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -import android.app.Activity; -import android.support.test.rule.ActivityTestRule; -import android.support.test.runner.AndroidJUnit4; -import android.test.suitebuilder.annotation.LargeTest; - -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; - -/** - * Tests on CameraActivity - */ -@RunWith(AndroidJUnit4.class) -@LargeTest -public class CameraActivityTest extends BaseTest { - - @Rule - public ActivityTestRule<CameraActivity> mActivityRule = new ActivityTestRule<>(CameraActivity.class); - - private Activity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - @Test - public void testSanity() { - checkViewIsDisplayed(R.id.cameraMapView); - } -} - diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/CoordinateChangeActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/CoordinateChangeActivityTest.java deleted file mode 100644 index 68633547ed..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/CoordinateChangeActivityTest.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -import android.app.Activity; -import android.support.test.rule.ActivityTestRule; -import android.support.test.runner.AndroidJUnit4; -import android.test.suitebuilder.annotation.LargeTest; - -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; - -/** - * Tests on CameraActivity - */ -@RunWith(AndroidJUnit4.class) -@LargeTest -public class CoordinateChangeActivityTest extends BaseTest { - - @Rule - public ActivityTestRule<CoordinateChangeActivity> mActivityRule = new ActivityTestRule<>(CoordinateChangeActivity.class); - - private Activity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - @Test - public void testSanity() { - checkViewIsDisplayed(R.id.mapView); - } -} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivityTest.java deleted file mode 100644 index db014b69ac..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivityTest.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -import android.app.Activity; -import android.support.test.rule.ActivityTestRule; -import android.support.test.runner.AndroidJUnit4; -import android.test.suitebuilder.annotation.LargeTest; - -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; - -/** - * Tests on DoubleMapActivity - */ -@RunWith(AndroidJUnit4.class) -@LargeTest -public class DoubleMapActivityTest extends BaseTest { - - @Rule - public ActivityTestRule<DoubleMapActivity> mActivityRule = new ActivityTestRule<>(DoubleMapActivity.class); - - private Activity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - @Test - public void testSanity() { - checkViewIsDisplayed(R.id.mapView); - checkViewIsDisplayed(R.id.mini_map); - } -} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/InfoWindowConcurrentActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/InfoWindowConcurrentActivityTest.java deleted file mode 100644 index e507c6cd61..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/InfoWindowConcurrentActivityTest.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -import android.app.Activity; -import android.support.test.rule.ActivityTestRule; -import android.support.test.runner.AndroidJUnit4; -import android.test.suitebuilder.annotation.LargeTest; - -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; - -/** - * Tests on InfoWindowConcurrentActivity - */ -@RunWith(AndroidJUnit4.class) -@LargeTest -public class InfoWindowConcurrentActivityTest extends BaseTest { - - @Rule - public ActivityTestRule<InfoWindowConcurrentActivity> mActivityRule = new ActivityTestRule<>(InfoWindowConcurrentActivity.class); - - private Activity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - @Test - public void testSanity() { - checkViewIsDisplayed(R.id.infoWindowConcurrentMapView); - } -} 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 deleted file mode 100644 index 7c56f4c874..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MainActivityScreenTest.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -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.doubleClick; -import static android.support.test.espresso.matcher.ViewMatchers.withId; - -/** - * Tests on MainActivity with screenshots - */ -@RunWith(AndroidJUnit4.class) -@LargeTest -public class MainActivityScreenTest extends BaseTest { - - @Rule - public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>( - MainActivity.class); - - private MainActivity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - @Test - public void testSanity() { - checkViewIsDisplayed(R.id.mainMapView); - } - - @Test - public void testStyleEmerald() { - DrawerUtils.openDrawer(); - DrawerUtils.clickItem(R.string.styleEmerald); - GestureUtils.doubleClickGesture(R.id.mainMapView); - GestureUtils.doubleClickGesture(R.id.mainMapView); - takeNamedScreenshot(mActivity, "testEmeraldStyle"); - } - - @Test - public void testStyleStreets() { - DrawerUtils.openDrawer(); - DrawerUtils.clickItem(R.string.styleMapboxStreets); - GestureUtils.doubleClickGesture(R.id.mainMapView); - GestureUtils.doubleClickGesture(R.id.mainMapView); - takeNamedScreenshot(mActivity, "testStreetsStyle"); - } - - @Test - public void testStyleDark() { - DrawerUtils.openDrawer(); - DrawerUtils.clickItem(R.string.styleDark); - GestureUtils.doubleClickGesture(R.id.mainMapView); - GestureUtils.doubleClickGesture(R.id.mainMapView); - takeNamedScreenshot(mActivity, "testDarkStyle"); - } - - @Test - public void testStyleLight() { - DrawerUtils.openDrawer(); - DrawerUtils.clickItem(R.string.styleLight); - GestureUtils.doubleClickGesture(R.id.mainMapView); - GestureUtils.doubleClickGesture(R.id.mainMapView); - takeNamedScreenshot(mActivity, "testLightStyle"); - } - - @Test - public void testStyleSatellite() { - DrawerUtils.openDrawer(); - DrawerUtils.clickItem(R.string.styleSatellite); - GestureUtils.doubleClickGesture(R.id.mainMapView); - GestureUtils.doubleClickGesture(R.id.mainMapView); - takeNamedScreenshot(mActivity, "testSatelliteStyle"); - } - -} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MainActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MainActivityTest.java deleted file mode 100644 index b9d00de089..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MainActivityTest.java +++ /dev/null @@ -1,257 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -import android.support.test.rule.ActivityTestRule; -import android.support.test.runner.AndroidJUnit4; -import android.test.suitebuilder.annotation.LargeTest; - -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.action.ViewActions.longClick; -import static android.support.test.espresso.assertion.ViewAssertions.matches; -import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed; -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; -import static org.hamcrest.Matchers.not; - -/** - * Tests on MainActivity - */ -@RunWith(AndroidJUnit4.class) -@LargeTest -public class MainActivityTest extends BaseTest { - - @Rule - public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>( - MainActivity.class); - - private MainActivity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - /* - * Note that we need to keep the `test` prefix if we want to be able to run these - * tests on AWS Device Farm, annotations are not enough: - * https://github.com/awslabs/aws-device-farm-sample-app-for-android/issues/5#issuecomment-138258444 - */ - - @Test - public void testSanity() { - checkViewIsDisplayed(R.id.mainMapView); - } - - /* - * Check UI ids are visible - */ - - @Test - public void testDrawerLayoutIsDisplayed() { - onView(withId(R.id.drawer_layout)) - .check(matches(isDisplayed())); - } - - @Test - public void testToolbarIsDisplayed() { - onView(withId(R.id.toolbar)) - .check(matches(isDisplayed())); - } - - @Test - public void testContentFrameIsDisplayed() { - onView(withId(R.id.content_frame)) - .check(matches(isDisplayed())); - } - - @Test - public void testViewFpsIsDisplayed() { - // By default, R.id.view_fps is not displayed - onView(withId(R.id.view_fps)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testLocationFABIsDisplayed() { - onView(withId(R.id.locationFAB)) - .check(matches(isDisplayed())); - } - - @Test - public void testNavViewIsNotDisplayed() { - // By default, nav_view not displayed - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testNavViewIsDisplayed() { - // However, it's displayed when we click the home icon - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withId(R.id.nav_view)) - .check(matches(isDisplayed())); - } - - /* - * Some more tests on the map view (clicks, gestures) - */ - - @Test - public void testClickMap() { - onView(withId(R.id.mainMapView)) - .perform(click()) - .check(matches(isDisplayed())); - } - - @Test - public void testDoubleClickMap() { - onView(withId(R.id.mainMapView)) - .perform(doubleClick()) - .check(matches(isDisplayed())); - } - - @Test - public void testLongClickMap() { - onView(withId(R.id.mainMapView)) - .perform(longClick()) - .check(matches(isDisplayed())); - } - - /* - * Test the main drawer options - */ - - @Test - public void testNavViewActionDebug() { - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.action_debug)) - .perform(click()); - - // Clicking the item closes the drawer - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testNavViewActionPointAnnotations() { - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.action_point_annotations)) - .perform(click()); - - // Clicking the item closes the drawer - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testNavViewActionCompass() { - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.action_compass)) - .perform(click()); - - // Clicking the item closes the drawer - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testNavViewStyleMapboxStreets() { - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.styleMapboxStreets)) - .perform(click()); - - // Clicking the item closes the drawer - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testNavViewStyleEmerald() { - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.styleEmerald)) - .perform(click()); - - // Clicking the item closes the drawer - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testNavViewStyleLight() { - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.styleLight)) - .perform(click()); - - // Clicking the item closes the drawer - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testNavViewStyleDark() { - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.styleDark)) - .perform(click()); - - // Clicking the item closes the drawer - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - @Test - public void testNavViewStyleSatellite() { - onView(withContentDescription(HOME_BUTTON_STRING)) - .perform(click()); - onView(withText(R.string.styleSatellite)) - .perform(click()); - - // Clicking the item closes the drawer - onView(withId(R.id.nav_view)) - .check(matches(not(isDisplayed()))); - } - - /* - * We can also check the map inner elements are visible - */ - - @Test - public void testMapIconContentDescription() { - // Mapbox logo - onView(withContentDescription(mActivity.getResources() - .getString(R.string.mapboxIconContentDescription))) - .check(matches(isDisplayed())); - } - -// @Test -// public void testMapCompassContentDescription() { -// //FIXME this is currently broken hence compass view is only being showed when rotating the map -// // Map compass -//// onView(withContentDescription(mActivity.getResources() -//// .getString(R.string.compassContentDescription))) -//// .check(matches(isDisplayed())); -// } - - @Test - public void testMapAttributionsIconContentDescription() { - // Attribution icon - onView(withContentDescription(mActivity.getResources() - .getString(R.string.attributionsIconContentDescription))) - .check(matches(isDisplayed())); - } - -} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MapboxMapActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MapboxMapActivityTest.java deleted file mode 100644 index eaa1584a3f..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MapboxMapActivityTest.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -import android.app.Activity; -import android.support.test.rule.ActivityTestRule; -import android.support.test.runner.AndroidJUnit4; -import android.test.suitebuilder.annotation.LargeTest; - -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; - -/** - * Tests on MapboxMapActivity - */ -@RunWith(AndroidJUnit4.class) -@LargeTest -public class MapboxMapActivityTest extends BaseTest { - - @Rule - public ActivityTestRule<MapboxMapActivity> mActivityRule = new ActivityTestRule<>(MapboxMapActivity.class); - - private Activity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - @Test - public void testSanity() { - checkViewIsDisplayed(R.id.mapView); - } -} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/PressForMarkerActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/PressForMarkerActivityTest.java deleted file mode 100644 index ccb8354fc5..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/PressForMarkerActivityTest.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -import android.support.test.rule.ActivityTestRule; -import android.support.test.runner.AndroidJUnit4; -import android.test.suitebuilder.annotation.LargeTest; - -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; - -/** - * Tests on PressForMarkerActivity - */ -@RunWith(AndroidJUnit4.class) -@LargeTest -public class PressForMarkerActivityTest extends BaseTest { - - @Rule - public ActivityTestRule<PressForMarkerActivity> mActivityRule = new ActivityTestRule<>( - PressForMarkerActivity.class); - - private PressForMarkerActivity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - @Test - public void testSanity() { - // we are adding mapview on the fly.. just validating if we have a toolbar - checkViewIsDisplayed(R.id.secondToolBar); - } -} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/TiltActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/TiltActivityTest.java deleted file mode 100644 index a38af03a61..0000000000 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/TiltActivityTest.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.mapbox.mapboxsdk.testapp; - -import android.support.test.rule.ActivityTestRule; - -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -public class TiltActivityTest extends BaseTest { - - @Rule - public ActivityTestRule<TiltActivity> mActivityRule = new ActivityTestRule<>( - TiltActivity.class); - - private TiltActivity mActivity = null; - - @Before - public void setActivity() { - mActivity = mActivityRule.getActivity(); - } - - @Test - public void testSanity() { - checkViewIsDisplayed(R.id.tiltMapView); - } - -} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/BaseTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/BaseTest.java index e432d5f576..e9292332d5 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/BaseTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/BaseTest.java @@ -1,8 +1,8 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.app.Activity; -import com.mapbox.mapboxsdk.testapp.utils.ScreenshotUtil; +import com.mapbox.mapboxsdk.testapp.espresso.utils.ScreenshotUtil; import static android.support.test.espresso.Espresso.onView; import static android.support.test.espresso.assertion.ViewAssertions.matches; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/BulkMarkerActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/BulkMarkerActivityTest.java index d66ae8f514..b85fe41243 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/BulkMarkerActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/BulkMarkerActivityTest.java @@ -1,9 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.annotation.BulkMarkerActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/DirectionsActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/DirectionsActivityTest.java index 3ce8d00aa0..a84345b14d 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/DirectionsActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/DirectionsActivityTest.java @@ -1,10 +1,13 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.app.Activity; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.directions.DirectionsActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/DynamicMarkerChangeActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/DynamicMarkerChangeActivityTest.java index b6feb8f1be..700da5e3bc 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/DynamicMarkerChangeActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/DynamicMarkerChangeActivityTest.java @@ -1,10 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; -import com.mapbox.mapboxsdk.testapp.utils.ViewUtils; +import com.mapbox.mapboxsdk.testapp.activity.annotation.DynamicMarkerChangeActivity; +import com.mapbox.mapboxsdk.testapp.R; +import com.mapbox.mapboxsdk.testapp.espresso.utils.ViewUtils; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/GeocoderActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/GeocoderActivityTest.java index c1ca7413c2..9bd7a49b9c 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/GeocoderActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/GeocoderActivityTest.java @@ -1,10 +1,13 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.app.Activity; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.geocoding.GeocoderActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/InfoWindowActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/InfoWindowActivityTest.java index 9fb99fe262..feb0bb1a02 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/InfoWindowActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/InfoWindowActivityTest.java @@ -1,9 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.infowindow.InfoWindowActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/InfoWindowAdapterActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/InfoWindowAdapterActivityTest.java index 51bd163fc1..0c62387e36 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/InfoWindowAdapterActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/InfoWindowAdapterActivityTest.java @@ -1,9 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.infowindow.InfoWindowAdapterActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/LatLngBoundsActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/LatLngBoundsActivityTest.java index 057979aeb8..39e7e4766e 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/LatLngBoundsActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/LatLngBoundsActivityTest.java @@ -1,9 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.camera.LatLngBoundsActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/ManualZoomActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/ManualZoomActivityTest.java index 8ce8498d64..5c88bd371a 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/ManualZoomActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/ManualZoomActivityTest.java @@ -1,10 +1,13 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.app.Activity; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.camera.ManualZoomActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MapFragmentActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/MapFragmentActivityTest.java index e65860f4b2..d7522b2d7f 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MapFragmentActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/MapFragmentActivityTest.java @@ -1,9 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.fragment.MapFragmentActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MapPaddingActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/MapPaddingActivityTest.java index c252077856..fe6c4eb487 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MapPaddingActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/MapPaddingActivityTest.java @@ -1,10 +1,13 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.app.Activity; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.maplayout.MapPaddingActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MaxMinZoomActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/MaxMinZoomActivityTest.java index e93a7675f0..48152286e9 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MaxMinZoomActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/MaxMinZoomActivityTest.java @@ -1,10 +1,13 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.app.Activity; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.camera.MaxMinZoomActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -29,6 +32,6 @@ public class MaxMinZoomActivityTest extends BaseTest { @Test public void testSanity() { - checkViewIsDisplayed(R.id.manualZoomMapView); + checkViewIsDisplayed(R.id.mapView); } } diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MyLocationTrackingModeActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/MyLocationTrackingModeActivityTest.java index b21cd070a6..ceda7cff2c 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/MyLocationTrackingModeActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/MyLocationTrackingModeActivityTest.java @@ -1,9 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.userlocation.MyLocationTrackingModeActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -30,4 +33,4 @@ public class MyLocationTrackingModeActivityTest extends BaseTest { public void testSanity() { checkViewIsDisplayed(R.id.mapView); } -}
\ No newline at end of file +} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/PolylineActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/PolylineActivityTest.java index 653921497e..425d803952 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/PolylineActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/PolylineActivityTest.java @@ -1,9 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.activity.annotation.PolylineActivity; +import com.mapbox.mapboxsdk.testapp.R; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/ScreenshotActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/ScreenshotActivityTest.java new file mode 100644 index 0000000000..60649ad4ae --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/ScreenshotActivityTest.java @@ -0,0 +1,124 @@ +package com.mapbox.mapboxsdk.testapp.espresso; + +import android.app.Activity; +import android.support.test.espresso.Espresso; +import android.support.test.espresso.IdlingPolicies; +import android.support.test.espresso.IdlingResource; +import android.support.test.rule.ActivityTestRule; +import android.support.test.runner.AndroidJUnit4; +import android.test.suitebuilder.annotation.LargeTest; +import android.text.format.DateUtils; + +import com.mapbox.mapboxsdk.testapp.R; +import com.mapbox.mapboxsdk.testapp.activity.camera.LatLngBoundsActivity; +import com.mapbox.mapboxsdk.testapp.espresso.utils.ScreenshotUtil; + +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import java.util.concurrent.TimeUnit; + +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.withId; + +@RunWith(AndroidJUnit4.class) +@LargeTest +public class +ScreenshotActivityTest { + + @Rule + public ActivityTestRule<LatLngBoundsActivity> mActivityRule = new ActivityTestRule<>(LatLngBoundsActivity.class); + + private Activity mActivity = null; + + @Before + public void setActivity() { + mActivity = mActivityRule.getActivity(); + + // Make sure Espresso does not time out + IdlingPolicies.setMasterPolicyTimeout(60, TimeUnit.SECONDS); + IdlingPolicies.setIdlingResourceTimeout(26, TimeUnit.SECONDS); + } + + @Test + public void testScreenshot() { + waitFor(DateUtils.SECOND_IN_MILLIS * 5, mActivity); + } + + private static void waitFor(long waitingTime, Activity a) { + // Start + onView(withId(R.id.mapView)).perform(click()); + + // Make sure Espresso does not time out + IdlingPolicies.setMasterPolicyTimeout(waitingTime * 2, TimeUnit.MILLISECONDS); + IdlingPolicies.setIdlingResourceTimeout(waitingTime * 2, TimeUnit.MILLISECONDS); + + // Now we wait + IdlingResource idlingResource = new ElapsedTimeIdlingResource(waitingTime); + Espresso.registerIdlingResources(idlingResource); + + // Stop and verify + onView(withId(R.id.mapView)).perform(click()); + + ScreenshotUtil.take(a, "testing"); + + // Clean up + Espresso.unregisterIdlingResources(idlingResource); + } + +// @Test +// public void takeScreenshot() { +// // Start +// checkViewIsDisplayed(R.id.mapView); +// +// +// // Now we wait +// IdlingResource idlingResource = new ElapsedTimeIdlingResource(4); +// Espresso.registerIdlingResources(idlingResource); +// +// // We take a screenshot +// ScreenshotUtil.take(mActivity, "test"); +// +// // Clean up +// Espresso.unregisterIdlingResources(idlingResource); +// } + +// @Test +// public void testSanity() { +// checkViewIsDisplayed(R.id.mapView); +// } + + public static class ElapsedTimeIdlingResource implements IdlingResource { + private final long startTime; + private final long waitingTime; + private ResourceCallback resourceCallback; + + public ElapsedTimeIdlingResource(long waitingTime) { + this.startTime = System.currentTimeMillis(); + this.waitingTime = waitingTime; + } + + @Override + public String getName() { + return ElapsedTimeIdlingResource.class.getName() + ":" + waitingTime; + } + + @Override + public boolean isIdleNow() { + long elapsed = System.currentTimeMillis() - startTime; + boolean idle = (elapsed >= waitingTime); + if (idle) { + resourceCallback.onTransitionToIdle(); + } + return idle; + } + + @Override + public void registerIdleTransitionCallback(ResourceCallback resourceCallback) { + this.resourceCallback = resourceCallback; + } + } +} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/ScrollByActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/ScrollByActivityTest.java index 05386b089e..c545bc6e04 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/ScrollByActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/ScrollByActivityTest.java @@ -1,9 +1,12 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.R; +import com.mapbox.mapboxsdk.testapp.activity.camera.ScrollByActivity; + import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/SupportMapFragmentActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/SupportMapFragmentActivityTest.java index 7ae03e0d07..e6c1cadf1e 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/SupportMapFragmentActivityTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/SupportMapFragmentActivityTest.java @@ -1,10 +1,13 @@ -package com.mapbox.mapboxsdk.testapp; +package com.mapbox.mapboxsdk.testapp.espresso; import android.app.Activity; import android.support.test.rule.ActivityTestRule; import android.support.test.runner.AndroidJUnit4; import android.test.suitebuilder.annotation.LargeTest; +import com.mapbox.mapboxsdk.testapp.R; +import com.mapbox.mapboxsdk.testapp.activity.fragment.SupportMapFragmentActivity; + import org.junit.Before; import org.junit.Rule; import org.junit.Test; 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/espresso/utils/DrawerUtils.java index 8d8905fdf4..7143fa948f 100644 --- 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/espresso/utils/DrawerUtils.java @@ -1,4 +1,4 @@ -package com.mapbox.mapboxsdk.testapp.utils; +package com.mapbox.mapboxsdk.testapp.espresso.utils; import android.support.annotation.StringRes; import android.support.test.espresso.Espresso; 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/espresso/utils/GestureUtils.java index 37c18399e4..e2807af5b5 100644 --- 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/espresso/utils/GestureUtils.java @@ -1,9 +1,7 @@ -package com.mapbox.mapboxsdk.testapp.utils; +package com.mapbox.mapboxsdk.testapp.espresso.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; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/ScreenshotUtil.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/utils/ScreenshotUtil.java index d25afec815..fdb06e52d8 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/ScreenshotUtil.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/utils/ScreenshotUtil.java @@ -1,4 +1,4 @@ -package com.mapbox.mapboxsdk.testapp.utils; +package com.mapbox.mapboxsdk.testapp.espresso.utils; import android.app.Activity; import android.graphics.Bitmap; @@ -43,15 +43,17 @@ public class ScreenshotUtil { } // Get a bitmap from the activity root view. When the drawing cache is enabled, - // the next call to getDrawingCache() will draw the view in a bitmap. +// // the next call to getDrawingCache() will draw the view in a bitmap. View rootView = activity.getWindow().getDecorView().getRootView(); - rootView.setDrawingCacheEnabled(true); - Bitmap bitmap = Bitmap.createBitmap(rootView.getDrawingCache()); - rootView.setDrawingCacheEnabled(false); +// rootView.setDrawingCacheEnabled(true);r +// rootView.setDrawingCacheEnabled(false); + + Bitmap bitmap = null; // Add the SurfaceView bit (see getAllTextureViews() below) List<TextureView> tilingViews = getAllTextureViews(rootView); if (tilingViews.size() > 0) { + bitmap = Bitmap.createBitmap(tilingViews.get(0).getHeight(),tilingViews.get(0).getWidth(), Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(bitmap); for (TextureView TextureView : tilingViews) { Bitmap b = TextureView.getBitmap(TextureView.getWidth(), TextureView.getHeight()); @@ -59,7 +61,7 @@ public class ScreenshotUtil { TextureView.getLocationInWindow(location); int[] location2 = new int[2]; TextureView.getLocationOnScreen(location2); - canvas.drawBitmap(b, location[0], location[1], null); + canvas.drawBitmap(b, 0,0, null); } } @@ -71,7 +73,8 @@ public class ScreenshotUtil { outputStream = new FileOutputStream(outputFile); bitmap.compress(DEFAULT_IMAGE_FORMAT, DEFAULT_IMAGE_QUALITY, outputStream); outputStream.flush(); - } catch (IOException e) { + } catch (Exception e) { + e.printStackTrace(); } finally { if (outputStream != null) { @@ -122,7 +125,10 @@ public class ScreenshotUtil { } String externalPath = Environment.getExternalStorageDirectory().toString(); - String path = externalPath + File.separator + SCREENSHOT_FOLDER + File.separator + filename; + String path = externalPath + File.separator + SCREENSHOT_FOLDER; + File dir = new File(path); + dir.mkdirs(); + path += File.separator + filename; Log.d(LOG_TAG, "Screenshot path: " + path); return path; } diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/ViewUtils.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/utils/ViewUtils.java index 01ee3e9b9f..6611c83545 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/ViewUtils.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/espresso/utils/ViewUtils.java @@ -1,4 +1,4 @@ -package com.mapbox.mapboxsdk.testapp.utils; +package com.mapbox.mapboxsdk.testapp.espresso.utils; import android.support.annotation.IdRes; diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/BaseMainActivityTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/BaseMainActivityTest.java new file mode 100644 index 0000000000..0eedca5458 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/BaseMainActivityTest.java @@ -0,0 +1,46 @@ +package com.mapbox.mapboxsdk.testapp.robotium; + +import android.test.ActivityInstrumentationTestCase2; + +import com.mapbox.mapboxsdk.maps.MapView; +import com.mapbox.mapboxsdk.maps.MapboxMap; +import com.mapbox.mapboxsdk.maps.MapboxMapUtils; +import com.mapbox.mapboxsdk.testapp.R; +import com.mapbox.mapboxsdk.testapp.activity.annotation.PolygonActivity; +import com.mapbox.mapboxsdk.testapp.activity.annotation.PolylineActivity; +import com.mapbox.mapboxsdk.testapp.activity.infowindow.InfoWindowActivity; +import com.robotium.solo.Solo; + +import org.junit.Test; + +public abstract class BaseMainActivityTest{ +// +//} extends ActivityInstrumentationTestCase2<InfoWindowActivity> { +// +// protected Solo solo; +// protected MapView mapView; +// protected MapboxMap mapboxMap; +// +// public BaseMainActivityTest() { +// super(InfoWindowActivity.class); +// } +// +// @Override +// public void setUp() throws Exception { +// solo = new Solo(getInstrumentation(), getActivity()); +// mapView = (MapView) solo.getView(R.id.mapView); +// mapboxMap = MapboxMapUtils.getMapboxMap(mapView); +// } +// +// @Override +// public void tearDown() throws Exception { +// solo.finishOpenedActivities(); +// } +// +// @Test +// public void testSanity() throws Exception { +// assertNotNull("Should be non null", solo); +// assertNotNull("Should be non null", mapView); +// assertNotNull("Should be non null", mapboxMap); +// } +} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/CompassViewTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/CompassViewTest.java new file mode 100644 index 0000000000..9990d71d67 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/CompassViewTest.java @@ -0,0 +1,48 @@ +package com.mapbox.mapboxsdk.testapp.robotium; + +import com.mapbox.mapboxsdk.camera.CameraPosition; +import com.mapbox.mapboxsdk.geometry.LatLng; +import com.mapbox.mapboxsdk.maps.widgets.CompassView; +import com.mapbox.mapboxsdk.testapp.R; +import com.mapbox.mapboxsdk.testapp.robotium.utils.ViewAssertion; + +import org.junit.Test; + +public class CompassViewTest { +// extends +//} BaseMainActivityTest { +// +// private CompassView compassView; +// +// @Override +// public void setUp() throws Exception { +// super.setUp(); +// compassView = (CompassView) solo.getView(R.id.compassView); +// } +// +//// @Test +//// public void testCompass() { +//// setCameraDirection(0); +//// solo.sleep(200); +//// ViewAssertion.isInvisible(compassView); +//// } +// +// @Test +// public void testCompassClick() throws Exception { +// setCameraDirection(20); +// solo.sleep(200); +// ViewAssertion.isVisible(compassView); +// solo.clickOnView(compassView); +// solo.sleep(200); +// ViewAssertion.isVisible(compassView); +// } +// +// private void setCameraDirection(float bearing) { +// mapboxMap.setCameraPosition(new CameraPosition.Builder() +// .target(new LatLng(0, 0)) +// .tilt(0) +// .zoom(15) +// .bearing(bearing) +// .build()); +// } +}
\ No newline at end of file diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/SimpleRotateTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/SimpleRotateTest.java new file mode 100644 index 0000000000..8d1feed6ff --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/SimpleRotateTest.java @@ -0,0 +1,29 @@ +package com.mapbox.mapboxsdk.testapp.robotium; + +import com.mapbox.mapboxsdk.camera.CameraUpdateFactory; +import com.mapbox.mapboxsdk.geometry.LatLng; +import com.mapbox.mapboxsdk.maps.MapboxMapUtils; + +import org.junit.Test; + +public class SimpleRotateTest { +// extends +//} BaseMainActivityTest { +// +// @Override +// public void setUp() throws Exception { +// super.setUp(); +// } +// +// @Test +// public void testRotate() { +// mapboxMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(47.376271, 8.539116), 15)); +// double rotation = 0; +// for (int i = 0; i < 180; i++) { +// rotation += 1; +// MapboxMapUtils.setDirection(mapView, rotation); +// solo.sleep(100); +// } +// } + +} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/SimpleZoomTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/SimpleZoomTest.java new file mode 100644 index 0000000000..bc8e9caac0 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/SimpleZoomTest.java @@ -0,0 +1,28 @@ +package com.mapbox.mapboxsdk.testapp.robotium; + +import com.mapbox.mapboxsdk.camera.CameraUpdateFactory; +import com.mapbox.mapboxsdk.constants.MapboxConstants; +import com.mapbox.mapboxsdk.geometry.LatLng; + +import org.junit.Test; + +public class SimpleZoomTest { +// extends +//} BaseMainActivityTest { +// +// @Override +// public void setUp() throws Exception { +// super.setUp(); +// } +// +// @Test +// public void testZoomIn() { +// float currentZoomlevel = MapboxConstants.MINIMUM_ZOOM; +// while (currentZoomlevel < MapboxConstants.MAXIMUM_ZOOM - 5) { +// mapboxMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(47.376271, 8.539116),currentZoomlevel)); +// currentZoomlevel++; +// solo.sleep(1400); +// } +// } + +} diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/utils/ViewAssertion.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/utils/ViewAssertion.java new file mode 100644 index 0000000000..74410cce50 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/robotium/utils/ViewAssertion.java @@ -0,0 +1,17 @@ +package com.mapbox.mapboxsdk.testapp.robotium.utils; + +import android.view.View; + +import static junit.framework.Assert.assertEquals; + +public class ViewAssertion { + + public static void isVisible(View view) { + assertEquals(view.getClass().getSimpleName() + " should be visible", view.getVisibility(), View.VISIBLE); + } + + public static void isInvisible(View view) { + assertEquals(view.getClass().getSimpleName() + " should be visible", view.getVisibility(), View.INVISIBLE); + } + +} |