删除plot_core

This commit is contained in:
2026-08-13 00:35:00 +08:00
parent 15c3d21f2d
commit 05263cd506
67 changed files with 4154 additions and 1336 deletions
@@ -214,3 +214,26 @@ TEST(scene2d_context_test, failed_attach_leaves_renderable_fully_detached) {
EXPECT_NO_THROW(scene.attach_renderable(renderable));
EXPECT_EQ(scene.renderable_count(), 1);
}
struct Scene2D_Viewport_Snapshot_Renderable : Renderable_Base {
explicit Scene2D_Viewport_Snapshot_Renderable(Scene_Base& scene) : Renderable_Base(scene) {}
void prepare(const Scene_Render_Context& context) override {
viewport = context.viewport;
}
Frame_Viewport viewport;
};
TEST(scene2d_context_test, published_scene_viewport_is_frozen_for_render) {
Scene2D_Context<> scene;
auto renderable = std::make_shared<Scene2D_Viewport_Snapshot_Renderable>(scene);
scene.attach_renderable(renderable);
scene.Scene_State_Strategy::set<&Scene2D_State::viewport>(Frame_Viewport{320, 180});
scene.publish_frame_state();
scene.Scene_State_Strategy::set<&Scene2D_State::viewport>(Frame_Viewport{640, 360});
scene.render();
scene.wait_for_render();
EXPECT_EQ(renderable->viewport, (Frame_Viewport{320, 180}));
scene.publish_frame_state();
renderable->invalidate_prepare();
scene.render();
scene.wait_for_render();
EXPECT_EQ(renderable->viewport, (Frame_Viewport{640, 360}));
}