feat(tests): enhance initialization order tests with renderer type checks and logging improvements

This commit is contained in:
2026-01-08 13:13:52 +00:00
parent 715fc1481e
commit e85d41995a
2 changed files with 41 additions and 1 deletions

View File

@@ -17,6 +17,29 @@
namespace {
const char* RendererTypeName(bgfx::RendererType::Enum type) {
switch (type) {
case bgfx::RendererType::Noop:
return "Noop";
case bgfx::RendererType::Vulkan:
return "Vulkan";
case bgfx::RendererType::OpenGL:
return "OpenGL";
case bgfx::RendererType::OpenGLES:
return "OpenGLES";
case bgfx::RendererType::Direct3D11:
return "Direct3D11";
case bgfx::RendererType::Direct3D12:
return "Direct3D12";
case bgfx::RendererType::Metal:
return "Metal";
case bgfx::RendererType::Count:
return "Auto";
default:
return "Unknown";
}
}
class BgfxInitializationOrderTest : public ::testing::Test {
protected:
void TearDown() override {
@@ -32,7 +55,13 @@ TEST_F(BgfxInitializationOrderTest, CreateTexture_BeforeFrame_ProducesInvalidHan
init.resolution.width = 1024;
init.resolution.height = 768;
init.resolution.reset = BGFX_RESET_NONE;
ASSERT_TRUE(bgfx::init(init));
if (!bgfx::init(init)) {
GTEST_SKIP() << "bgfx::init failed";
}
const auto rendererType = bgfx::getRendererType();
if (rendererType != bgfx::RendererType::Noop) {
GTEST_SKIP() << "Noop renderer unavailable; actual=" << RendererTypeName(rendererType);
}
// ❌ WRONG: Create texture BEFORE first frame
// NOTE: With Noop renderer this might still create valid handles,