mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-27 06:17:27 +00:00
TRACKING APP: fixes
This commit is contained in:
1 parent
34508b883e
commit
1a232aad98
12 files changed
+34
-72
No files matched your search
@@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.sap.sailing.android.tracking.app.test"
|
||||
android:versionCode="1"
|
||||
android:versionName="1.0" >
|
||||
|
||||
<uses-sdk android:minSdkVersion="14" />
|
||||
|
||||
<instrumentation
|
||||
android:name="android.test.InstrumentationTestRunner"
|
||||
android:targetPackage="com.sap.sailing.android.tracking.app" />
|
||||
|
||||
<application
|
||||
android:icon="@drawable/ic_launcher"
|
||||
android:label="@string/app_name" >
|
||||
<uses-library android:name="android.test.runner" />
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
+16
-12
@@ -3,7 +3,6 @@ package com.sap.sailing.android.tracking.app.test;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
|
||||
import org.json.JSONObject;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
import org.mockito.Mockito;
|
||||
|
||||
@@ -15,7 +14,7 @@ import android.test.ServiceTestCase;
|
||||
import com.sap.sailing.android.tracking.app.R;
|
||||
import com.sap.sailing.android.tracking.app.services.TrackingService;
|
||||
import com.sap.sailing.android.tracking.app.services.TrackingService.GPSQuality;
|
||||
import com.sap.sailing.android.tracking.app.ui.activities.TrackingActivity;
|
||||
import com.sap.sailing.android.tracking.app.services.TrackingService.GPSQualityListener;
|
||||
import com.sap.sailing.android.tracking.app.valueobjects.GpsFix;
|
||||
|
||||
public class TrackingServiceTest extends ServiceTestCase<TrackingService> {
|
||||
@@ -23,8 +22,6 @@ public class TrackingServiceTest extends ServiceTestCase<TrackingService> {
|
||||
static final String TAG = TrackingServiceTest.class.getName();
|
||||
final String eventId = "test123";
|
||||
long eventRowId;
|
||||
// static final String GPS_MOCK_PROVIDER_NAME = "TestProvider";
|
||||
|
||||
public TrackingServiceTest() {
|
||||
super(TrackingService.class);
|
||||
}
|
||||
@@ -32,16 +29,15 @@ public class TrackingServiceTest extends ServiceTestCase<TrackingService> {
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
System.setProperty("dexmaker.dexcache", getContext().getCacheDir().toString());
|
||||
DatabaseTestHelper.deleteAllGpsFixesFromDB(getContext());
|
||||
DatabaseTestHelper.deleteAllEventsFromDB(getContext());
|
||||
eventRowId = DatabaseTestHelper.createNewEventInDBAndReturnItsId(getContext(), "test123", eventId);
|
||||
// createGpsTestProvider();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void tearDown() throws Exception {
|
||||
super.tearDown();
|
||||
// removeGpsTestProvider();
|
||||
}
|
||||
|
||||
private void startService()
|
||||
@@ -108,26 +104,26 @@ public class TrackingServiceTest extends ServiceTestCase<TrackingService> {
|
||||
|
||||
|
||||
public void testReportsGpsQualityGreat() {
|
||||
TrackingActivity listener = Mockito.mock(TrackingActivity.class);
|
||||
MockGpsListener listener = Mockito.spy(new MockGpsListener());
|
||||
ArgumentCaptor<GPSQuality> gpsQualityCaptor = ArgumentCaptor.forClass(GPSQuality.class);
|
||||
ArgumentCaptor<Integer> accuracyCaptor = ArgumentCaptor.forClass(Integer.class);
|
||||
ArgumentCaptor<Float> accuracyCaptor = ArgumentCaptor.forClass(Float.class);
|
||||
ArgumentCaptor<Float> bearingCaptor = ArgumentCaptor.forClass(Float.class);
|
||||
ArgumentCaptor<Float> speedCaptor = ArgumentCaptor.forClass(Float.class);
|
||||
|
||||
startService();
|
||||
TrackingService service = getService();
|
||||
service.registerGPSQualityListener(listener);
|
||||
|
||||
getService().onLocationChanged(getTestLocation(2, 12.5f, 123));
|
||||
|
||||
Mockito.verify(listener, Mockito.times(1))
|
||||
.gpsQualityAndAccurracyUpdated(gpsQualityCaptor.capture(),
|
||||
accuracyCaptor.capture(), bearingCaptor.capture(),
|
||||
speedCaptor.capture());
|
||||
|
||||
getService().onLocationChanged(getTestLocation(2, 12.5f, 123));
|
||||
|
||||
assertEquals(GPSQuality.great, gpsQualityCaptor.getValue());
|
||||
assertEquals(2, accuracyCaptor.getValue().floatValue());
|
||||
assertEquals(123, bearingCaptor.getValue().floatValue());
|
||||
assertEquals(2f, accuracyCaptor.getValue().floatValue());
|
||||
assertEquals(123f, bearingCaptor.getValue().floatValue());
|
||||
assertEquals(12.5f, speedCaptor.getValue().floatValue());
|
||||
|
||||
shutdownService();
|
||||
@@ -145,4 +141,12 @@ public class TrackingServiceTest extends ServiceTestCase<TrackingService> {
|
||||
location.setBearing(bearing);
|
||||
return location;
|
||||
}
|
||||
|
||||
public class MockGpsListener implements GPSQualityListener
|
||||
{
|
||||
@Override
|
||||
public void gpsQualityAndAccurracyUpdated(GPSQuality quality,
|
||||
float gpsAccurracy, float gpsBearing, float gpsSpeed) {
|
||||
}
|
||||
}
|
||||
}
|
||||
+10
-13
@@ -15,11 +15,9 @@ import com.android.volley.Response.ErrorListener;
|
||||
import com.android.volley.Response.Listener;
|
||||
import com.sap.sailing.android.tracking.app.R;
|
||||
import com.sap.sailing.android.tracking.app.services.TrackingService;
|
||||
import com.sap.sailing.android.tracking.app.services.TrackingService.GPSQualityListener;
|
||||
import com.sap.sailing.android.tracking.app.services.TransmittingService;
|
||||
import com.sap.sailing.android.tracking.app.ui.activities.TrackingActivity;
|
||||
import com.sap.sailing.android.tracking.app.utils.DatabaseHelper;
|
||||
import com.sap.sailing.android.tracking.app.utils.VolleyHelper;
|
||||
import com.sap.sailing.android.tracking.app.test.extensions.DatabaseHelperTestable;
|
||||
import com.sap.sailing.android.tracking.app.test.extensions.VolleyHelperTestable;
|
||||
import com.sap.sailing.android.tracking.app.valueobjects.GpsFix;
|
||||
|
||||
public class TransmittingServiceTest extends ServiceTestCase<TransmittingService> {
|
||||
@@ -27,8 +25,8 @@ public class TransmittingServiceTest extends ServiceTestCase<TransmittingService
|
||||
static final String TAG = TransmittingServiceTest.class.getName();
|
||||
final String eventId = "test123";
|
||||
|
||||
private VolleyHelper volleyHelperSpy;
|
||||
private DatabaseHelper databaseHelperMock;
|
||||
private VolleyHelperTestable volleyHelperSpy;
|
||||
private DatabaseHelperTestable databaseHelperMock;
|
||||
|
||||
public TransmittingServiceTest() {
|
||||
super(TransmittingService.class);
|
||||
@@ -37,22 +35,21 @@ public class TransmittingServiceTest extends ServiceTestCase<TransmittingService
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
System.setProperty( "dexmaker.dexcache", getContext().getCacheDir().getPath() );
|
||||
System.setProperty("dexmaker.dexcache", getContext().getCacheDir().toString());
|
||||
DatabaseTestHelper.deleteAllEventsFromDB(getContext());
|
||||
DatabaseTestHelper.deleteAllGpsFixesFromDB(getContext());
|
||||
|
||||
if (volleyHelperSpy == null)
|
||||
{
|
||||
VolleyHelper.injectInstance(null);
|
||||
volleyHelperSpy = Mockito.spy(VolleyHelper.getInstance(getContext()));
|
||||
VolleyHelper.injectInstance(volleyHelperSpy);
|
||||
VolleyHelperTestable.injectInstance(null);
|
||||
volleyHelperSpy = Mockito.spy(new VolleyHelperTestable(getContext()));
|
||||
VolleyHelperTestable.injectInstance(volleyHelperSpy);
|
||||
}
|
||||
|
||||
if (databaseHelperMock == null)
|
||||
{
|
||||
DatabaseHelper.injectInstance(null);
|
||||
databaseHelperMock = Mockito.mock(DatabaseHelper.class);
|
||||
DatabaseHelper.injectInstance(databaseHelperMock);
|
||||
databaseHelperMock = Mockito.mock(DatabaseHelperTestable.class);
|
||||
DatabaseHelperTestable.injectInstance(databaseHelperMock);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -544,8 +544,8 @@ public class TransmittingService extends Service {
|
||||
public enum APIConnectivity {
|
||||
notReachable (0),
|
||||
reachableTransmissionSuccess (1),
|
||||
reachableTransmissionError(2),
|
||||
noAttempt(4);
|
||||
reachableTransmissionError (2),
|
||||
noAttempt (4);
|
||||
|
||||
private final int apiConnectivity;
|
||||
|
||||
|
||||
+3
-14
@@ -28,10 +28,10 @@ public class DatabaseHelper {
|
||||
|
||||
private final static String TAG = DatabaseHelper.class.getName();
|
||||
|
||||
private static DatabaseHelper mInstance;
|
||||
private Context mContext;
|
||||
protected static DatabaseHelper mInstance;
|
||||
protected Context mContext;
|
||||
|
||||
private DatabaseHelper(Context context) {
|
||||
protected DatabaseHelper(Context context) {
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
@@ -266,15 +266,4 @@ public class DatabaseHelper {
|
||||
ExLog.i(mContext, TAG, "Checkout, number of leaderbards deleted: " + d3);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* for testing.
|
||||
*
|
||||
* @param instance
|
||||
*/
|
||||
public static void injectInstance(DatabaseHelper instance) {
|
||||
mInstance = instance;
|
||||
}
|
||||
}
|
||||
+3
-12
@@ -16,12 +16,12 @@ public class VolleyHelper extends Application {
|
||||
|
||||
private static final String TAG = VolleyHelper.class.getName();
|
||||
|
||||
private Context mContext;
|
||||
protected Context mContext;
|
||||
private RequestQueue mRequestQueue;
|
||||
|
||||
private static VolleyHelper mInstance;
|
||||
protected static VolleyHelper mInstance;
|
||||
|
||||
private VolleyHelper(Context context) {
|
||||
protected VolleyHelper(Context context) {
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
@@ -61,13 +61,4 @@ public class VolleyHelper extends Application {
|
||||
mRequestQueue.cancelAll((tag == null) ? TAG : tag);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* for testing.
|
||||
* @param instance
|
||||
*/
|
||||
public static void injectInstance(VolleyHelper instance)
|
||||
{
|
||||
mInstance = instance;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user