删除plot_core
This commit is contained in:
@@ -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}));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user