@josuelmm/cordova-background-geolocation 4.2.3 → 4.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.npmignore +11 -0
- package/CHANGELOG.md +261 -0
- package/README.md +306 -115
- package/android/CDVBackgroundGeolocation/src/main/java/com/marianhello/bgloc/cordova/ConfigMapper.java +34 -0
- package/android/CDVBackgroundGeolocation/src/main/java/com/tenforwardconsulting/bgloc/cordova/BackgroundGeolocationPlugin.java +61 -1
- package/android/common/src/main/AndroidManifest.xml +1 -1
- package/android/common/src/main/java/com/marianhello/bgloc/BootCompletedReceiver.java +20 -3
- package/android/common/src/main/java/com/marianhello/bgloc/Config.java +87 -1
- package/android/common/src/main/java/com/marianhello/bgloc/data/BackgroundLocation.java +94 -0
- package/android/common/src/main/java/com/marianhello/bgloc/data/ConfigJsonMapper.java +211 -0
- package/android/common/src/main/java/com/marianhello/bgloc/data/LocationTemplateFactory.java +6 -0
- package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationContract.java +5 -1
- package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationDAO.java +32 -1
- package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationContract.java +12 -2
- package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationDAO.java +33 -2
- package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteOpenHelper.java +15 -1
- package/android/common/src/main/java/com/marianhello/bgloc/provider/AbstractLocationProvider.java +48 -1
- package/android/common/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java +105 -6
- package/android/common/src/main/java/com/marianhello/bgloc/provider/DistanceFilterLocationProvider.java +336 -250
- package/android/common/src/main/java/com/marianhello/bgloc/provider/RawLocationProvider.java +69 -19
- package/android/common/src/main/java/com/marianhello/bgloc/service/LocationServiceImpl.java +246 -21
- package/android/common/src/main/java/com/marianhello/bgloc/service/LocationServiceProxy.java +5 -2
- package/android/common/src/main/java/com/marianhello/bgloc/sync/BatchManager.java +46 -13
- package/ios/CDVBackgroundGeolocation/CDVBackgroundGeolocation.m +23 -1
- package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.m +208 -70
- package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.m +132 -5
- package/ios/common/BackgroundGeolocation/MAURBackgroundSync.m +20 -0
- package/ios/common/BackgroundGeolocation/MAURConfig.h +7 -0
- package/ios/common/BackgroundGeolocation/MAURConfig.m +37 -2
- package/ios/common/BackgroundGeolocation/MAURConfigurationContract.h +3 -0
- package/ios/common/BackgroundGeolocation/MAURConfigurationContract.m +3 -1
- package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.m +10 -1
- package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.m +15 -1
- package/ios/common/BackgroundGeolocation/MAURLocation.h +12 -0
- package/ios/common/BackgroundGeolocation/MAURLocation.m +33 -4
- package/ios/common/BackgroundGeolocation/MAURLocationContract.h +4 -0
- package/ios/common/BackgroundGeolocation/MAURLocationContract.m +5 -1
- package/ios/common/BackgroundGeolocation/MAURLocationManager.m +19 -1
- package/ios/common/BackgroundGeolocation/MAURPostLocationTask.h +9 -0
- package/ios/common/BackgroundGeolocation/MAURPostLocationTask.m +59 -1
- package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.m +10 -1
- package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.m +54 -4
- package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.h +12 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.m +125 -5
- package/package.json +31 -1
- package/plugin.xml +3 -10
- package/www/BackgroundGeolocation.d.ts +143 -3
- package/www/BackgroundGeolocation.js +11 -4
- package/CLAUDE.md +0 -56
- package/HISTORY.md +0 -871
- package/android/CDVBackgroundGeolocation/src/test/java/com/marianhello/ConfigMapperTest.java +0 -220
- package/android/common/src/androidTest/java/com/marianhello/bgloc/BackgroundGeolocationFacadeTest.java +0 -45
- package/android/common/src/androidTest/java/com/marianhello/bgloc/BatchManagerTest.java +0 -570
- package/android/common/src/androidTest/java/com/marianhello/bgloc/ConfigTest.java +0 -76
- package/android/common/src/androidTest/java/com/marianhello/bgloc/ContentProviderLocationDAOTest.java +0 -437
- package/android/common/src/androidTest/java/com/marianhello/bgloc/DBLogReaderTest.java +0 -95
- package/android/common/src/androidTest/java/com/marianhello/bgloc/LocationContentProviderTest.java +0 -159
- package/android/common/src/androidTest/java/com/marianhello/bgloc/LocationServiceProxyTest.java +0 -161
- package/android/common/src/androidTest/java/com/marianhello/bgloc/LocationServiceTest.java +0 -247
- package/android/common/src/androidTest/java/com/marianhello/bgloc/SQLiteConfigurationDAOTest.java +0 -200
- package/android/common/src/androidTest/java/com/marianhello/bgloc/SQLiteLocationDAOTest.java +0 -457
- package/android/common/src/androidTest/java/com/marianhello/bgloc/SQLiteLocationDAOThreadTest.java +0 -96
- package/android/common/src/androidTest/java/com/marianhello/bgloc/SQLiteOpenHelperTest.java +0 -225
- package/android/common/src/androidTest/java/com/marianhello/bgloc/TestPluginDelegate.java +0 -46
- package/android/common/src/androidTest/java/com/marianhello/bgloc/TestResourceResolver.java +0 -14
- package/android/common/src/androidTest/java/com/marianhello/bgloc/provider/MockLocationProvider.java +0 -50
- package/android/common/src/androidTest/java/com/marianhello/bgloc/provider/TestLocationProviderFactory.java +0 -17
- package/android/common/src/androidTest/java/com/marianhello/bgloc/sqlite/SQLiteOpenHelper10.java +0 -92
- package/android/common/src/androidTest/java/com/marianhello/bgloc/test/LocationProviderTestCase.java +0 -107
- package/android/common/src/androidTest/java/com/marianhello/bgloc/test/TestConstants.java +0 -5
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/ArrayListLocationTemplateTest.java +0 -82
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/BackgroundLocationTest.java +0 -128
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/ConfigTest.java +0 -191
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/DBLogReaderTest.java +0 -37
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/HashMapLocationTemplateTest.java +0 -216
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/HttpPostServiceTest.java +0 -223
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/LocationTemplateFactoryTest.java +0 -50
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/PostLocationTaskTest.java +0 -180
- package/android/common/src/test/java/com/marianhello/backgroundgeolocation/TestHelper.java +0 -16
- package/ios/common/BackgroundGeolocation/SOMotionDetector/CHANGELOG.md +0 -2
- package/ios/common/BackgroundGeolocation/SOMotionDetector/LICENSE +0 -21
- package/ios/common/BackgroundGeolocation/SOMotionDetector/README.md +0 -135
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOLocationManager.h +0 -80
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOLocationManager.m +0 -147
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionActivity.h +0 -30
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionActivity.m +0 -42
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionDetector.h +0 -99
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionDetector.m +0 -327
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOStepDetector.h +0 -44
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOStepDetector.m +0 -94
- package/ios/common/BackgroundGeolocationTests/Info.plist +0 -24
- package/ios/common/BackgroundGeolocationTests/MAURBackgroundLocationTest.m +0 -185
- package/ios/common/BackgroundGeolocationTests/MAURConfigTest.m +0 -161
- package/ios/common/BackgroundGeolocationTests/MAURGeolocationOpenHelperTest.m +0 -102
- package/ios/common/BackgroundGeolocationTests/MAURLocationTest.m +0 -216
- package/ios/common/BackgroundGeolocationTests/MAURLocationUploaderTest.m +0 -55
- package/ios/common/BackgroundGeolocationTests/MAURLogReaderTest.m +0 -43
- package/ios/common/BackgroundGeolocationTests/MAURSQLiteConfigurationDAOTest.m +0 -102
- package/ios/common/BackgroundGeolocationTests/MAURSQLiteHelperTest.m +0 -41
- package/ios/common/BackgroundGeolocationTests/MAURSQLiteLocationDAOTests.m +0 -240
- package/ios/common/BackgroundGeolocationTests/MAURSQLiteLocationDAOThreadTest.m +0 -84
- package/ios/common/BackgroundGeolocationTests/MAURSQLiteOpenHelperTest.m +0 -144
- package/ios/common/scripts/xcode-refactor.js +0 -184
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
package com.marianhello.backgroundgeolocation;
|
|
2
|
-
|
|
3
|
-
import android.os.Build;
|
|
4
|
-
import androidx.test.filters.SmallTest;
|
|
5
|
-
|
|
6
|
-
import com.marianhello.bgloc.data.BackgroundLocation;
|
|
7
|
-
|
|
8
|
-
import junit.framework.Assert;
|
|
9
|
-
|
|
10
|
-
import org.junit.Test;
|
|
11
|
-
|
|
12
|
-
import java.lang.reflect.Field;
|
|
13
|
-
import java.lang.reflect.Modifier;
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Created by finch on 10/08/16.
|
|
17
|
-
*/
|
|
18
|
-
@SmallTest
|
|
19
|
-
public class BackgroundLocationTest {
|
|
20
|
-
|
|
21
|
-
static void setSDKVersion(Object newValue) {
|
|
22
|
-
|
|
23
|
-
Field modifiersField = null;
|
|
24
|
-
try {
|
|
25
|
-
Field field = Build.VERSION.class.getField("SDK_INT");
|
|
26
|
-
|
|
27
|
-
field.setAccessible(true);
|
|
28
|
-
|
|
29
|
-
modifiersField = Field.class.getDeclaredField("modifiers");
|
|
30
|
-
modifiersField.setAccessible(true);
|
|
31
|
-
modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL);
|
|
32
|
-
|
|
33
|
-
field.set(null, newValue);
|
|
34
|
-
} catch (Exception e) {
|
|
35
|
-
e.printStackTrace();
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
@Test public void testHasMockShouldBeFalse() {
|
|
40
|
-
BackgroundLocation l = new BackgroundLocation();
|
|
41
|
-
Assert.assertFalse(l.hasIsFromMockProvider());
|
|
42
|
-
Assert.assertFalse(l.hasMockLocationsEnabled());
|
|
43
|
-
Assert.assertEquals(0x0, l.getMockFlags());
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
@Test public void testHasMockShouldBeTrue() {
|
|
47
|
-
BackgroundLocation l = new BackgroundLocation();
|
|
48
|
-
l.setMockLocationsEnabled(true);
|
|
49
|
-
l.setIsFromMockProvider(true);
|
|
50
|
-
Assert.assertTrue(l.hasMockLocationsEnabled());
|
|
51
|
-
Assert.assertTrue(l.areMockLocationsEnabled());
|
|
52
|
-
Assert.assertEquals(0xF, l.getMockFlags());
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
@Test public void testIsFromMockProviderShouldBeTrue() {
|
|
56
|
-
BackgroundLocation l = new BackgroundLocation();
|
|
57
|
-
l.setIsFromMockProvider(true);
|
|
58
|
-
Assert.assertTrue(l.hasIsFromMockProvider());
|
|
59
|
-
Assert.assertTrue(l.isFromMockProvider());
|
|
60
|
-
Assert.assertEquals(0x3, l.getMockFlags());
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
@Test public void testIsFromMockProviderShouldBeFalse() {
|
|
64
|
-
BackgroundLocation l = new BackgroundLocation();
|
|
65
|
-
l.setIsFromMockProvider(false);
|
|
66
|
-
Assert.assertTrue(l.hasIsFromMockProvider());
|
|
67
|
-
Assert.assertFalse(l.isFromMockProvider());
|
|
68
|
-
Assert.assertEquals(0x2, l.getMockFlags());
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
@Test public void testAreMockLocationsEnabledShouldBeTrue() {
|
|
72
|
-
BackgroundLocation l = new BackgroundLocation();
|
|
73
|
-
l.setMockLocationsEnabled(true);
|
|
74
|
-
Assert.assertTrue(l.hasMockLocationsEnabled());
|
|
75
|
-
Assert.assertTrue(l.areMockLocationsEnabled());
|
|
76
|
-
Assert.assertEquals(0xC, l.getMockFlags());
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
@Test public void testAreMockLocationsEnabledShouldBeFalse() {
|
|
80
|
-
BackgroundLocation l = new BackgroundLocation();
|
|
81
|
-
l.setMockLocationsEnabled(false);
|
|
82
|
-
Assert.assertTrue(l.hasMockLocationsEnabled());
|
|
83
|
-
Assert.assertFalse(l.areMockLocationsEnabled());
|
|
84
|
-
Assert.assertEquals(0x8, l.getMockFlags());
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
@Test
|
|
88
|
-
public void olderLocationShouldBeWorse() {
|
|
89
|
-
setSDKVersion(17);
|
|
90
|
-
|
|
91
|
-
BackgroundLocation netLocation = new BackgroundLocation();
|
|
92
|
-
netLocation.setProvider("network");
|
|
93
|
-
netLocation.setLatitude(49);
|
|
94
|
-
netLocation.setLongitude(5);
|
|
95
|
-
netLocation.setAccuracy(38);
|
|
96
|
-
netLocation.setElapsedRealtimeNanos(1470776557324L * 1000000L);
|
|
97
|
-
|
|
98
|
-
BackgroundLocation gpsLocation = new BackgroundLocation();
|
|
99
|
-
gpsLocation.setProvider("gps");
|
|
100
|
-
gpsLocation.setLatitude(49);
|
|
101
|
-
gpsLocation.setLongitude(5);
|
|
102
|
-
gpsLocation.setAccuracy(5);
|
|
103
|
-
gpsLocation.setElapsedRealtimeNanos(1470773246000L * 1000000L);
|
|
104
|
-
|
|
105
|
-
Assert.assertFalse(gpsLocation.isBetterLocationThan(netLocation));
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
@Test
|
|
109
|
-
public void newerLocationShouldBeBetter() {
|
|
110
|
-
setSDKVersion(17);
|
|
111
|
-
|
|
112
|
-
BackgroundLocation netLocation = new BackgroundLocation();
|
|
113
|
-
netLocation.setProvider("network");
|
|
114
|
-
netLocation.setLatitude(49);
|
|
115
|
-
netLocation.setLongitude(5);
|
|
116
|
-
netLocation.setAccuracy(38);
|
|
117
|
-
netLocation.setElapsedRealtimeNanos(0);
|
|
118
|
-
|
|
119
|
-
BackgroundLocation gpsLocation = new BackgroundLocation();
|
|
120
|
-
gpsLocation.setProvider("gps");
|
|
121
|
-
gpsLocation.setLatitude(49);
|
|
122
|
-
gpsLocation.setLongitude(5);
|
|
123
|
-
gpsLocation.setAccuracy(105);
|
|
124
|
-
gpsLocation.setElapsedRealtimeNanos(2000000000L * 60 * 2);
|
|
125
|
-
|
|
126
|
-
Assert.assertFalse(netLocation.isBetterLocationThan(gpsLocation));
|
|
127
|
-
}
|
|
128
|
-
}
|
|
@@ -1,191 +0,0 @@
|
|
|
1
|
-
package com.marianhello.backgroundgeolocation;
|
|
2
|
-
|
|
3
|
-
import androidx.test.filters.SmallTest;
|
|
4
|
-
|
|
5
|
-
import com.marianhello.bgloc.Config;
|
|
6
|
-
import com.marianhello.bgloc.data.ArrayListLocationTemplate;
|
|
7
|
-
import com.marianhello.bgloc.data.HashMapLocationTemplate;
|
|
8
|
-
import com.marianhello.bgloc.data.LocationTemplate;
|
|
9
|
-
import com.marianhello.bgloc.data.LocationTemplateFactory;
|
|
10
|
-
|
|
11
|
-
import junit.framework.Assert;
|
|
12
|
-
|
|
13
|
-
import org.junit.Test;
|
|
14
|
-
|
|
15
|
-
import java.util.ArrayList;
|
|
16
|
-
import java.util.HashMap;
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Created by finch on 29.11.2017.
|
|
20
|
-
*/
|
|
21
|
-
|
|
22
|
-
@SmallTest
|
|
23
|
-
public class ConfigTest {
|
|
24
|
-
@Test
|
|
25
|
-
public void testEmptyConfig() {
|
|
26
|
-
Config config = new Config();
|
|
27
|
-
|
|
28
|
-
Assert.assertFalse(config.hasStationaryRadius());
|
|
29
|
-
Assert.assertFalse(config.hasDistanceFilter());
|
|
30
|
-
Assert.assertFalse(config.hasDesiredAccuracy());
|
|
31
|
-
Assert.assertFalse(config.hasDebug());
|
|
32
|
-
Assert.assertFalse(config.hasNotificationTitle());
|
|
33
|
-
Assert.assertFalse(config.hasNotificationText());
|
|
34
|
-
Assert.assertFalse(config.hasStopOnTerminate());
|
|
35
|
-
Assert.assertFalse(config.hasStartOnBoot());
|
|
36
|
-
Assert.assertFalse(config.hasLocationProvider());
|
|
37
|
-
Assert.assertFalse(config.hasInterval());
|
|
38
|
-
Assert.assertFalse(config.hasFastestInterval());
|
|
39
|
-
Assert.assertFalse(config.hasActivitiesInterval());
|
|
40
|
-
Assert.assertFalse(config.hasNotificationIconColor());
|
|
41
|
-
Assert.assertFalse(config.hasLargeNotificationIcon());
|
|
42
|
-
Assert.assertFalse(config.hasSmallNotificationIcon());
|
|
43
|
-
Assert.assertFalse(config.hasStartForeground());
|
|
44
|
-
Assert.assertFalse(config.hasStopOnStillActivity());
|
|
45
|
-
Assert.assertFalse(config.hasUrl());
|
|
46
|
-
Assert.assertFalse(config.hasSyncUrl());
|
|
47
|
-
Assert.assertFalse(config.hasSyncThreshold());
|
|
48
|
-
Assert.assertFalse(config.hasHttpHeaders());
|
|
49
|
-
Assert.assertFalse(config.hasMaxLocations());
|
|
50
|
-
Assert.assertFalse(config.hasTemplate());
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
@Test
|
|
54
|
-
public void testDefaultConfig() {
|
|
55
|
-
Config config = Config.getDefault();
|
|
56
|
-
|
|
57
|
-
Assert.assertEquals(config.getStationaryRadius(), 50f);
|
|
58
|
-
Assert.assertEquals(config.getDistanceFilter().intValue(), 500);
|
|
59
|
-
Assert.assertEquals(config.getDesiredAccuracy().intValue(), 100);
|
|
60
|
-
Assert.assertFalse(config.isDebugging());
|
|
61
|
-
Assert.assertEquals(config.getNotificationTitle(), "Background tracking");
|
|
62
|
-
Assert.assertEquals(config.getNotificationText(), "ENABLED");
|
|
63
|
-
Assert.assertTrue(config.getStopOnTerminate());
|
|
64
|
-
Assert.assertFalse(config.getStartOnBoot());
|
|
65
|
-
Assert.assertEquals(config.getLocationProvider().intValue(), 0);
|
|
66
|
-
Assert.assertEquals(config.getInterval().intValue(), 600000);
|
|
67
|
-
Assert.assertEquals(config.getFastestInterval().intValue(), 120000);
|
|
68
|
-
Assert.assertEquals(config.getActivitiesInterval().intValue(), 10000);
|
|
69
|
-
Assert.assertEquals(config.getNotificationIconColor(), "");
|
|
70
|
-
Assert.assertEquals(config.getLargeNotificationIcon(), "");
|
|
71
|
-
Assert.assertEquals(config.getSmallNotificationIcon(), "");
|
|
72
|
-
Assert.assertTrue(config.getStartForeground());
|
|
73
|
-
Assert.assertTrue(config.getStopOnStillActivity());
|
|
74
|
-
Assert.assertEquals(config.getUrl(), "");
|
|
75
|
-
Assert.assertEquals(config.getSyncUrl(), "");
|
|
76
|
-
Assert.assertEquals(config.getSyncThreshold().intValue(), 100);
|
|
77
|
-
Assert.assertTrue(config.getHttpHeaders().isEmpty());
|
|
78
|
-
Assert.assertEquals(config.getTemplate(), LocationTemplateFactory.getDefault());
|
|
79
|
-
Assert.assertEquals(config.getMaxLocations().intValue(), 10000);
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
@Test
|
|
83
|
-
public void testMergeConfig() {
|
|
84
|
-
Config config = new Config();
|
|
85
|
-
|
|
86
|
-
config.setSyncThreshold(10);
|
|
87
|
-
config.setMaxLocations(1000);
|
|
88
|
-
config.setDesiredAccuracy(5);
|
|
89
|
-
|
|
90
|
-
Config newConfig = new Config();
|
|
91
|
-
newConfig.setSyncThreshold(100);
|
|
92
|
-
newConfig.setDesiredAccuracy(500);
|
|
93
|
-
|
|
94
|
-
Config merged = Config.merge(config, newConfig);
|
|
95
|
-
|
|
96
|
-
Assert.assertEquals(merged.getSyncThreshold().intValue(), 100);
|
|
97
|
-
Assert.assertEquals(merged.getMaxLocations().intValue(), 1000);
|
|
98
|
-
Assert.assertEquals(merged.getDesiredAccuracy().intValue(), 500);
|
|
99
|
-
|
|
100
|
-
Assert.assertEquals(config.getSyncThreshold().intValue(), 10);
|
|
101
|
-
Assert.assertEquals(config.getMaxLocations().intValue(), 1000);
|
|
102
|
-
Assert.assertEquals(config.getDesiredAccuracy().intValue(), 5);
|
|
103
|
-
|
|
104
|
-
Assert.assertNotSame(config, merged);
|
|
105
|
-
Assert.assertNotSame(config.getSyncThreshold(), merged.getSyncThreshold());
|
|
106
|
-
Assert.assertNotSame(config.getDesiredAccuracy(), merged.getDesiredAccuracy());
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
@Test
|
|
110
|
-
public void testMergeHttpHeaders() {
|
|
111
|
-
HashMap httpHeaders = new HashMap<String, String>();
|
|
112
|
-
httpHeaders.put("key", "value");
|
|
113
|
-
|
|
114
|
-
Config config = new Config();
|
|
115
|
-
config.setHttpHeaders(httpHeaders);
|
|
116
|
-
|
|
117
|
-
Config merged = Config.merge(config, new Config());
|
|
118
|
-
httpHeaders.put("key", "othervalue");
|
|
119
|
-
|
|
120
|
-
Assert.assertNotSame(config, merged);
|
|
121
|
-
Assert.assertNotSame(config.getHttpHeaders(), merged.getHttpHeaders());
|
|
122
|
-
Assert.assertEquals("value", merged.getHttpHeaders().get("key"));
|
|
123
|
-
Assert.assertEquals("othervalue", config.getHttpHeaders().get("key"));
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
@Test
|
|
127
|
-
public void testMergeHashTemplate() {
|
|
128
|
-
HashMap map = new HashMap();
|
|
129
|
-
map.put("key", "value");
|
|
130
|
-
LocationTemplate tpl = new HashMapLocationTemplate(map);
|
|
131
|
-
|
|
132
|
-
Config config = new Config();
|
|
133
|
-
config.setTemplate(tpl);
|
|
134
|
-
|
|
135
|
-
Config merged = Config.merge(config, new Config());
|
|
136
|
-
map.put("key", "othervalue");
|
|
137
|
-
|
|
138
|
-
Assert.assertNotSame(config, merged);
|
|
139
|
-
Assert.assertNotSame(config.getTemplate(), merged.getTemplate());
|
|
140
|
-
Assert.assertEquals("value", ((HashMapLocationTemplate)merged.getTemplate()).get("key"));
|
|
141
|
-
Assert.assertEquals("othervalue", ((HashMapLocationTemplate)config.getTemplate()).get("key"));
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
@Test
|
|
146
|
-
public void testMergeArrayTemplate() {
|
|
147
|
-
ArrayList props = new ArrayList();
|
|
148
|
-
props.add("foo");
|
|
149
|
-
ArrayListLocationTemplate tpl = new ArrayListLocationTemplate(props);
|
|
150
|
-
|
|
151
|
-
Config config = new Config();
|
|
152
|
-
config.setTemplate(tpl);
|
|
153
|
-
|
|
154
|
-
Config merged = Config.merge(config, new Config());
|
|
155
|
-
|
|
156
|
-
props.add(0, "foobar");
|
|
157
|
-
|
|
158
|
-
Assert.assertNotSame(config, merged);
|
|
159
|
-
Assert.assertNotSame(config.getTemplate(), merged.getTemplate());
|
|
160
|
-
Assert.assertEquals("foo", ((ArrayListLocationTemplate)merged.getTemplate()).toArray()[0]);
|
|
161
|
-
Assert.assertEquals("foobar", ((ArrayListLocationTemplate)config.getTemplate()).toArray()[0]);
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
@Test
|
|
165
|
-
public void testMergeEmptyUrls() {
|
|
166
|
-
Config config1 = new Config();
|
|
167
|
-
config1.setUrl("url");
|
|
168
|
-
config1.setSyncUrl("syncUrl");
|
|
169
|
-
|
|
170
|
-
Config config2 = new Config();
|
|
171
|
-
config2.setUrl("");
|
|
172
|
-
config2.setSyncUrl("");
|
|
173
|
-
|
|
174
|
-
Assert.assertEquals("", Config.merge(config1, config2).getUrl());
|
|
175
|
-
Assert.assertEquals("", Config.merge(config1, config2).getSyncUrl());
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
@Test
|
|
179
|
-
public void testResetToDefaultProps() {
|
|
180
|
-
Config config1 = new Config();
|
|
181
|
-
config1.setUrl("url");
|
|
182
|
-
config1.setSyncUrl("syncUrl");
|
|
183
|
-
|
|
184
|
-
Config config2 = new Config();
|
|
185
|
-
config2.setUrl("");
|
|
186
|
-
config2.setSyncUrl("");
|
|
187
|
-
|
|
188
|
-
Assert.assertEquals(Config.getDefault().getUrl(), Config.merge(config1, config2).getUrl());
|
|
189
|
-
Assert.assertEquals(Config.getDefault().getSyncUrl(), Config.merge(config1, config2).getSyncUrl());
|
|
190
|
-
}
|
|
191
|
-
}
|
package/android/common/src/test/java/com/marianhello/backgroundgeolocation/DBLogReaderTest.java
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
package com.marianhello.backgroundgeolocation;
|
|
2
|
-
|
|
3
|
-
import androidx.test.filters.SmallTest;
|
|
4
|
-
|
|
5
|
-
import com.marianhello.logging.DBLogReader;
|
|
6
|
-
|
|
7
|
-
import junit.framework.Assert;
|
|
8
|
-
|
|
9
|
-
import org.junit.Test;
|
|
10
|
-
import org.slf4j.event.Level;
|
|
11
|
-
|
|
12
|
-
@SmallTest
|
|
13
|
-
public class DBLogReaderTest {
|
|
14
|
-
@Test
|
|
15
|
-
public void testBuildQuery() {
|
|
16
|
-
DBLogReader.QueryBuilder qb = new DBLogReader.QueryBuilder();
|
|
17
|
-
String sql = qb.buildQuery(100, 0, Level.DEBUG);
|
|
18
|
-
|
|
19
|
-
Assert.assertEquals("SELECT [event_id], [timestmp], [formatted_message], [logger_name], [level_string] FROM [logging_event] WHERE [level_string] IN ('ERROR', 'WARN', 'INFO', 'DEBUG') ORDER BY [timestmp] DESC, [event_id] DESC LIMIT 100;", sql);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
@Test
|
|
23
|
-
public void testBuildQueryWithOffset() {
|
|
24
|
-
DBLogReader.QueryBuilder qb = new DBLogReader.QueryBuilder();
|
|
25
|
-
String sql = qb.buildQuery(100, 10, Level.ERROR);
|
|
26
|
-
|
|
27
|
-
Assert.assertEquals("SELECT [event_id], [timestmp], [formatted_message], [logger_name], [level_string] FROM [logging_event] WHERE [level_string] IN ('ERROR') AND [event_id] < 10 ORDER BY [timestmp] DESC, [event_id] DESC LIMIT 100;", sql);
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
@Test
|
|
31
|
-
public void testBuildStackTraceQuery() {
|
|
32
|
-
DBLogReader.QueryBuilder qb = new DBLogReader.QueryBuilder();
|
|
33
|
-
String sql = qb.buildStackTraceQuery(100);
|
|
34
|
-
|
|
35
|
-
Assert.assertEquals("SELECT [trace_line] FROM [logging_event_exception] WHERE [i] = 100 ORDER BY [i] ASC;", sql);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
@@ -1,216 +0,0 @@
|
|
|
1
|
-
package com.marianhello.backgroundgeolocation;
|
|
2
|
-
|
|
3
|
-
import com.marianhello.bgloc.Config;
|
|
4
|
-
import com.marianhello.bgloc.data.BackgroundLocation;
|
|
5
|
-
import com.marianhello.bgloc.data.HashMapLocationTemplate;
|
|
6
|
-
import com.marianhello.bgloc.data.LocationTemplate;
|
|
7
|
-
import com.marianhello.bgloc.data.LocationTemplateFactory;
|
|
8
|
-
|
|
9
|
-
import junit.framework.Assert;
|
|
10
|
-
|
|
11
|
-
import org.json.JSONArray;
|
|
12
|
-
import org.json.JSONException;
|
|
13
|
-
import org.json.JSONObject;
|
|
14
|
-
import org.junit.Test;
|
|
15
|
-
|
|
16
|
-
import java.util.HashMap;
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Created by finch on 9.12.2017.
|
|
20
|
-
*/
|
|
21
|
-
|
|
22
|
-
public class HashMapLocationTemplateTest {
|
|
23
|
-
@Test
|
|
24
|
-
public void testObjectTemplateToString() {
|
|
25
|
-
HashMap props = new HashMap();
|
|
26
|
-
props.put("foo", "bar");
|
|
27
|
-
props.put("pretzels", 123);
|
|
28
|
-
HashMapLocationTemplate tpl = new HashMapLocationTemplate(props);
|
|
29
|
-
|
|
30
|
-
Assert.assertEquals("{\"foo\":\"bar\",\"pretzels\":123}" , tpl.toString());
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
@Test
|
|
34
|
-
public void testLocationToJSONObject() throws JSONException {
|
|
35
|
-
BackgroundLocation location = new BackgroundLocation();
|
|
36
|
-
location.setLocationId(11L);
|
|
37
|
-
location.setProvider("test");
|
|
38
|
-
location.setElapsedRealtimeNanos(2000000000L * 60 * 2);
|
|
39
|
-
location.setAltitude(100);
|
|
40
|
-
location.setLatitude(49);
|
|
41
|
-
location.setLongitude(5);
|
|
42
|
-
location.setLocationProvider(1);
|
|
43
|
-
location.setAccuracy(105);
|
|
44
|
-
location.setSpeed(50);
|
|
45
|
-
location.setBearing(1);
|
|
46
|
-
|
|
47
|
-
HashMap map = new HashMap<String, String>();
|
|
48
|
-
map.put("Id", "@id");
|
|
49
|
-
map.put("Provider", "@provider");
|
|
50
|
-
map.put("Time", "@time");
|
|
51
|
-
map.put("Altitude", "@altitude");
|
|
52
|
-
map.put("Latitude", "@latitude");
|
|
53
|
-
map.put("Longitude", "@longitude");
|
|
54
|
-
map.put("Foo", "bar");
|
|
55
|
-
map.put("LocationProvider", "@locationProvider");
|
|
56
|
-
map.put("Accuracy", "@accuracy");
|
|
57
|
-
map.put("Speed", "@speed");
|
|
58
|
-
map.put("Bearing", "@bearing");
|
|
59
|
-
map.put("Pretzels", 123);
|
|
60
|
-
|
|
61
|
-
LocationTemplate tpl = new HashMapLocationTemplate(map);
|
|
62
|
-
JSONObject expected = (JSONObject) tpl.locationToJson(location);
|
|
63
|
-
|
|
64
|
-
Assert.assertEquals(expected.get("Id"), location.getLocationId());
|
|
65
|
-
Assert.assertEquals(expected.get("Provider"), location.getProvider());
|
|
66
|
-
Assert.assertEquals(expected.get("Time"), location.getTime());
|
|
67
|
-
Assert.assertEquals(expected.get("Altitude"), location.getAltitude());
|
|
68
|
-
Assert.assertEquals(expected.get("Latitude"), location.getLatitude());
|
|
69
|
-
Assert.assertEquals(expected.get("Longitude"), location.getLongitude());
|
|
70
|
-
Assert.assertEquals(expected.get("Foo"), "bar");
|
|
71
|
-
Assert.assertEquals(expected.get("LocationProvider"), location.getLocationProvider());
|
|
72
|
-
Assert.assertEquals(expected.get("Accuracy"), location.getAccuracy());
|
|
73
|
-
Assert.assertEquals(expected.get("Speed"), location.getSpeed());
|
|
74
|
-
Assert.assertEquals(expected.get("Bearing"), location.getBearing());
|
|
75
|
-
Assert.assertEquals(expected.get("Pretzels"), 123);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
@Test
|
|
79
|
-
public void testLocationToJSONObjectFactory() throws JSONException {
|
|
80
|
-
BackgroundLocation location = new BackgroundLocation();
|
|
81
|
-
location.setLocationId(11L);
|
|
82
|
-
location.setProvider("test");
|
|
83
|
-
location.setElapsedRealtimeNanos(2000000000L * 60 * 2);
|
|
84
|
-
location.setAltitude(100);
|
|
85
|
-
location.setLatitude(49);
|
|
86
|
-
location.setLongitude(5);
|
|
87
|
-
location.setLocationProvider(1);
|
|
88
|
-
location.setAccuracy(105);
|
|
89
|
-
location.setSpeed(50);
|
|
90
|
-
location.setBearing(1);
|
|
91
|
-
|
|
92
|
-
HashMap map = new HashMap();
|
|
93
|
-
map.put("Id", "@id");
|
|
94
|
-
map.put("Provider", "@provider");
|
|
95
|
-
map.put("Time", "@time");
|
|
96
|
-
map.put("Altitude", "@altitude");
|
|
97
|
-
map.put("Latitude", "@latitude");
|
|
98
|
-
map.put("Longitude", "@longitude");
|
|
99
|
-
map.put("Foo", "bar");
|
|
100
|
-
map.put("LocationProvider", "@locationProvider");
|
|
101
|
-
map.put("Accuracy", "@accuracy");
|
|
102
|
-
map.put("Speed", "@speed");
|
|
103
|
-
map.put("Bearing", "@bearing");
|
|
104
|
-
map.put("Pretzels", 123);
|
|
105
|
-
|
|
106
|
-
JSONObject json = new JSONObject(map);
|
|
107
|
-
LocationTemplate tpl = LocationTemplateFactory.fromJSON(json);
|
|
108
|
-
|
|
109
|
-
JSONObject expected = (JSONObject) tpl.locationToJson(location);
|
|
110
|
-
|
|
111
|
-
Assert.assertEquals(expected.get("Id"), location.getLocationId());
|
|
112
|
-
Assert.assertEquals(expected.get("Provider"), location.getProvider());
|
|
113
|
-
Assert.assertEquals(expected.get("Time"), location.getTime());
|
|
114
|
-
Assert.assertEquals(expected.get("Altitude"), location.getAltitude());
|
|
115
|
-
Assert.assertEquals(expected.get("Latitude"), location.getLatitude());
|
|
116
|
-
Assert.assertEquals(expected.get("Longitude"), location.getLongitude());
|
|
117
|
-
Assert.assertEquals(expected.get("Foo"), "bar");
|
|
118
|
-
Assert.assertEquals(expected.get("LocationProvider"), location.getLocationProvider());
|
|
119
|
-
Assert.assertEquals(expected.get("Accuracy"), location.getAccuracy());
|
|
120
|
-
Assert.assertEquals(expected.get("Speed"), location.getSpeed());
|
|
121
|
-
Assert.assertEquals(expected.get("Bearing"), location.getBearing());
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
@Test
|
|
125
|
-
public void testNullToString() {
|
|
126
|
-
HashMapLocationTemplate tpl = new HashMapLocationTemplate((HashMap)null);
|
|
127
|
-
Assert.assertEquals("null", tpl.toString());
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
@Test
|
|
131
|
-
public void testNestedObjectTemplate() throws JSONException {
|
|
132
|
-
BackgroundLocation location = new BackgroundLocation();
|
|
133
|
-
location.setLocationId(11L);
|
|
134
|
-
location.setProvider("test");
|
|
135
|
-
location.setElapsedRealtimeNanos(2000000000L * 60 * 2);
|
|
136
|
-
location.setAltitude(100);
|
|
137
|
-
location.setLatitude(49);
|
|
138
|
-
location.setLongitude(5);
|
|
139
|
-
location.setLocationProvider(1);
|
|
140
|
-
location.setAccuracy(105);
|
|
141
|
-
location.setSpeed(50);
|
|
142
|
-
location.setBearing(1);
|
|
143
|
-
|
|
144
|
-
JSONObject template = new JSONObject(
|
|
145
|
-
"{\"data\":{\"Id\":\"@id\"," +
|
|
146
|
-
"\"Provider\":\"@provider\"," +
|
|
147
|
-
"\"Time\":\"@time\"," +
|
|
148
|
-
"\"Altitude\":\"@altitude\"," +
|
|
149
|
-
"\"Latitude\":\"@latitude\"," +
|
|
150
|
-
"\"Longitude\":\"@longitude\"," +
|
|
151
|
-
"\"Foo\":\"bar\"," +
|
|
152
|
-
"\"LocationProvider\":\"@locationProvider\"," +
|
|
153
|
-
"\"Accuracy\":\"@accuracy\"," +
|
|
154
|
-
"\"Speed\":\"@speed\"," +
|
|
155
|
-
"\"Bearing\":\"@bearing\"}" +
|
|
156
|
-
"}"
|
|
157
|
-
);
|
|
158
|
-
LocationTemplate tpl = LocationTemplateFactory.fromJSON(template);
|
|
159
|
-
|
|
160
|
-
JSONObject json = ((JSONObject) tpl.locationToJson(location));
|
|
161
|
-
JSONObject expected = json.getJSONObject("data");
|
|
162
|
-
|
|
163
|
-
Assert.assertEquals(expected.get("Id"), location.getLocationId());
|
|
164
|
-
Assert.assertEquals(expected.get("Provider"), location.getProvider());
|
|
165
|
-
Assert.assertEquals(expected.get("Time"), location.getTime());
|
|
166
|
-
Assert.assertEquals(expected.get("Altitude"), location.getAltitude());
|
|
167
|
-
Assert.assertEquals(expected.get("Latitude"), location.getLatitude());
|
|
168
|
-
Assert.assertEquals(expected.get("Longitude"), location.getLongitude());
|
|
169
|
-
Assert.assertEquals(expected.get("Foo"), "bar");
|
|
170
|
-
Assert.assertEquals(expected.get("LocationProvider"), location.getLocationProvider());
|
|
171
|
-
Assert.assertEquals(expected.get("Accuracy"), location.getAccuracy());
|
|
172
|
-
Assert.assertEquals(expected.get("Speed"), location.getSpeed());
|
|
173
|
-
Assert.assertEquals(expected.get("Bearing"), location.getBearing());
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
@Test
|
|
178
|
-
public void testNestedArrayTemplate() throws JSONException {
|
|
179
|
-
BackgroundLocation location = new BackgroundLocation();
|
|
180
|
-
location.setLocationId(11L);
|
|
181
|
-
location.setProvider("test");
|
|
182
|
-
location.setElapsedRealtimeNanos(2000000000L * 60 * 2);
|
|
183
|
-
location.setAltitude(100);
|
|
184
|
-
location.setLatitude(49);
|
|
185
|
-
location.setLongitude(5);
|
|
186
|
-
location.setLocationProvider(1);
|
|
187
|
-
location.setAccuracy(105);
|
|
188
|
-
location.setSpeed(50);
|
|
189
|
-
location.setBearing(1);
|
|
190
|
-
|
|
191
|
-
JSONObject template = new JSONObject(
|
|
192
|
-
"{\"data\":[\"@id\",\"@provider\",\"@time\",\"@altitude\",\"@latitude\"," +
|
|
193
|
-
"\"@longitude\",\"foo\",\"@locationProvider\",\"@accuracy\",\"@speed\"," +
|
|
194
|
-
"\"@bearing\",123]}"
|
|
195
|
-
);
|
|
196
|
-
LocationTemplate tpl = LocationTemplateFactory.fromJSON(template);
|
|
197
|
-
|
|
198
|
-
JSONObject json = ((JSONObject) tpl.locationToJson(location));
|
|
199
|
-
JSONArray expected = json.getJSONArray("data");
|
|
200
|
-
|
|
201
|
-
Assert.assertEquals(expected.get(0), location.getLocationId());
|
|
202
|
-
Assert.assertEquals(expected.get(1), location.getProvider());
|
|
203
|
-
Assert.assertEquals(expected.get(2), location.getTime());
|
|
204
|
-
Assert.assertEquals(expected.get(3), location.getAltitude());
|
|
205
|
-
Assert.assertEquals(expected.get(4), location.getLatitude());
|
|
206
|
-
Assert.assertEquals(expected.get(5), location.getLongitude());
|
|
207
|
-
Assert.assertEquals(expected.get(6), "foo");
|
|
208
|
-
Assert.assertEquals(expected.get(7), location.getLocationProvider());
|
|
209
|
-
Assert.assertEquals(expected.get(8), location.getAccuracy());
|
|
210
|
-
Assert.assertEquals(expected.get(9), location.getSpeed());
|
|
211
|
-
Assert.assertEquals(expected.get(10), location.getBearing());
|
|
212
|
-
Assert.assertEquals(expected.get(11), 123);
|
|
213
|
-
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
}
|