This commit is contained in:
2026-08-16 21:50:12 +08:00
parent 3153f7d64f
commit 8073e18318
22 changed files with 332 additions and 355 deletions
+20 -20
View File
@@ -53,7 +53,7 @@ static_assert(!Legacy_Axis_Property_Api<Time_Axis>);
static_assert(!Legacy_Time_Axis_Property_Api<Time_Axis>);
TEST(Renderive_Core2, RootIdentityAndRefreshDiagnosticsComeFromKernelState) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
ASSERT_TRUE(root);
@@ -157,7 +157,7 @@ TEST(Renderive_Core2, BicubicHeatmapUsesRealCubicResampling) {
EXPECT_NE(bilinear, bicubic);
}
TEST(Renderive_Core2, KernelSceneRendersBusinessObjectsIntoBlend2DFrame) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
plot.set_viewport_size({320, 180});
plot.activate_view();
@@ -238,7 +238,7 @@ TEST(Renderive_Core2, KernelSceneRendersBusinessObjectsIntoBlend2DFrame) {
EXPECT_NE(plot.render_frame().value(), Plot_Render_Status::rendered);
}
TEST(Renderive_Core2, StandaloneRenderableBuilderJoinsSceneOnlyInsideRuntimeEditor) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
const auto [frequency, power] = build_initial(plot, [&](auto& attach) {
@@ -274,7 +274,7 @@ TEST(Renderive_Core2, StandaloneRenderableBuilderJoinsSceneOnlyInsideRuntimeEdit
}));
}
TEST(Renderive_Core2, TimeAxisUsesOneFontStateAndFormatsConfiguredLabels) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
auto axis = build_initial(plot, [&](auto& attach) {
@@ -292,7 +292,7 @@ TEST(Renderive_Core2, TimeAxisUsesOneFontStateAndFormatsConfiguredLabels) {
EXPECT_EQ(axis->get<&Time_Axis::Properties::tick_label_spacing_px>(), 17);
}
TEST(Renderive_Core2, PerformanceOverlayConsumesKernelFrameDiagnostics) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
plot.set_viewport_size({160, 90});
plot.activate_view();
@@ -313,7 +313,7 @@ TEST(Renderive_Core2, PerformanceOverlayConsumesKernelFrameDiagnostics) {
EXPECT_DOUBLE_EQ(plot.max_render_fps(), 120.0);
}
TEST(Renderive_Core2, AllFrameControlModesUseKernelStrategiesAndExposeObservers) {
Plot_Scene manual({.frame_mode = Plot_Frame_Mode::Manual});
Render_Scene_2D manual({.frame_mode = Plot_Frame_Mode::Manual});
manual.init();
manual.set_viewport_size({64, 40});
EXPECT_EQ(manual.frame_mode(), Plot_Frame_Mode::Manual);
@@ -326,7 +326,7 @@ TEST(Renderive_Core2, AllFrameControlModesUseKernelStrategiesAndExposeObservers)
manual_observer = manual.frame_status();
EXPECT_EQ(manual_observer.last_event, "rendered");
EXPECT_EQ(manual_observer.consumed_frame_count, 1u);
Plot_Scene low_latency;
Render_Scene_2D low_latency;
low_latency.init();
low_latency.set_viewport_size({64, 40});
low_latency.activate_view();
@@ -335,7 +335,7 @@ TEST(Renderive_Core2, AllFrameControlModesUseKernelStrategiesAndExposeObservers)
EXPECT_EQ(low_latency.frame_mode(), Plot_Frame_Mode::Low_Latency);
EXPECT_EQ(low_observer.last_event, "lifecycle_completed");
EXPECT_EQ(low_observer.consumed_frame_count, 1u);
Plot_Scene playback({.frame_mode = Plot_Frame_Mode::Playback});
Render_Scene_2D playback({.frame_mode = Plot_Frame_Mode::Playback});
playback.init();
playback.set_viewport_size({64, 40});
ASSERT_TRUE(playback.prepare_frame());
@@ -352,7 +352,7 @@ TEST(Renderive_Core2, AllFrameControlModesUseKernelStrategiesAndExposeObservers)
EXPECT_EQ(playback_observer.consumed_frame_count, 1u);
}
TEST(Renderive_Core2, RetainedAxisAndTimeAxisApisRoundTripWithoutWebAdapters) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
ASSERT_TRUE(root);
@@ -434,7 +434,7 @@ TEST(Renderive_Core2, RetainedAxisAndTimeAxisApisRoundTripWithoutWebAdapters) {
EXPECT_EQ(time_axis->tick_label(first), "01:02:03.004");
}
TEST(Renderive_Core2, RetainedSpectrumApisRoundTripAndMarkersRemainObservable) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
plot.set_viewport_size({360, 240});
plot.activate_view();
@@ -523,7 +523,7 @@ TEST(Renderive_Core2, RetainedSpectrumApisRoundTripAndMarkersRemainObservable) {
EXPECT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
}
TEST(Renderive_Core2, RetainedHeatmapSweepAndTraceApisPreserveDataShapes) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
plot.set_viewport_size({420, 280});
plot.activate_view();
@@ -637,7 +637,7 @@ TEST(Renderive_Core2, RetainedHeatmapSweepAndTraceApisPreserveDataShapes) {
EXPECT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
}
TEST(Renderive_Core2, RetainedSelectionAndConstellationApisDriveInteractionAndLayout) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
plot.set_viewport_size({360, 260});
plot.activate_view();
@@ -716,7 +716,7 @@ TEST(Renderive_Core2, RetainedSelectionAndConstellationApisDriveInteractionAndLa
EXPECT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
}
TEST(Renderive_Core2, PlottablePropertiesPublishOnlyAtFrameBoundary) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
const auto [frequency, power, spectrum] = build_initial(plot, [&](auto& attach) {
@@ -746,7 +746,7 @@ TEST(Renderive_Core2, PlottablePropertiesPublishOnlyAtFrameBoundary) {
ASSERT_TRUE(plot.render_prepared_frame());
}
TEST(Renderive_Core2, EveryStatefulRenderableOwnsItsStateObserver) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
const auto [frequency, power, spectrum] = build_initial(plot, [&](auto& attach) {
@@ -797,7 +797,7 @@ TEST(Renderive_Core2, EveryStatefulRenderableOwnsItsStateObserver) {
EXPECT_EQ(spectrum->observation().event, Renderable_Observer_Event::Published);
}
TEST(Renderive_Core2, PlottableDataUpdatesReachKernelRealTimeDataStrategy) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
const auto [frequency, power, spectrum] = build_initial(plot, [&](auto& attach) {
@@ -871,7 +871,7 @@ TEST(Renderive_Core2, AxisRasterLayoutCoversAxisSwapAndEveryReversal) {
EXPECT_DOUBLE_EQ(points.back().y, 30.0);
}
TEST(Renderive_Core2, PartitionedPlotsBuildPropertyDrivenRenderGraphs) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
plot.set_viewport_size({320, 180});
const auto root = plot.root_renderable();
@@ -989,7 +989,7 @@ TEST(Renderive_Core2, AutomaticPartitioningSplitsOnlyForMeasuredBottlenecks) {
}
TEST(Renderive_Core2, DynamicWaterfallCaptureStressPreservesPlansSlotsAndExactSessions) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
plot.set_viewport_size({640, 360});
const auto root = plot.root_renderable();
@@ -1053,7 +1053,7 @@ TEST(Renderive_Core2, DynamicWaterfallCaptureStressPreservesPlansSlotsAndExactSe
}
TEST(Renderive_Core2, PaintOnlyStyleChangesPreservePrepareCache) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
plot.set_viewport_size({320, 180});
const auto root = plot.root_renderable();
@@ -1115,7 +1115,7 @@ TEST(Renderive_Core2, PaintOnlyStyleChangesPreservePrepareCache) {
}));
}
TEST(Renderive_Core2, PlottableAxesAreDataDependenciesAndPaintOverlays) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
const auto [frequency, power, spectrum] = build_initial(plot, [&](auto& attach) {
@@ -1156,7 +1156,7 @@ TEST(Renderive_Core2, PlottableAxesAreDataDependenciesAndPaintOverlays) {
EXPECT_LT(spectrum_position, power_position);
}
TEST(Renderive_Core2, InteractionOverlayPaintsAboveItsAxes) {
Plot_Scene plot;
Render_Scene_2D plot;
plot.init();
const auto root = plot.root_renderable();
const auto [horizontal, vertical, selection] = build_initial(plot, [&](auto& attach) {