From 52624b5cfe48144de13eb8d672a05935f85785fa Mon Sep 17 00:00:00 2001 From: Dennis Guse Date: Mon, 8 Apr 2024 18:17:54 +0200 Subject: [PATCH] PublicAPI: add test for setting icon via parameter. Follow-up to #1818. --- .../opentracks/publicapi/PublicApiTest.java | 21 +++++++++++++++++-- .../opentracks/data/models/Track.java | 10 +++++++++ 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/src/androidTest/java/de/dennisguse/opentracks/publicapi/PublicApiTest.java b/src/androidTest/java/de/dennisguse/opentracks/publicapi/PublicApiTest.java index 92960d1a4..a8b28f6fd 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/publicapi/PublicApiTest.java +++ b/src/androidTest/java/de/dennisguse/opentracks/publicapi/PublicApiTest.java @@ -1,18 +1,24 @@ package de.dennisguse.opentracks.publicapi; import android.content.Context; +import android.content.Intent; import androidx.test.core.app.ApplicationProvider; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.LargeTest; import androidx.test.rule.GrantPermissionRule; +import org.junit.Assert; import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; +import java.util.List; + import de.dennisguse.opentracks.R; import de.dennisguse.opentracks.TestUtil; +import de.dennisguse.opentracks.data.ContentProviderUtils; +import de.dennisguse.opentracks.data.models.Track; import de.dennisguse.opentracks.settings.PreferencesUtils; import de.dennisguse.opentracks.util.IntentUtils; @@ -35,12 +41,23 @@ public class PublicApiTest { @Test public void StartStopTest() throws InterruptedException { PreferencesUtils.setBoolean(R.string.publicapi_enabled_key, true); - - context.startActivity(IntentUtils.newIntent(context, StartRecording.class)); + Intent startIntent = IntentUtils.newIntent(context, StartRecording.class); + startIntent.putExtra("TRACK_NAME", "trackName"); + startIntent.putExtra("TRACK_CATEGORY", "activityTypeLocalized"); + startIntent.putExtra("TRACK_ICON", "airplane"); + startIntent.putExtra("TRACK_DESCRIPTION", "description"); + context.startActivity(startIntent); Thread.sleep(5000); context.startActivity(IntentUtils.newIntent(context, StopRecording.class)); + + List tracks = new ContentProviderUtils(context).getTracks(); + Assert.assertEquals(1, tracks.size()); + Track track = tracks.get(0); + Assert.assertEquals("trackName", track.getName()); + Assert.assertEquals("activityTypeLocalized", track.getActivityTypeLocalized()); + Assert.assertEquals("airplane", track.getActivityType().getId()); } @Test diff --git a/src/main/java/de/dennisguse/opentracks/data/models/Track.java b/src/main/java/de/dennisguse/opentracks/data/models/Track.java index 7dcaa44c9..38affb24c 100644 --- a/src/main/java/de/dennisguse/opentracks/data/models/Track.java +++ b/src/main/java/de/dennisguse/opentracks/data/models/Track.java @@ -130,6 +130,16 @@ public class Track { this.trackStatistics = trackStatistics; } + @Override + public String toString() { + return "Track{" + + "name='" + name + '\'' + + ", description='" + description + '\'' + + ", activityTypeLocalized='" + activityTypeLocalized + '\'' + + ", activityType=" + activityType + + '}'; + } + @Override public boolean equals(Object o) { if (this == o) return true;