@@ -254,18 +254,43 @@ TEST_F(SchedulerTest, emitModeChangeEvent) {
254254}
255255
256256TEST_F (SchedulerTest, calculateMaxAcquiredBufferCount) {
257- EXPECT_EQ (1 , mFlinger .calculateMaxAcquiredBufferCount (60_Hz, 30ms));
258- EXPECT_EQ (2 , mFlinger .calculateMaxAcquiredBufferCount (90_Hz, 30ms));
259- EXPECT_EQ (3 , mFlinger .calculateMaxAcquiredBufferCount (120_Hz, 30ms));
257+ struct TestCase {
258+ Fps refreshRate;
259+ std::chrono::nanoseconds presentLatency;
260+ int expectedBufferCount;
261+ };
260262
261- EXPECT_EQ (2 , mFlinger .calculateMaxAcquiredBufferCount (60_Hz, 40ms));
263+ const auto verifyTestCases = [&](std::vector<TestCase> tests) {
264+ for (const auto testCase : tests) {
265+ EXPECT_EQ (testCase.expectedBufferCount ,
266+ mFlinger .calculateMaxAcquiredBufferCount (testCase.refreshRate ,
267+ testCase.presentLatency ));
268+ }
269+ };
262270
263- EXPECT_EQ (1 , mFlinger .calculateMaxAcquiredBufferCount (60_Hz, 10ms));
271+ std::vector<TestCase> testCases{{60_Hz, 30ms, 1 },
272+ {90_Hz, 30ms, 2 },
273+ {120_Hz, 30ms, 3 },
274+ {60_Hz, 40ms, 2 },
275+ {60_Hz, 10ms, 1 }};
276+ verifyTestCases (testCases);
264277
265278 const auto savedMinAcquiredBuffers = mFlinger .mutableMinAcquiredBuffers ();
266279 mFlinger .mutableMinAcquiredBuffers () = 2 ;
267- EXPECT_EQ ( 2 , mFlinger . calculateMaxAcquiredBufferCount ( 60_Hz, 10ms) );
280+ verifyTestCases ({{ 60_Hz, 10ms, 2 }} );
268281 mFlinger .mutableMinAcquiredBuffers () = savedMinAcquiredBuffers;
282+
283+ const auto savedMaxAcquiredBuffers = mFlinger .mutableMaxAcquiredBuffers ();
284+ mFlinger .mutableMaxAcquiredBuffers () = 2 ;
285+ testCases = {{60_Hz, 30ms, 1 },
286+ {90_Hz, 30ms, 2 },
287+ {120_Hz, 30ms, 2 }, // max buffers allowed is 2
288+ {60_Hz, 40ms, 2 },
289+ {60_Hz, 10ms, 1 }};
290+ verifyTestCases (testCases);
291+ mFlinger .mutableMaxAcquiredBuffers () = 3 ; // max buffers allowed is 3
292+ verifyTestCases ({{120_Hz, 30ms, 3 }});
293+ mFlinger .mutableMaxAcquiredBuffers () = savedMaxAcquiredBuffers;
269294}
270295
271296MATCHER (Is120Hz, " " ) {
0 commit comments