summaryrefslogtreecommitdiff
path: root/app/src/androidTest/java/de/test
diff options
context:
space:
mode:
authorByteHamster <ByteHamster@users.noreply.github.com>2023-03-14 21:03:45 +0100
committerGitHub <noreply@github.com>2023-03-14 21:03:45 +0100
commit4f7f49e1e714ce41320fff569272a1423198b2f3 (patch)
tree0adeefb8e26863cbccc204f11437684960114d86 /app/src/androidTest/java/de/test
parent2c0b970044b3180786e165588d5d94ada0c90797 (diff)
downloadAntennaPod-4f7f49e1e714ce41320fff569272a1423198b2f3.zip
Move feed download to worker (#6375)
Feed downloads are now independent from episode downloads. This makes it easier to use WorkManager for refreshing. Also, it will make it easier to add different refresh intervals in the future.
Diffstat (limited to 'app/src/androidTest/java/de/test')
-rw-r--r--app/src/androidTest/java/de/test/antennapod/ui/FeedSettingsTest.java58
-rw-r--r--app/src/androidTest/java/de/test/antennapod/ui/PreferencesTest.java28
2 files changed, 1 insertions, 85 deletions
diff --git a/app/src/androidTest/java/de/test/antennapod/ui/FeedSettingsTest.java b/app/src/androidTest/java/de/test/antennapod/ui/FeedSettingsTest.java
index f3cd99b2c..861c62f1b 100644
--- a/app/src/androidTest/java/de/test/antennapod/ui/FeedSettingsTest.java
+++ b/app/src/androidTest/java/de/test/antennapod/ui/FeedSettingsTest.java
@@ -2,13 +2,11 @@ package de.test.antennapod.ui;
import android.content.Intent;
import androidx.test.espresso.intent.rule.IntentsTestRule;
-import androidx.test.platform.app.InstrumentationRegistry;
import androidx.test.ext.junit.runners.AndroidJUnit4;
+import androidx.test.platform.app.InstrumentationRegistry;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.activity.MainActivity;
-import de.danoeh.antennapod.core.storage.DBReader;
import de.danoeh.antennapod.model.feed.Feed;
-import de.danoeh.antennapod.model.feed.FeedPreferences;
import de.test.antennapod.EspressoTestUtils;
import org.junit.After;
import org.junit.Before;
@@ -18,8 +16,6 @@ import org.junit.runner.RunWith;
import static androidx.test.espresso.Espresso.onView;
import static androidx.test.espresso.action.ViewActions.click;
-import static androidx.test.espresso.action.ViewActions.pressBack;
-import static androidx.test.espresso.action.ViewActions.typeText;
import static androidx.test.espresso.matcher.ViewMatchers.isDescendantOfA;
import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed;
import static androidx.test.espresso.matcher.ViewMatchers.isRoot;
@@ -28,10 +24,6 @@ import static androidx.test.espresso.matcher.ViewMatchers.withText;
import static de.test.antennapod.EspressoTestUtils.clickPreference;
import static de.test.antennapod.EspressoTestUtils.waitForView;
import static org.hamcrest.Matchers.allOf;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
-import java.io.IOException;
@RunWith(AndroidJUnit4.class)
public class FeedSettingsTest {
@@ -84,52 +76,4 @@ public class FeedSettingsTest {
clickPreference(R.string.feed_volume_reduction);
onView(withText(R.string.cancel_label)).perform(click());
}
-
- /**
- * Test that modifying a feed's authentication settings results in proper behavior.
- * Expect:
- * - Feed is refreshed automatically
- * - Database has updated username and password
- */
- @Test
- public void testAuthenticationSettingsUpdate() throws IOException {
- onView(isRoot()).perform(waitForView(allOf(isDescendantOfA(withId(R.id.appBar)),
- withText(feed.getTitle()), isDisplayed()), 1000));
-
- String updatedTitle = "modified episode title";
- String username = "username";
- String password = "password";
-
- // update feed hosted on server
- feed.getItems().get(0).setTitle(updatedTitle);
- uiTestUtils.hostFeed(feed);
-
- // interact with UI to update authentication settings
- updateAuthenticationSettings(username, password);
-
- // expect feed to have refreshed and be showing new episode title
- onView(isRoot()).perform(waitForView(withText(updatedTitle), 5000));
-
- // expect database to be updated with correct username and password
- Feed updatedFeed = DBReader.getFeed(feed.getId());
- assertNotNull(updatedFeed);
-
- FeedPreferences updatedFeedPreferences = updatedFeed.getPreferences();
- assertNotNull(updatedFeedPreferences);
-
- assertEquals("database updated with username", username, updatedFeedPreferences.getUsername());
- assertEquals("database updated with password", password, updatedFeedPreferences.getPassword());
- }
-
- private void updateAuthenticationSettings(String username, String password) {
- onView(withId(R.id.butShowSettings)).perform(click());
-
- clickPreference(R.string.authentication_label);
- onView(withId(R.id.usernameEditText)).perform(typeText(username));
- onView(withId(R.id.passwordEditText)).perform(typeText(password));
- onView(withText(R.string.confirm_label)).perform(click());
-
- onView(isRoot()).perform(pressBack());
- }
-
}
diff --git a/app/src/androidTest/java/de/test/antennapod/ui/PreferencesTest.java b/app/src/androidTest/java/de/test/antennapod/ui/PreferencesTest.java
index b790bc005..1b8100392 100644
--- a/app/src/androidTest/java/de/test/antennapod/ui/PreferencesTest.java
+++ b/app/src/androidTest/java/de/test/antennapod/ui/PreferencesTest.java
@@ -5,7 +5,6 @@ import android.content.SharedPreferences;
import android.content.res.Resources;
import androidx.annotation.StringRes;
import androidx.preference.PreferenceManager;
-import androidx.test.espresso.matcher.RootMatchers;
import androidx.test.filters.LargeTest;
import androidx.test.rule.ActivityTestRule;
import de.danoeh.antennapod.R;
@@ -25,9 +24,7 @@ import org.junit.Rule;
import org.junit.Test;
import java.util.Arrays;
-import java.util.concurrent.TimeUnit;
-import static androidx.test.espresso.Espresso.onData;
import static androidx.test.espresso.Espresso.onView;
import static androidx.test.espresso.action.ViewActions.click;
import static androidx.test.espresso.action.ViewActions.closeSoftKeyboard;
@@ -46,7 +43,6 @@ import static androidx.test.espresso.matcher.ViewMatchers.withText;
import static de.test.antennapod.EspressoTestUtils.clickPreference;
import static de.test.antennapod.EspressoTestUtils.waitForView;
import static java.util.concurrent.TimeUnit.MILLISECONDS;
-import static org.hamcrest.Matchers.anything;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.not;
import static org.junit.Assert.assertTrue;
@@ -227,30 +223,6 @@ public class PreferencesTest {
}
@Test
- public void testDisableUpdateInterval() {
- clickPreference(R.string.network_pref);
- clickPreference(R.string.feed_refresh_title);
- onView(withText(R.string.feed_refresh_never)).perform(click());
- onView(withId(R.id.disableRadioButton)).perform(click());
- onView(withText(R.string.confirm_label)).perform(click());
- Awaitility.await().atMost(1000, MILLISECONDS)
- .until(() -> UserPreferences.getUpdateInterval() == 0);
- }
-
- @Test
- public void testSetUpdateInterval() {
- clickPreference(R.string.network_pref);
- clickPreference(R.string.feed_refresh_title);
- onView(withId(R.id.intervalRadioButton)).perform(click());
- onView(withId(R.id.spinner)).perform(click());
- int position = 1; // an arbitrary position
- onData(anything()).inRoot(RootMatchers.isPlatformPopup()).atPosition(position).perform(click());
- onView(withText(R.string.confirm_label)).perform(click());
- Awaitility.await().atMost(1000, MILLISECONDS)
- .until(() -> UserPreferences.getUpdateInterval() == TimeUnit.HOURS.toMillis(2));
- }
-
- @Test
public void testSetSequentialDownload() {
clickPreference(R.string.network_pref);
clickPreference(R.string.pref_parallel_downloads_title);