object_management.alloc_callback_fail tests are trying to exhaustively
test all OOM paths in vkCreate* functions. However, to keep test run-
time reasonable, they have a fixed maximum allocation count and if
that is exceeded report a warning since OOM testing was not
exhaustive.
Since an implementation that requires more allocations than the limit
is valid, this commit changes the tests to report clean Pass instead
of CompatibilityWarning. Note about incomplete OOM testing is included
in the test log contents instead.
Affects:
dEQP-VK.api.object_management.alloc_callback_fail.*
VK-GL-CTS issue: 399
Components: Vulkan
Change-Id: I6890321546ae42f2646b8653007172d4b8affb8a
if (numPassingAllocs == 0)
return tcu::TestStatus(QP_TEST_RESULT_QUALITY_WARNING, "Allocation callbacks not called");
else if (numPassingAllocs == maxTries)
- return tcu::TestStatus(QP_TEST_RESULT_COMPATIBILITY_WARNING, "Max iter count reached; OOM testing incomplete");
+ {
+ context.getTestContext().getLog()
+ << TestLog::Message << "WARNING: Maximum iteration count (" << maxTries << ") reached without object construction passing. "
+ << "OOM testing incomplete, use --deqp-test-iteration-count= to test with higher limit." << TestLog::EndMessage;
+ return tcu::TestStatus(QP_TEST_RESULT_PASS, "Max iter count reached");
+ }
else
return tcu::TestStatus::pass("Ok");
}