Browse Source

Vk: XFAIL an expected DescriptorPool::allocate() failure on llvmpipe.

It was an XFAIL in some other case already, do it here as well -- it
seems that llvmpipe now never fails the allocation. Not sure since when
that happens, because several Mesa versions until 23.3 (?) had a
regression with skinning shaders, leading to the automated tests failing
even before they could reach the llvmpipe variant of Vk tests.
pull/168/merge
Vladimír Vondruš 2 years ago
parent
commit
9cb4716a41
  1. 12
      src/Magnum/Vk/Test/DescriptorPoolVkTest.cpp

12
src/Magnum/Vk/Test/DescriptorPoolVkTest.cpp

@ -282,7 +282,11 @@ void DescriptorPoolVkTest::allocateVariableCountFail() {
/* tryAllocate() should not assert, and should not print anything */
std::ostringstream out;
Error redirectError{&out};
CORRADE_VERIFY(!pool.tryAllocate(layout, 80));
{
CORRADE_EXPECT_FAIL_IF(device().properties().name().contains("llvmpipe"),
"Mesa llvmpipe never fails an allocation.");
CORRADE_VERIFY(!pool.tryAllocate(layout, 80));
}
CORRADE_COMPARE(out.str(), "");
} {
CORRADE_SKIP_IF_NO_ASSERT();
@ -291,7 +295,11 @@ void DescriptorPoolVkTest::allocateVariableCountFail() {
std::ostringstream out;
Error redirectError{&out};
pool.allocate(layout, 80);
CORRADE_COMPARE(out.str(), "Vk::DescriptorPool::allocate(): allocation failed with Vk::Result::ErrorOutOfPoolMemory\n");
{
CORRADE_EXPECT_FAIL_IF(device().properties().name().contains("llvmpipe"),
"Mesa llvmpipe never fails an allocation.");
CORRADE_COMPARE(out.str(), "Vk::DescriptorPool::allocate(): allocation failed with Vk::Result::ErrorOutOfPoolMemory\n");
}
}
}

Loading…
Cancel
Save