skip transformer tests if no internet connection

The failure reason (no network) will be logged in the test output, but the test will not be marked as failing, rather skipped.

PiperOrigin-RevId: 518262203
This commit is contained in:
tofunmi 2023-03-21 14:06:11 +00:00 committed by microkatz
parent ea3a85f89f
commit 3a6ee77daf

View File

@ -18,6 +18,7 @@ package androidx.media3.transformer;
import static androidx.media3.common.util.Assertions.checkArgument;
import static androidx.media3.common.util.Assertions.checkNotNull;
import static java.util.concurrent.TimeUnit.SECONDS;
import static org.junit.Assume.assumeTrue;
import android.content.Context;
import android.net.ConnectivityManager;
@ -270,17 +271,16 @@ public class TransformerAndroidTestRunner {
.equals(MediaItem.ClippingConfiguration.UNSET),
"SSIM calculation is not supported for clipped inputs.");
}
if (!hasNetworkConnection(context)) {
for (EditedMediaItemSequence sequence : composition.sequences) {
for (EditedMediaItem editedMediaItem : sequence.editedMediaItems) {
Uri mediaItemUri = checkNotNull(editedMediaItem.mediaItem.localConfiguration).uri;
String scheme = checkNotNull(mediaItemUri.getScheme());
if ((scheme.equals("http") || scheme.equals("https"))) {
throw new IllegalArgumentException(
"Input network file requested on device with no network connection. Input file"
+ " name: "
+ mediaItemUri);
}
for (EditedMediaItemSequence sequence : composition.sequences) {
for (EditedMediaItem editedMediaItem : sequence.editedMediaItems) {
Uri mediaItemUri = checkNotNull(editedMediaItem.mediaItem.localConfiguration).uri;
String scheme = checkNotNull(mediaItemUri.getScheme());
if ((scheme.equals("http") || scheme.equals("https"))) {
assumeTrue(
"Input network file requested on device with no network connection. Input file"
+ " name: "
+ mediaItemUri,
hasNetworkConnection(context));
}
}
}