mirror of
https://github.com/samsonjs/media.git
synced 2026-03-31 10:25:48 +00:00
Derive test output video name from the TAG.
We need the filename of the output videos to be predictable, because MobileHarness requires the exact filename to pull the file. PiperOrigin-RevId: 412092347
This commit is contained in:
parent
c18cbf1b22
commit
e45140871e
6 changed files with 35 additions and 11 deletions
|
|
@ -50,6 +50,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||
* Transforms the {@code uriString} with the {@link Transformer}.
|
||||
*
|
||||
* @param context The {@link Context}.
|
||||
* @param testId An identifier for the test.
|
||||
* @param transformer The {@link Transformer} that performs the transformation.
|
||||
* @param uriString The uri (as a {@link String}) that will be transformed.
|
||||
* @param timeoutSeconds The transformer timeout. An assertion confirms this is not exceeded.
|
||||
|
|
@ -57,7 +58,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||
* @throws Exception The cause of the transformation not completing.
|
||||
*/
|
||||
public static TransformationResult runTransformer(
|
||||
Context context, Transformer transformer, String uriString, int timeoutSeconds)
|
||||
Context context, String testId, Transformer transformer, String uriString, int timeoutSeconds)
|
||||
throws Exception {
|
||||
AtomicReference<@NullableType Exception> exceptionReference = new AtomicReference<>();
|
||||
CountDownLatch countDownLatch = new CountDownLatch(1);
|
||||
|
|
@ -81,7 +82,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||
.build();
|
||||
|
||||
Uri uri = Uri.parse(uriString);
|
||||
File externalCacheFile = createExternalCacheFile(uri, context);
|
||||
File externalCacheFile = createExternalCacheFile(context, /* filePrefix= */ testId);
|
||||
try {
|
||||
InstrumentationRegistry.getInstrumentation()
|
||||
.runOnMainSync(
|
||||
|
|
@ -108,11 +109,12 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||
}
|
||||
}
|
||||
|
||||
private static File createExternalCacheFile(Uri uri, Context context) throws IOException {
|
||||
File file = new File(context.getExternalCacheDir(), "transformer-" + uri.hashCode());
|
||||
private static File createExternalCacheFile(Context context, String filePrefix)
|
||||
throws IOException {
|
||||
File file = new File(context.getExternalCacheDir(), filePrefix + "-output.mp4");
|
||||
Assertions.checkState(
|
||||
!file.exists() || file.delete(), "Could not delete the previous transformer output file");
|
||||
Assertions.checkState(file.createNewFile(), "Could not create the transformer output file");
|
||||
!file.exists() || file.delete(), "Could not delete the previous transformer output file.");
|
||||
Assertions.checkState(file.createNewFile(), "Could not create the transformer output file.");
|
||||
return file;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -31,6 +31,11 @@ public class RemoveAudioTransformationTest {
|
|||
public void removeAudioTransform() throws Exception {
|
||||
Context context = ApplicationProvider.getApplicationContext();
|
||||
Transformer transformer = new Transformer.Builder(context).setRemoveAudio(true).build();
|
||||
runTransformer(context, transformer, MP4_ASSET_URI_STRING, /* timeoutSeconds= */ 120);
|
||||
runTransformer(
|
||||
context,
|
||||
/* testId= */ "removeAudioTransform",
|
||||
transformer,
|
||||
MP4_ASSET_URI_STRING,
|
||||
/* timeoutSeconds= */ 120);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,6 +31,11 @@ public class RemoveVideoTransformationTest {
|
|||
public void removeVideoTransform() throws Exception {
|
||||
Context context = ApplicationProvider.getApplicationContext();
|
||||
Transformer transformer = new Transformer.Builder(context).setRemoveVideo(true).build();
|
||||
runTransformer(context, transformer, MP4_ASSET_URI_STRING, /* timeoutSeconds= */ 120);
|
||||
runTransformer(
|
||||
context,
|
||||
/* testId= */ "removeVideoTransform",
|
||||
transformer,
|
||||
MP4_ASSET_URI_STRING,
|
||||
/* timeoutSeconds= */ 120);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,6 @@ import org.junit.runner.RunWith;
|
|||
@RunWith(AndroidJUnit4.class)
|
||||
@Ignore("Internal - b/206917996")
|
||||
public final class RepeatedTranscodeTransformationTest {
|
||||
|
||||
private static final int TRANSCODE_COUNT = 10;
|
||||
|
||||
@Test
|
||||
|
|
@ -50,6 +49,7 @@ public final class RepeatedTranscodeTransformationTest {
|
|||
differentOutputSizesBytes.add(
|
||||
runTransformer(
|
||||
context,
|
||||
/* testId= */ "repeatedTranscode_givesConsistentLengthOutput",
|
||||
transformer,
|
||||
AndroidTestUtil.REMOTE_MP4_10_SECONDS_URI_STRING,
|
||||
/* timeoutSeconds= */ 120)
|
||||
|
|
@ -77,6 +77,7 @@ public final class RepeatedTranscodeTransformationTest {
|
|||
differentOutputSizesBytes.add(
|
||||
runTransformer(
|
||||
context,
|
||||
/* testId= */ "repeatedTranscodeNoAudio_givesConsistentLengthOutput",
|
||||
transformer,
|
||||
AndroidTestUtil.REMOTE_MP4_10_SECONDS_URI_STRING,
|
||||
/* timeoutSeconds= */ 120)
|
||||
|
|
@ -104,6 +105,7 @@ public final class RepeatedTranscodeTransformationTest {
|
|||
differentOutputSizesBytes.add(
|
||||
runTransformer(
|
||||
context,
|
||||
/* testId= */ "repeatedTranscodeNoVideo_givesConsistentLengthOutput",
|
||||
transcodingTransformer,
|
||||
AndroidTestUtil.REMOTE_MP4_10_SECONDS_URI_STRING,
|
||||
/* timeoutSeconds= */ 120)
|
||||
|
|
|
|||
|
|
@ -32,6 +32,11 @@ public class SefTransformationTest {
|
|||
Context context = ApplicationProvider.getApplicationContext();
|
||||
Transformer transformer =
|
||||
new Transformer.Builder(context).setFlattenForSlowMotion(true).build();
|
||||
runTransformer(context, transformer, SEF_ASSET_URI_STRING, /* timeoutSeconds= */ 120);
|
||||
runTransformer(
|
||||
context,
|
||||
/* testId = */ "sefTransform",
|
||||
transformer,
|
||||
SEF_ASSET_URI_STRING,
|
||||
/* timeoutSeconds= */ 120);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,6 +31,11 @@ public class TransformationTest {
|
|||
public void transform() throws Exception {
|
||||
Context context = ApplicationProvider.getApplicationContext();
|
||||
Transformer transformer = new Transformer.Builder(context).build();
|
||||
runTransformer(context, transformer, MP4_ASSET_URI_STRING, /* timeoutSeconds= */ 120);
|
||||
runTransformer(
|
||||
context,
|
||||
/* testId= */ "transform",
|
||||
transformer,
|
||||
MP4_ASSET_URI_STRING,
|
||||
/* timeoutSeconds= */ 120);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue