From 1c752b5c5666e2dc0546983bafe95b4196d94036 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaime=20Guti=C3=A9rrez=20Alfaro?= Date: Fri, 6 Mar 2026 08:36:08 -0600 Subject: [PATCH] Fix #687: use develop db for notes test --- .../osm/OpenStreetMapConstants.java | 30 +++++++++++++++---- .../osm/UploadToOpenStreetMapNotesTask.java | 4 +++ .../OpenStreetMapNotesUploadTest.java | 11 +++++-- 3 files changed, 36 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/net/osmtracker/osm/OpenStreetMapConstants.java b/app/src/main/java/net/osmtracker/osm/OpenStreetMapConstants.java index a7610be4..f50f1858 100644 --- a/app/src/main/java/net/osmtracker/osm/OpenStreetMapConstants.java +++ b/app/src/main/java/net/osmtracker/osm/OpenStreetMapConstants.java @@ -2,14 +2,14 @@ public class OpenStreetMapConstants { - private static final boolean DEV_MODE = false; + public static boolean DEV_MODE = false; private static final String OSM_API_URL_DEV = "https://master.apis.dev.openstreetmap.org"; private static final String OSM_API_URL_PROD = "https://www.openstreetmap.org"; - private static final String OSM_API_URL = (DEV_MODE) ? OSM_API_URL_DEV : OSM_API_URL_PROD; + public static String OSM_API_URL = (DEV_MODE) ? OSM_API_URL_DEV : OSM_API_URL_PROD; public static class Api { - public static final String OSM_API_URL_PATH = OSM_API_URL + "/api/0.6/"; + public static String OSM_API_URL_PATH = OSM_API_URL + "/api/0.6/"; } @@ -17,17 +17,35 @@ public static class OAuth2 { public static final String CLIENT_ID_PROD = "6s8TuIQoPeq89ZWUFOXU7EZ-ZaCUVtUoNZFIKCMdU-E"; public static final String CLIENT_ID_DEV = "94Ht-oVBJ2spydzfk18s1RV2z7NS98SBwMfzSCqLQLE"; // DEV - public static final String CLIENT_ID = (DEV_MODE) ? CLIENT_ID_DEV : CLIENT_ID_PROD; + public static String CLIENT_ID = (DEV_MODE) ? CLIENT_ID_DEV : CLIENT_ID_PROD; public static final String SCOPE = "write_gpx write_notes"; public static final String USER_AGENT = "OSMTracker for Androidâ„¢"; public static class Urls { - public static final String AUTHORIZATION_ENDPOINT = OSM_API_URL + "/oauth2/authorize"; - public static final String TOKEN_ENDPOINT = OSM_API_URL + "/oauth2/token"; + public static String AUTHORIZATION_ENDPOINT = OSM_API_URL + "/oauth2/authorize"; + public static String TOKEN_ENDPOINT = OSM_API_URL + "/oauth2/token"; } } + /** + * Updates the environment mode and refreshes dependent URL paths. + * + * @param enabled True for Dev/Master API, False for Production + */ + public static void setDevelopmentMode(boolean enabled) { + DEV_MODE = enabled; + OSM_API_URL = (DEV_MODE) ? OSM_API_URL_DEV : OSM_API_URL_PROD; + + // Update the nested Api class variable + Api.OSM_API_URL_PATH = OSM_API_URL + "/api/0.6/"; + + // Update OAuth2 constants as well to ensure total environment consistency + OAuth2.Urls.AUTHORIZATION_ENDPOINT = OSM_API_URL + "/oauth2/authorize"; + OAuth2.Urls.TOKEN_ENDPOINT = OSM_API_URL + "/oauth2/token"; + OAuth2.CLIENT_ID = (DEV_MODE) ? OAuth2.CLIENT_ID_DEV : OAuth2.CLIENT_ID_PROD; + } + } diff --git a/app/src/main/java/net/osmtracker/osm/UploadToOpenStreetMapNotesTask.java b/app/src/main/java/net/osmtracker/osm/UploadToOpenStreetMapNotesTask.java index 28c6c560..b002e764 100644 --- a/app/src/main/java/net/osmtracker/osm/UploadToOpenStreetMapNotesTask.java +++ b/app/src/main/java/net/osmtracker/osm/UploadToOpenStreetMapNotesTask.java @@ -72,6 +72,10 @@ public void run() { // 1. Prepare UI (Equivalent to onPreExecute) activity.runOnUiThread(() -> progressDialog = createProgressDialog(activity)); + Log.d(TAG, "DEV_MODE=" + OpenStreetMapConstants.DEV_MODE + + ", OAuth2.USER_AGENT=" + OpenStreetMapConstants.OAuth2.USER_AGENT + + ", API_URL=" + OpenStreetMapConstants.Api.OSM_API_URL_PATH); + // 2. Execute Network Logic (Equivalent to doInBackground) OsmConnection osm = new OsmConnection( OpenStreetMapConstants.Api.OSM_API_URL_PATH, diff --git a/app/src/test/java/net/osmtracker/activity/OpenStreetMapNotesUploadTest.java b/app/src/test/java/net/osmtracker/activity/OpenStreetMapNotesUploadTest.java index 9c2bb99c..75e11858 100644 --- a/app/src/test/java/net/osmtracker/activity/OpenStreetMapNotesUploadTest.java +++ b/app/src/test/java/net/osmtracker/activity/OpenStreetMapNotesUploadTest.java @@ -12,6 +12,7 @@ import net.osmtracker.OSMTracker; import net.osmtracker.R; +import net.osmtracker.osm.OpenStreetMapConstants; import org.junit.Assert; import org.junit.Before; @@ -21,22 +22,26 @@ import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; import org.robolectric.shadows.ShadowActivity; +import org.robolectric.shadows.ShadowLog; @RunWith(RobolectricTestRunner.class) -@Config(sdk = 25) +@Config(sdk = 25, shadows = {ShadowLog.class}) public class OpenStreetMapNotesUploadTest { private Intent intent; @Before public void setUp() { + ShadowLog.stream = System.out; + // Switch to Dev/Master API for this test + OpenStreetMapConstants.setDevelopmentMode(true); // Prepare a valid intent with extras intent = new Intent(ApplicationProvider.getApplicationContext(), OpenStreetMapNotesUpload.class); intent.putExtra("noteId", 123L); intent.putExtra("noteContent", "Test Note Content"); - intent.putExtra("latitude", 45.0); - intent.putExtra("longitude", 9.0); + intent.putExtra("latitude", 10.034071); + intent.putExtra("longitude", -84.209481); intent.putExtra("version", "3.0.1"); intent.putExtra("appName", "OSMTrackerTest");