diff --git a/tests/gx_fifo_test.cpp b/tests/gx_fifo_test.cpp index f42352d..9221922 100644 --- a/tests/gx_fifo_test.cpp +++ b/tests/gx_fifo_test.cpp @@ -3052,13 +3052,18 @@ TEST_F(GXFifoTest, CopyClear_MaxDepth) { EXPECT_EQ(g_gxState.clearDepth, 0xFFFFFFu); } -TEST_F(GXFifoTest, PeekZ_ReturnsClearDepthFallbackAndRequestsSnapshot) { +TEST_F(GXFifoTest, PeekZ_FallsBackToZeroAndRequestsSnapshot) { g_gxState.clearDepth = 0x123456; u32 z = 0; GXPeekZ(10, 20, &z); - EXPECT_EQ(z, 0x123456u); + EXPECT_EQ(z, 0u); + EXPECT_FALSE(aurora::gfx::depth_peek::testing::snapshot_requested()); + + auto bytes = capture_fifo(); + EXPECT_TRUE(has_aurora_cmd(bytes, GX_AURORA_REQUEST_DEPTH_SNAPSHOT)); + decode_fifo(bytes); EXPECT_TRUE(aurora::gfx::depth_peek::testing::snapshot_requested()); } @@ -3069,17 +3074,25 @@ TEST_F(GXFifoTest, PeekZ_ReturnsLatestCompletedSnapshot) { GXPeekZ(1, 1, &z); EXPECT_EQ(z, 0x000004u); + EXPECT_FALSE(aurora::gfx::depth_peek::testing::snapshot_requested()); + + auto bytes = capture_fifo(); + decode_fifo(bytes); EXPECT_TRUE(aurora::gfx::depth_peek::testing::snapshot_requested()); } -TEST_F(GXFifoTest, PeekZ_OutOfRangeReturnsClearDepthFallback) { +TEST_F(GXFifoTest, PeekZ_OutOfRangeFallsBackToZero) { g_gxState.clearDepth = 0xabcdef; aurora::gfx::depth_peek::testing::set_latest(1, 1, {0x000001}); u32 z = 0; GXPeekZ(1, 0, &z); - EXPECT_EQ(z, 0xabcdefu); + EXPECT_EQ(z, 0u); + EXPECT_FALSE(aurora::gfx::depth_peek::testing::snapshot_requested()); + + auto bytes = capture_fifo(); + decode_fifo(bytes); EXPECT_TRUE(aurora::gfx::depth_peek::testing::snapshot_requested()); }