mirror of
https://github.com/f-droid/fdroidclient.git
synced 2026-02-20 08:08:04 -05:00
Merge branch 'ci-26' into 'master'
Run instrumentation test using ftp.fau.de instead of f-droid.org to avoid Let's Encrypt and work on SDK 23 See merge request fdroid/fdroidclient!1357
This commit is contained in:
@@ -51,12 +51,16 @@ public class HttpDownloaderTest {
|
||||
new Pair<>("https://ftp.fau.de/fdroid/repo", "dev.lonami.klooni/en-US/phoneScreenshots/1-game.jpg"),
|
||||
//new Pair<>("https://microg.org/fdroid/repo/index-v1.jar"),
|
||||
//new Pair<>("https://grobox.de/fdroid/repo/index.jar"),
|
||||
new Pair<>("https://guardianproject.info/fdroid/repo", IndexV1UpdaterKt.SIGNED_FILE_NAME)
|
||||
new Pair<>("https://guardianproject.info/fdroid/repo", IndexV1UpdaterKt.SIGNED_FILE_NAME),
|
||||
new Pair<>("https://en.wikipedia.org", "/wiki/Index.html"), // no SNI but weird ipv6 lookup issues
|
||||
new Pair<>("https://mirror.cyberbits.eu/fdroid/repo/", IndexV1UpdaterKt.SIGNED_FILE_NAME) // TLSv1.2 only and SNI
|
||||
));
|
||||
if (Build.VERSION.SDK_INT >= 22) {
|
||||
tempUrls.addAll(Arrays.asList(
|
||||
new Pair<>("https://en.wikipedia.org", "/wiki/Index.html"), // no SNI but weird ipv6 lookup issues
|
||||
new Pair<>("https://mirror.cyberbits.eu/fdroid/repo/", IndexV1UpdaterKt.SIGNED_FILE_NAME) // TLSv1.2 only and SNI
|
||||
if (Build.VERSION.SDK_INT < 26) {
|
||||
// domains that use Let's Encrypt won't work on Android 7.1 and older
|
||||
// https://gitlab.com/fdroid/fdroidclient/-/issues/2102
|
||||
tempUrls = new ArrayList<>(Arrays.asList(
|
||||
new Pair<>("https://ftp.fau.de/fdroid/repo/", IndexV1UpdaterKt.SIGNED_FILE_NAME),
|
||||
new Pair<>("https://ftp.gwdg.de/pub/android/fdroid/repo/", IndexV1UpdaterKt.SIGNED_FILE_NAME)
|
||||
));
|
||||
}
|
||||
URLS = tempUrls;
|
||||
@@ -151,7 +155,7 @@ public class HttpDownloaderTest {
|
||||
public void downloadThenCancel() throws IOException, InterruptedException {
|
||||
final CountDownLatch latch = new CountDownLatch(2);
|
||||
String path = "index.jar";
|
||||
List<Mirror> mirrors = Mirror.fromStrings(Collections.singletonList("https://f-droid.org/repo/"));
|
||||
List<Mirror> mirrors = Mirror.fromStrings(Collections.singletonList("https://ftp.fau.de/fdroid/repo/"));
|
||||
File destFile = File.createTempFile("dl-", "");
|
||||
final DownloadRequest request = new DownloadRequest(path, mirrors, null, null, null);
|
||||
final HttpDownloader httpDownloader = new HttpDownloader(httpManager, request, destFile);
|
||||
|
||||
@@ -16,12 +16,12 @@ import org.fdroid.getIndexFile
|
||||
import org.fdroid.getRandomString
|
||||
import org.fdroid.runSuspend
|
||||
import org.json.JSONObject
|
||||
import org.junit.Assume.assumeTrue
|
||||
import org.junit.runner.RunWith
|
||||
import javax.net.ssl.SSLHandshakeException
|
||||
import kotlin.test.Test
|
||||
import kotlin.test.assertEquals
|
||||
import kotlin.test.assertFalse
|
||||
import kotlin.test.assertTrue
|
||||
|
||||
@RunWith(AndroidJUnit4::class)
|
||||
@Suppress("BlockingMethodInNonBlockingContext")
|
||||
@@ -113,7 +113,10 @@ internal class HttpManagerInstrumentationTest {
|
||||
// second request right after resumed session
|
||||
JSONObject(httpManager.getBytes(downloadRequest).decodeToString()).let { json ->
|
||||
val connectionInfo = json.getJSONObject("connection_info")
|
||||
assertTrue(connectionInfo.getBoolean("session_resumed"))
|
||||
assumeTrue(
|
||||
"Session was not resumed at all",
|
||||
connectionInfo.getBoolean("session_resumed")
|
||||
)
|
||||
}
|
||||
delay(10_100)
|
||||
// third request after 10s did not resume session
|
||||
|
||||
Reference in New Issue
Block a user