5859 generate sanity tests (#5870)

* [android] #5859 - generate espresso tests

[android] #5859 - cleanup xml files, use all the same resource id for map view

[android] #5859 - update scripts

[android] #5859 - update Activity to match mapboxMap naming

[android] #5859 - make SurfaceViewMediaControlActivity compatible

[android] #5859 - make MarkerViewScaleActivity test generation compatible

[android] #5859 - make PolygonActivity test generation compatible

[android] #5859 - integration within make file

[android] #5859 - made CameraPostion generation safe

[android] #5859 - generate sanity test

[android] #5859 - add generated test cases

[android] #5859 - add documentation

* [android] #5859 - remove generated files, introduce gen package, added gitignore to package

* [android] #5859 - regenerated test code

* [android] #5859 - added AWS gradle plugin + bitrise configuration

* [android] #5859 - fixes running locally without having the properties configured

* [android] #6010 - remove python from android sdk

* [android] #5859 - update docs about aws gradle plugin
This commit is contained in:
Tobrun
2016-08-17 08:53:33 +02:00
committed by GitHub
parent 0062cf2f94
commit fff0ebaa17
98 changed files with 884 additions and 1412 deletions

View File

@@ -1,36 +0,0 @@
package com.mapbox.mapboxsdk.activity;
import android.app.Activity;
import android.support.test.espresso.Espresso;
import android.util.Log;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.constants.MapboxConstants;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.testapp.R;
import org.junit.After;
import org.junit.Before;
public abstract class BaseMapboxMapTest extends BaseTest {
private OnMapReadyIdlingResource idlingResource;
protected MapboxMap mapboxMap;
@Before
public void registerIdlingResource() {
Log.e(MapboxConstants.TAG, "@Before test");
idlingResource = new OnMapReadyIdlingResource(getActivity());
Espresso.registerIdlingResources(idlingResource);
checkViewIsDisplayed(R.id.mapView);
mapboxMap = idlingResource.getMapboxMap();
}
public abstract Activity getActivity();
@After
public void unregisterIdlingResource() {
Log.e(MapboxConstants.TAG, "@After test");
Espresso.unregisterIdlingResources(idlingResource);
}
}

View File

@@ -1,44 +1,62 @@
package com.mapbox.mapboxsdk.activity;
import android.app.Activity;
import android.support.test.espresso.Espresso;
import android.support.test.rule.ActivityTestRule;
import android.util.Log;
import com.mapbox.mapboxsdk.activity.utils.ScreenshotUtil;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.ScreenshotUtil;
import com.mapbox.mapboxsdk.constants.MapboxConstants;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.testapp.R;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import static android.support.test.espresso.Espresso.onView;
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.withId;
/**
* Base Espresso class for all tests, helps working with ActivityInstrumentationTestCase2
*/
public class BaseTest {
public abstract class BaseTest {
protected final static String HOME_BUTTON_STRING = "Navigate up";
@Rule
public ActivityTestRule<Activity> rule = new ActivityTestRule<>(getActivityClass());
protected MapboxMap mapboxMap;
protected OnMapReadyIdlingResource idlingResource;
/*
* Shortcuts for common UI tests
*/
@Before
public void beforeTest() {
Log.e(MapboxConstants.TAG, "@Before test: register idle resource");
idlingResource = new OnMapReadyIdlingResource(rule.getActivity());
Espresso.registerIdlingResources(idlingResource);
checkViewIsDisplayed(R.id.mapView);
mapboxMap = idlingResource.getMapboxMap();
}
protected abstract Class getActivityClass();
protected void checkViewIsDisplayed(int id) {
onView(withId(id))
.check(matches(isDisplayed()));
}
/*
* Screenshots logic
*/
protected void takeNamedScreenshot(final Activity activity, final String name) {
// Screenshots need to be taken on the UI thread
protected void takeScreenshot(final String name) {
final Activity activity = rule.getActivity();
activity.runOnUiThread(new Runnable() {
@Override
public void run() {
ScreenshotUtil.take(activity, name);
}
});
}
@After
public void afterTest() {
Log.e(MapboxConstants.TAG, "@After test: unregister idle resource");
Espresso.unregisterIdlingResources(idlingResource);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.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.annotation.BulkMarkerActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on BulkMarkerActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class BulkMarkerActivityTest extends BaseTest {
@Rule
public ActivityTestRule<BulkMarkerActivity> mActivityRule = new ActivityTestRule<>(
BulkMarkerActivity.class);
private BulkMarkerActivity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.activity;
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.directions.DirectionsActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on DirectionsActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class DirectionsActivityTest extends BaseTest {
@Rule
public ActivityTestRule<DirectionsActivity> mActivityRule = new ActivityTestRule<>(DirectionsActivity.class);
private Activity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,35 +0,0 @@
package com.mapbox.mapboxsdk.activity;
import android.support.test.rule.ActivityTestRule;
import android.support.test.runner.AndroidJUnit4;
import android.test.suitebuilder.annotation.LargeTest;
import com.mapbox.mapboxsdk.activity.utils.ViewUtils;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.annotation.DynamicMarkerChangeActivity;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on DynamicMarkerChange
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class DynamicMarkerChangeActivityTest extends BaseTest {
@Rule
public ActivityTestRule<DynamicMarkerChangeActivity> mActivityRule = new ActivityTestRule<>(
DynamicMarkerChangeActivity.class);
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
@Test
public void testFabClick() {
ViewUtils.clickView(R.id.fab);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.activity;
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.geocoding.GeocoderActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on GeocoderActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class GeocoderActivityTest extends BaseTest {
@Rule
public ActivityTestRule<GeocoderActivity> mActivityRule = new ActivityTestRule<>(GeocoderActivity.class);
private Activity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.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.infowindow.InfoWindowActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on InfoWindowActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class InfoWindowActivityTest extends BaseTest {
@Rule
public ActivityTestRule<InfoWindowActivity> mActivityRule = new ActivityTestRule<>(
InfoWindowActivity.class);
private InfoWindowActivity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.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.infowindow.InfoWindowAdapterActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on InfoWindowAdapterActivity.
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class InfoWindowAdapterActivityTest extends BaseTest {
@Rule
public ActivityTestRule<InfoWindowAdapterActivity> mActivityRule = new ActivityTestRule<>(
InfoWindowAdapterActivity.class);
private InfoWindowAdapterActivity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.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.camera.LatLngBoundsActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on LatLngBoundsActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class LatLngBoundsActivityTest extends BaseTest {
@Rule
public ActivityTestRule<LatLngBoundsActivity> mActivityRule = new ActivityTestRule<>(
LatLngBoundsActivity.class);
private LatLngBoundsActivity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.activity;
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.camera.ManualZoomActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on ManualZoomActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class ManualZoomActivityTest extends BaseTest {
@Rule
public ActivityTestRule<ManualZoomActivity> mActivityRule = new ActivityTestRule<>(ManualZoomActivity.class);
private Activity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.manualZoomMapView);
}
}

View File

@@ -1,39 +0,0 @@
package com.mapbox.mapboxsdk.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.MapFragmentActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on MapFragmentActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class MapFragmentActivityTest extends BaseTest {
@Rule
public ActivityTestRule<MapFragmentActivity> mActivityRule = new ActivityTestRule<>(
MapFragmentActivity.class);
private MapFragmentActivity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.fragment_container);
}
// FIXME need a way to check if fragment was correctly added to Activity
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.activity;
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.maplayout.MapPaddingActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on MapPaddingActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class MapPaddingActivityTest extends BaseTest {
@Rule
public ActivityTestRule<MapPaddingActivity> mActivityRule = new ActivityTestRule<>(MapPaddingActivity.class);
private Activity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.activity;
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.camera.MaxMinZoomActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on MaxMinZoomActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class MaxMinZoomActivityTest extends BaseTest {
@Rule
public ActivityTestRule<MaxMinZoomActivity> mActivityRule = new ActivityTestRule<>(MaxMinZoomActivity.class);
private Activity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,36 +0,0 @@
package com.mapbox.mapboxsdk.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.userlocation.MyLocationTrackingModeActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on User LocationTrackingModeActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class MyLocationTrackingModeActivityTest extends BaseTest {
@Rule
public ActivityTestRule<MyLocationTrackingModeActivity> mActivityRule = new ActivityTestRule<>(MyLocationTrackingModeActivity.class);
private MyLocationTrackingModeActivity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,37 +0,0 @@
package com.mapbox.mapboxsdk.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.annotation.PolylineActivity;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on PolyLineActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class PolylineActivityTest extends BaseTest {
@Rule
public ActivityTestRule<PolylineActivity> mActivityRule = new ActivityTestRule<>(
PolylineActivity.class);
private PolylineActivity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,29 +0,0 @@
package com.mapbox.mapboxsdk.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.camera.ScrollByActivity;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Tests on ScrollByActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class ScrollByActivityTest extends BaseTest {
@Rule
public ActivityTestRule<ScrollByActivity> mActivityRule = new ActivityTestRule<>(ScrollByActivity.class);
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.mapView);
}
}

View File

@@ -1,38 +0,0 @@
package com.mapbox.mapboxsdk.activity;
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;
import org.junit.runner.RunWith;
/**
* Tests on SupportMapFragmentActivity
*/
@RunWith(AndroidJUnit4.class)
@LargeTest
public class SupportMapFragmentActivityTest extends BaseTest {
@Rule
public ActivityTestRule<SupportMapFragmentActivity> mActivityRule = new ActivityTestRule<>(SupportMapFragmentActivity.class);
private Activity mActivity = null;
@Before
public void setActivity() {
mActivity = mActivityRule.getActivity();
}
@Test
public void testSanity() {
checkViewIsDisplayed(R.id.fragment_container);
}
}

View File

@@ -0,0 +1,37 @@
<%
const activity = locals[0];
const subPackage = locals[1];
-%>
// This file is generated. Edit android/platform/scripts/generate-test-code.js, then run `make generate-test-android`.
package com.mapbox.mapboxsdk.activity.gen.<%- subPackage %>;
import android.support.test.runner.AndroidJUnit4;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.<%- subPackage %>.<%- activity %>;
import org.junit.Test;
import org.junit.runner.RunWith;
import static android.support.test.espresso.Espresso.onView;
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.withId;
/**
* Sanity test for <%- activity %>
*/
@RunWith(AndroidJUnit4.class)
public class <%- activity %>Test extends BaseTest {
@Test
public void testSanity() {
onView(withId(R.id.mapView)).check(matches(isDisplayed()));
}
@Override
protected Class getActivityClass() {
return <%- activity %>.class;
}
}

View File

@@ -1,38 +1,33 @@
package com.mapbox.mapboxsdk.camera;
import android.app.Activity;
import android.support.test.espresso.UiController;
import android.support.test.espresso.ViewAction;
import android.support.test.rule.ActivityTestRule;
import android.view.View;
import com.mapbox.mapboxsdk.activity.BaseMapboxMapTest;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.maps.MapView;
import com.mapbox.mapboxsdk.maps.MapboxMapUtils;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.infowindow.InfoWindowActivity;
import org.hamcrest.Matcher;
import org.junit.Rule;
import org.junit.Test;
import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
import static android.support.test.espresso.matcher.ViewMatchers.withId;
public class RotateTest extends BaseMapboxMapTest {
@Rule
public final ActivityTestRule<InfoWindowActivity> rule = new ActivityTestRule<>(InfoWindowActivity.class);
public class RotateTest extends BaseTest {
@Test
// longer testing change second param
public void testRotate() {
onView(withId(R.id.mapView)).perform(new RotateAction(0, 180));
onView(withId(R.id.mapView)).perform(new RotateAction(0, 1));
}
@Override
public Activity getActivity() {
return rule.getActivity();
public Class getActivityClass() {
return InfoWindowActivity.class;
}
private class RotateAction implements ViewAction {

View File

@@ -1,38 +1,33 @@
package com.mapbox.mapboxsdk.camera;
import android.app.Activity;
import android.support.test.espresso.UiController;
import android.support.test.espresso.ViewAction;
import android.support.test.rule.ActivityTestRule;
import android.view.View;
import com.mapbox.mapboxsdk.activity.BaseMapboxMapTest;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.maps.MapView;
import com.mapbox.mapboxsdk.maps.MapboxMapUtils;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.annotation.DynamicMarkerChangeActivity;
import org.hamcrest.Matcher;
import org.junit.Rule;
import org.junit.Test;
import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
import static android.support.test.espresso.matcher.ViewMatchers.withId;
public class TiltTest extends BaseMapboxMapTest {
@Rule
public final ActivityTestRule<DynamicMarkerChangeActivity> rule = new ActivityTestRule<>(DynamicMarkerChangeActivity.class);
public class TiltTest extends BaseTest {
@Test
// longer testing change param
public void testTilt() {
onView(withId(R.id.mapView)).perform(new TiltAction(0, 60));
onView(withId(R.id.mapView)).perform(new TiltAction(0, 1));
}
@Override
public Activity getActivity() {
return rule.getActivity();
public Class getActivityClass() {
return DynamicMarkerChangeActivity.class;
}
private class TiltAction implements ViewAction {

View File

@@ -1,38 +1,33 @@
package com.mapbox.mapboxsdk.camera;
import android.app.Activity;
import android.support.test.espresso.UiController;
import android.support.test.espresso.ViewAction;
import android.support.test.rule.ActivityTestRule;
import android.view.View;
import com.mapbox.mapboxsdk.activity.BaseMapboxMapTest;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.constants.MapboxConstants;
import com.mapbox.mapboxsdk.geometry.LatLng;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.maplayout.DebugModeActivity;
import org.hamcrest.Matcher;
import org.junit.Rule;
import org.junit.Test;
import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
import static android.support.test.espresso.matcher.ViewMatchers.withId;
public class ZoomTest extends BaseMapboxMapTest {
@Rule
public final ActivityTestRule<DebugModeActivity> rule = new ActivityTestRule<>(DebugModeActivity.class);
public class ZoomTest extends BaseTest {
@Test
// longer testing increase second param
public void testZoom() throws Exception {
onView(withId(R.id.mapView)).perform(new ZoomAction(MapboxConstants.MINIMUM_ZOOM, MapboxConstants.MAXIMUM_ZOOM));
onView(withId(R.id.mapView)).perform(new ZoomAction(MapboxConstants.MINIMUM_ZOOM, MapboxConstants.MINIMUM_ZOOM - 1));
}
@Override
public Activity getActivity() {
return rule.getActivity();
public Class getActivityClass() {
return DebugModeActivity.class;
}
private class ZoomAction implements ViewAction {

View File

@@ -1,7 +1,7 @@
package com.mapbox.mapboxsdk.maps;
/**
* Utility class to fetch a MapboxMap instance by bypassing package visibility
* Utility class to bypass package visibility
*/
public class MapboxMapUtils {

View File

@@ -11,8 +11,7 @@ import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.style.layers.BackgroundLayer;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTestActivity;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import org.junit.After;
import org.junit.Before;
@@ -25,7 +24,7 @@ import static com.mapbox.mapboxsdk.style.layers.Property.*;
import static com.mapbox.mapboxsdk.style.layers.PropertyFactory.*;
/**
* Basic smoke tests for BackgroundLayera
* Basic smoke tests for BackgroundLayer
*/
@RunWith(AndroidJUnit4.class)
public class BackgroundLayerTest extends BaseTest {

View File

@@ -0,0 +1,44 @@
package com.mapbox.mapboxsdk.style;
import android.app.Activity;
import com.mapbox.mapboxsdk.utils.ScreenshotUtil;
import static android.support.test.espresso.Espresso.onView;
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.withId;
/**
* Base Espresso class for all tests, helps working with ActivityInstrumentationTestCase2
*/
public class BaseTest {
protected final static String HOME_BUTTON_STRING = "Navigate up";
/*
* Shortcuts for common UI tests
*/
protected void checkViewIsDisplayed(int id) {
onView(withId(id))
.check(matches(isDisplayed()));
}
/*
* Screenshots logic
*/
protected void takeNamedScreenshot(final Activity activity, final String name) {
// Screenshots need to be taken on the UI thread
activity.runOnUiThread(new Runnable() {
@Override
public void run() {
ScreenshotUtil.take(activity, name);
}
});
}
}

View File

@@ -11,8 +11,7 @@ import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.style.layers.CircleLayer;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTestActivity;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import org.junit.After;
import org.junit.Before;
@@ -25,7 +24,7 @@ import static com.mapbox.mapboxsdk.style.layers.Property.*;
import static com.mapbox.mapboxsdk.style.layers.PropertyFactory.*;
/**
* Basic smoke tests for CircleLayera
* Basic smoke tests for CircleLayer
*/
@RunWith(AndroidJUnit4.class)
public class CircleLayerTest extends BaseTest {

View File

@@ -11,8 +11,7 @@ import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.style.layers.FillLayer;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTestActivity;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import org.junit.After;
import org.junit.Before;
@@ -25,7 +24,7 @@ import static com.mapbox.mapboxsdk.style.layers.Property.*;
import static com.mapbox.mapboxsdk.style.layers.PropertyFactory.*;
/**
* Basic smoke tests for FillLayera
* Basic smoke tests for FillLayer
*/
@RunWith(AndroidJUnit4.class)
public class FillLayerTest extends BaseTest {

View File

@@ -11,8 +11,7 @@ import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.style.layers.LineLayer;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTestActivity;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import org.junit.After;
import org.junit.Before;
@@ -25,7 +24,7 @@ import static com.mapbox.mapboxsdk.style.layers.Property.*;
import static com.mapbox.mapboxsdk.style.layers.PropertyFactory.*;
/**
* Basic smoke tests for LineLayera
* Basic smoke tests for LineLayer
*/
@RunWith(AndroidJUnit4.class)
public class LineLayerTest extends BaseTest {

View File

@@ -11,8 +11,7 @@ import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.style.layers.RasterLayer;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTestActivity;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import org.junit.After;
import org.junit.Before;
@@ -25,7 +24,7 @@ import static com.mapbox.mapboxsdk.style.layers.Property.*;
import static com.mapbox.mapboxsdk.style.layers.PropertyFactory.*;
/**
* Basic smoke tests for RasterLayera
* Basic smoke tests for RasterLayer
*/
@RunWith(AndroidJUnit4.class)
public class RasterLayerTest extends BaseTest {

View File

@@ -10,8 +10,7 @@ import com.mapbox.mapboxsdk.style.layers.NoSuchLayerException;
import com.mapbox.mapboxsdk.style.layers.Property;
import com.mapbox.mapboxsdk.style.layers.PropertyFactory;
import com.mapbox.mapboxsdk.style.sources.VectorSource;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTestActivity;

View File

@@ -4,8 +4,7 @@ import android.support.test.espresso.Espresso;
import android.support.test.rule.ActivityTestRule;
import android.support.test.runner.AndroidJUnit4;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTimingTestActivity;

View File

@@ -11,8 +11,7 @@ import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.style.layers.SymbolLayer;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTestActivity;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import org.junit.After;
import org.junit.Before;
@@ -25,7 +24,7 @@ import static com.mapbox.mapboxsdk.style.layers.Property.*;
import static com.mapbox.mapboxsdk.style.layers.PropertyFactory.*;
/**
* Basic smoke tests for SymbolLayera
* Basic smoke tests for SymbolLayer
*/
@RunWith(AndroidJUnit4.class)
public class SymbolLayerTest extends BaseTest {

View File

@@ -15,8 +15,7 @@ import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.style.layers.<%- camelize(type) %>Layer;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.activity.style.RuntimeStyleTestActivity;
import com.mapbox.mapboxsdk.activity.BaseTest;
import com.mapbox.mapboxsdk.activity.utils.OnMapReadyIdlingResource;
import com.mapbox.mapboxsdk.utils.OnMapReadyIdlingResource;
import org.junit.After;
import org.junit.Before;
@@ -29,7 +28,7 @@ import static com.mapbox.mapboxsdk.style.layers.Property.*;
import static com.mapbox.mapboxsdk.style.layers.PropertyFactory.*;
/**
* Basic smoke tests for <%- camelize(type) %>Layera
* Basic smoke tests for <%- camelize(type) %>Layer
*/
@RunWith(AndroidJUnit4.class)
public class <%- camelize(type) %>LayerTest extends BaseTest {

View File

@@ -1,4 +1,4 @@
package com.mapbox.mapboxsdk.activity.utils;
package com.mapbox.mapboxsdk.utils;
import android.support.annotation.StringRes;
import android.support.test.espresso.Espresso;

View File

@@ -1,4 +1,4 @@
package com.mapbox.mapboxsdk.activity.utils;
package com.mapbox.mapboxsdk.utils;
import android.app.Activity;
import android.support.test.espresso.IdlingResource;

View File

@@ -1,4 +1,4 @@
package com.mapbox.mapboxsdk.activity.utils;
package com.mapbox.mapboxsdk.utils;
import android.app.Activity;
import android.graphics.Bitmap;

View File

@@ -1,4 +1,4 @@
package com.mapbox.mapboxsdk.activity.utils;
package com.mapbox.mapboxsdk.utils;
import android.support.annotation.IdRes;