From 1163660918677e07c9a454cb6254469a03996c0d Mon Sep 17 00:00:00 2001 From: huangdarwin Date: Wed, 31 Jan 2024 09:09:58 -0800 Subject: [PATCH] Test: Save test bitmaps in a separate loop from assertions. This means all bitmaps will save even if an assertion fails somewhere in the test method PiperOrigin-RevId: 603067528 --- .../media3/transformer/SequenceEffectTestUtil.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/SequenceEffectTestUtil.java b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/SequenceEffectTestUtil.java index 20cdefbbc8..77f5024794 100644 --- a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/SequenceEffectTestUtil.java +++ b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/SequenceEffectTestUtil.java @@ -101,15 +101,18 @@ public final class SequenceEffectTestUtil { public static void assertBitmapsMatchExpectedAndSave(List actualBitmaps, String testId) throws IOException { for (int i = 0; i < actualBitmaps.size(); i++) { - Bitmap actualBitmap = actualBitmaps.get(i); maybeSaveTestBitmap( - testId, /* bitmapLabel= */ String.valueOf(i), actualBitmap, /* path= */ null); + testId, /* bitmapLabel= */ String.valueOf(i), actualBitmaps.get(i), /* path= */ null); + } + + for (int i = 0; i < actualBitmaps.size(); i++) { String subTestId = testId + "_" + i; String expectedPath = Util.formatInvariant("%s/%s.png", PNG_ASSET_BASE_PATH, subTestId); Bitmap expectedBitmap = readBitmap(expectedPath); float averagePixelAbsoluteDifference = - getBitmapAveragePixelAbsoluteDifferenceArgb8888(expectedBitmap, actualBitmap, subTestId); + getBitmapAveragePixelAbsoluteDifferenceArgb8888( + expectedBitmap, actualBitmaps.get(i), subTestId); assertWithMessage("For expected bitmap " + expectedPath) .that(averagePixelAbsoluteDifference) .isAtMost(MAXIMUM_AVERAGE_PIXEL_ABSOLUTE_DIFFERENCE_LUMA);