TrackRecordingService: move BluetoothRemoteSensorManager and AltitudeSumManager to HandlerServer.

Part of #822.
This commit is contained in:
Dennis Guse
2021-07-12 21:22:28 +02:00
parent 7f618da7a6
commit 223ad70d36
7 changed files with 101 additions and 82 deletions
@@ -406,13 +406,14 @@ public class TrackRecordingServiceTest {
/**
* Inserts a location and waits for 200ms.
*/
private static void newTrackPoint(TrackRecordingService trackRecordingService, double latitude, double longitude, float accuracy, long speed, long time) {
private static void newTrackPoint(TrackRecordingService trackRecordingService, double latitude, double longitude, float accuracy, long speed, long time) throws InterruptedException {
TrackPoint trackPoint = new TrackPoint(TrackPoint.Type.TRACKPOINT, Instant.ofEpochMilli(time))
.setLongitude(longitude)
.setLatitude(latitude)
.setAccuracy(accuracy)
.setSpeed(Speed.of(speed))
.setBearing(3.0f);
trackRecordingService.newTrackPoint(trackPoint, 50);
trackRecordingService.getHandlerServer().onNewTrackPoint(trackPoint, 50);
}
}
@@ -95,6 +95,7 @@ public class TrackRecordingServiceTestLocation {
service = ((TrackRecordingService.Binder) mServiceRule.bindService(TrackRecordingServiceTest.createStartIntent(context)))
.getService();
service.stopProcessingGPS();
}
@After
@@ -108,7 +109,7 @@ public class TrackRecordingServiceTestLocation {
public void testOnLocationChangedAsync_movingAccurate() throws Exception {
// given
Track.Id trackId = service.startNewTrack();
service.setAltitudeSumManager(altitudeSumManager);
service.getHandlerServer().setAltitudeSumManager(altitudeSumManager);
// when
TrackRecordingServiceTest.newTrackPoint(service, 45.0, 35.0, 1, 15);
@@ -181,7 +182,7 @@ public class TrackRecordingServiceTestLocation {
public void testOnLocationChangedAsync_slowMovingAccurate() throws Exception {
// given
Track.Id trackId = service.startNewTrack();
service.setAltitudeSumManager(altitudeSumManager);
service.getHandlerServer().setAltitudeSumManager(altitudeSumManager);
// when
TrackRecordingServiceTest.newTrackPoint(service, 45.0, 35.0, 1, 15);
@@ -226,7 +227,7 @@ public class TrackRecordingServiceTestLocation {
public void testOnLocationChangedAsync_idle() throws Exception {
// given
Track.Id trackId = service.startNewTrack();
service.setAltitudeSumManager(altitudeSumManager);
service.getHandlerServer().setAltitudeSumManager(altitudeSumManager);
// when
TrackRecordingServiceTest.newTrackPoint(service, 45.0, 35.0, 1, 0);
@@ -278,7 +279,8 @@ public class TrackRecordingServiceTestLocation {
public void testOnLocationChangedAsync_idle_withMovement() throws Exception {
// given
Track.Id trackId = service.startNewTrack();
service.setAltitudeSumManager(altitudeSumManager);
service.getHandlerServer().setAltitudeSumManager(altitudeSumManager);
service.getHandlerServer().stopGPS();
// when
TrackRecordingServiceTest.newTrackPoint(service, 45.0, 35.0, 1, 15);
@@ -337,8 +339,8 @@ public class TrackRecordingServiceTestLocation {
public void testOnLocationChangedAsync_idle_withSensorData() throws Exception {
// given
Track.Id trackId = service.startNewTrack();
service.setAltitudeSumManager(altitudeSumManager);
service.setRemoteSensorManager(new BluetoothRemoteSensorManager(context) {
service.getHandlerServer().setAltitudeSumManager(altitudeSumManager);
service.getHandlerServer().setRemoteSensorManager(new BluetoothRemoteSensorManager(context) {
@Override
public boolean isEnabled() {
@@ -346,10 +348,11 @@ public class TrackRecordingServiceTestLocation {
}
@Override
public void fill(@NonNull TrackPoint trackPoint) {
public SensorDataSet fill(@NonNull TrackPoint trackPoint) {
SensorDataSet sensorDataSet = new SensorDataSet();
sensorDataSet.set(new SensorDataHeartRate("sensorName", "sensorAddress", 5f));
sensorDataSet.fillTrackPoint(trackPoint);
return sensorDataSet;
}
});
@@ -431,7 +434,7 @@ public class TrackRecordingServiceTestLocation {
public void testOnLocationChangedAsync_segment() throws Exception {
// given
Track.Id trackId = service.startNewTrack();
service.setAltitudeSumManager(altitudeSumManager);
service.getHandlerServer().setAltitudeSumManager(altitudeSumManager);
// when
TrackRecordingServiceTest.newTrackPoint(service, 45.0, 35.0, 1, 0);
@@ -5,6 +5,7 @@ import android.content.SharedPreferences;
import org.junit.After;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -42,15 +43,7 @@ public class HandlerServerTest {
subject.stop();
}
@Test
public void onSharedPreferenceChanged() {
// when
subject.onSharedPreferenceChanged(context, sharedPreferences, null);
// then
verify(locationHandler).onSharedPreferenceChanged(context, sharedPreferences, null);
}
@Ignore("ServiceExecutor disabled for #822")
@Test
public void sendTrackPoint() throws InterruptedException {
// given