aom: ethread_test: add AVxFirstPassEncoderThreadTestLarge

From 4470f1a9ade0e806f66fba52334eb6b8aabd3eef Mon Sep 17 00:00:00 2001
From: James Zern <[EMAIL REDACTED]>
Date: Wed, 26 Jun 2024 15:52:57 -0700
Subject: [PATCH] ethread_test: add AVxFirstPassEncoderThreadTestLarge

and move speeds 0 and 2 from AVxFirstPassEncoderThreadTest to it. This
test does multiple encodes at 720P, which can be quite slow under some
sanitizers.

Change-Id: Ifd374af65c2ed1c38e9470630e42dc691b3f30e5
---
 test/ethread_test.cc | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/test/ethread_test.cc b/test/ethread_test.cc
index fd5f3dd0c..da3be3fb2 100644
--- a/test/ethread_test.cc
+++ b/test/ethread_test.cc
@@ -102,6 +102,8 @@ class AVxFirstPassEncoderThreadTest
     firstpass_stats_.sz += pkt_size;
   }
 
+  void DoTest();
+
   bool encoder_initialized_;
   ::libaom_test::TestMode encoding_mode_;
   int set_cpu_used_;
@@ -129,7 +131,7 @@ static void compare_fp_stats_md5(aom_fixed_buf_t *fp_stats) {
       << "MD5 checksums don't match";
 }
 
-TEST_P(AVxFirstPassEncoderThreadTest, FirstPassStatsTest) {
+void AVxFirstPassEncoderThreadTest::DoTest() {
   ::libaom_test::Y4mVideoSource video("niklas_1280_720_30.y4m", 0, 60);
   aom_fixed_buf_t firstpass_stats;
   size_t single_run_sz;
@@ -201,6 +203,13 @@ TEST_P(AVxFirstPassEncoderThreadTest, FirstPassStatsTest) {
   // Comparison 4 (between threads=4 and threads=8).
   compare_fp_stats_md5(&firstpass_stats);
 }
+
+TEST_P(AVxFirstPassEncoderThreadTest, FirstPassStatsTest) { DoTest(); }
+
+using AVxFirstPassEncoderThreadTestLarge = AVxFirstPassEncoderThreadTest;
+
+TEST_P(AVxFirstPassEncoderThreadTestLarge, FirstPassStatsTest) { DoTest(); }
+
 #endif  // !CONFIG_REALTIME_ONLY
 
 class AVxEncoderThreadTest
@@ -504,10 +513,14 @@ TEST_P(AVxEncoderThreadAllIntraTestLarge, EncoderResultTest) {
 // first pass stats test
 AV1_INSTANTIATE_TEST_SUITE(AVxFirstPassEncoderThreadTest,
                            ::testing::Values(::libaom_test::kTwoPassGood),
-                           ::testing::Range(0, 6, 2), ::testing::Range(0, 2),
+                           ::testing::Values(4), ::testing::Range(0, 2),
+                           ::testing::Range(1, 3));
+
+AV1_INSTANTIATE_TEST_SUITE(AVxFirstPassEncoderThreadTestLarge,
+                           ::testing::Values(::libaom_test::kTwoPassGood),
+                           ::testing::Values(0, 2), ::testing::Range(0, 2),
                            ::testing::Range(1, 3));
 
-// For AV1, test speed 0, 1, 2, 3, 5.
 // Only test cpu_used 2 here.
 AV1_INSTANTIATE_TEST_SUITE(AVxEncoderThreadTest,
                            ::testing::Values(::libaom_test::kTwoPassGood),