summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJames Zern <jzern@google.com>2015-09-25 20:31:45 -0700
committerJames Zern <jzern@google.com>2015-10-06 16:40:20 -0700
commitfb209003a8b9f1c52b2512391a74004b898e749c (patch)
tree8476ac0b43cdb438a00ae7d8611b38630bcea81f /test
parentce3f4ade670cf02e05998f4ca50e08736802f5e7 (diff)
downloadlibvpx-fb209003a8b9f1c52b2512391a74004b898e749c.tar.gz
invalid_file_test: loosen error check w/tile-threading
The serial decode check is too strict for tile-threaded decoding as there is no guarantee on the decode order nor which specific error will take precedence. Currently a tile-level error is not forwarded so the frame will simply be marked corrupt. Change-Id: I51cf1e39e44bedeac93746154b36a4ccb2f059b1
Diffstat (limited to 'test')
-rw-r--r--test/invalid_file_test.cc19
1 files changed, 16 insertions, 3 deletions
diff --git a/test/invalid_file_test.cc b/test/invalid_file_test.cc
index 129cd786f..f4241eb82 100644
--- a/test/invalid_file_test.cc
+++ b/test/invalid_file_test.cc
@@ -63,9 +63,22 @@ class InvalidFileTest
EXPECT_NE(res, EOF) << "Read result data failed";
// Check results match.
- EXPECT_EQ(expected_res_dec, res_dec)
- << "Results don't match: frame number = " << video.frame_number()
- << ". (" << decoder->DecodeError() << ")";
+ const DecodeParam input = GET_PARAM(1);
+ if (input.threads > 1) {
+ // The serial decode check is too strict for tile-threaded decoding as
+ // there is no guarantee on the decode order nor which specific error
+ // will take precedence. Currently a tile-level error is not forwarded so
+ // the frame will simply be marked corrupt.
+ EXPECT_TRUE(res_dec == expected_res_dec ||
+ res_dec == VPX_CODEC_CORRUPT_FRAME)
+ << "Results don't match: frame number = " << video.frame_number()
+ << ". (" << decoder->DecodeError() << "). Expected: "
+ << expected_res_dec << " or " << VPX_CODEC_CORRUPT_FRAME;
+ } else {
+ EXPECT_EQ(expected_res_dec, res_dec)
+ << "Results don't match: frame number = " << video.frame_number()
+ << ". (" << decoder->DecodeError() << ")";
+ }
return !HasFailure();
}