expected
This commit is contained in:
@@ -61,8 +61,8 @@ TEST(Renderive_Core2, RootIdentityAndRefreshDiagnosticsComeFromKernelState) {
|
||||
EXPECT_EQ(plot.root_renderable(), root);
|
||||
plot.set_viewport_size({32, 24});
|
||||
plot.activate_view();
|
||||
EXPECT_EQ(plot.set_max_render_fps(144.0), Plot_Control_Error::none);
|
||||
ASSERT_EQ(plot.render_frame(), Plot_Render_Result::none);
|
||||
EXPECT_TRUE(plot.set_max_render_fps(144.0));
|
||||
ASSERT_EQ(plot.render_frame().value(), Plot_Render_Status::rendered);
|
||||
const auto diagnostics = plot.diagnostics();
|
||||
EXPECT_DOUBLE_EQ(diagnostics.refresh.frequency_hz, 144.0);
|
||||
EXPECT_EQ(diagnostics.refresh.frame_count, 1u);
|
||||
@@ -194,7 +194,7 @@ TEST(Renderive_Core2, KernelSceneRendersBusinessObjectsIntoBlend2DFrame) {
|
||||
for (std::size_t index = 0; index < samples.size(); ++index)
|
||||
samples[index] = -100.0 + static_cast<double>(index % 24) * 3.0;
|
||||
spectrum->update_samples(samples);
|
||||
ASSERT_EQ(plot.render_frame(), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame().value(), Plot_Render_Status::rendered);
|
||||
bool saw_frame = false;
|
||||
bool saw_drawn_pixel = false;
|
||||
plot.with_frame([&](Image_View view) {
|
||||
@@ -214,10 +214,10 @@ TEST(Renderive_Core2, KernelSceneRendersBusinessObjectsIntoBlend2DFrame) {
|
||||
EXPECT_TRUE(saw_frame);
|
||||
EXPECT_TRUE(saw_drawn_pixel);
|
||||
EXPECT_EQ(plot.diagnostics().refresh.frame_count, 1u);
|
||||
EXPECT_NE(plot.render_frame(), Plot_Render_Result::none);
|
||||
EXPECT_NE(plot.render_frame().value(), Plot_Render_Status::rendered);
|
||||
samples.front() += 1.0;
|
||||
spectrum->update_samples(samples);
|
||||
EXPECT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
EXPECT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
frequency_axis->set<&Axis_Properties::wheel>(true);
|
||||
const Range before_zoom = frequency_axis->get<&Axis_Properties::coordinates>();
|
||||
Wheel_Event wheel;
|
||||
@@ -226,7 +226,7 @@ TEST(Renderive_Core2, KernelSceneRendersBusinessObjectsIntoBlend2DFrame) {
|
||||
plot.dispatch_event(wheel);
|
||||
EXPECT_TRUE(wheel.is_accepted());
|
||||
EXPECT_LT(frequency_axis->get<&Axis_Properties::coordinates>().size(), before_zoom.size());
|
||||
EXPECT_EQ(plot.render_frame(), Plot_Render_Result::none);
|
||||
EXPECT_EQ(plot.render_frame().value(), Plot_Render_Status::rendered);
|
||||
apply_runtime_edit(plot, [root, frequency_axis, power_axis, spectrum](auto& editor) {
|
||||
editor.set_display_parent(frequency_axis, root);
|
||||
editor.set_display_parent(power_axis, root);
|
||||
@@ -234,8 +234,8 @@ TEST(Renderive_Core2, KernelSceneRendersBusinessObjectsIntoBlend2DFrame) {
|
||||
editor.clear_dependency_parent(spectrum);
|
||||
editor.detach(spectrum);
|
||||
});
|
||||
EXPECT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
EXPECT_NE(plot.render_frame(), Plot_Render_Result::none);
|
||||
EXPECT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
EXPECT_NE(plot.render_frame().value(), Plot_Render_Status::rendered);
|
||||
}
|
||||
TEST(Renderive_Core2, StandaloneRenderableBuilderJoinsSceneOnlyInsideRuntimeEditor) {
|
||||
Plot_Scene plot;
|
||||
@@ -296,14 +296,14 @@ TEST(Renderive_Core2, PerformanceOverlayConsumesKernelFrameDiagnostics) {
|
||||
plot.init();
|
||||
plot.set_viewport_size({160, 90});
|
||||
plot.activate_view();
|
||||
EXPECT_EQ(plot.set_max_render_fps(120.0), Plot_Control_Error::none);
|
||||
EXPECT_TRUE(plot.set_max_render_fps(120.0));
|
||||
Performance_Overlay_Options options;
|
||||
options.log.enabled = false;
|
||||
const auto overlay = attach_performance_overlay(plot, options);
|
||||
ASSERT_TRUE(overlay);
|
||||
set_performance_plot_name(plot, "integration");
|
||||
set_performance_overlay_enabled(plot, true);
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
const auto snapshot = overlay->display_snapshot();
|
||||
ASSERT_TRUE(snapshot);
|
||||
EXPECT_EQ(snapshot->plot_name, "integration");
|
||||
@@ -317,12 +317,12 @@ TEST(Renderive_Core2, AllFrameControlModesUseKernelStrategiesAndExposeObservers)
|
||||
manual.init();
|
||||
manual.set_viewport_size({64, 40});
|
||||
EXPECT_EQ(manual.frame_mode(), Plot_Frame_Mode::Manual);
|
||||
ASSERT_EQ(manual.prepare_frame(), Plot_Render_Result::none);
|
||||
ASSERT_TRUE(manual.prepare_frame());
|
||||
auto manual_observer = manual.frame_status();
|
||||
EXPECT_EQ(manual_observer.last_event, "prepared");
|
||||
EXPECT_EQ(manual_observer.pending_frame_count, 1u);
|
||||
ASSERT_EQ(manual.refresh_manual_frame(), Plot_Render_Result::none);
|
||||
ASSERT_EQ(manual.render_prepared_frame(), Plot_Render_Result::none);
|
||||
ASSERT_TRUE(manual.refresh_manual_frame());
|
||||
ASSERT_TRUE(manual.render_prepared_frame());
|
||||
manual_observer = manual.frame_status();
|
||||
EXPECT_EQ(manual_observer.last_event, "rendered");
|
||||
EXPECT_EQ(manual_observer.consumed_frame_count, 1u);
|
||||
@@ -330,7 +330,7 @@ TEST(Renderive_Core2, AllFrameControlModesUseKernelStrategiesAndExposeObservers)
|
||||
low_latency.init();
|
||||
low_latency.set_viewport_size({64, 40});
|
||||
low_latency.activate_view();
|
||||
ASSERT_EQ(low_latency.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(low_latency.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
const auto low_observer = low_latency.frame_status();
|
||||
EXPECT_EQ(low_latency.frame_mode(), Plot_Frame_Mode::Low_Latency);
|
||||
EXPECT_EQ(low_observer.last_event, "lifecycle_completed");
|
||||
@@ -338,14 +338,14 @@ TEST(Renderive_Core2, AllFrameControlModesUseKernelStrategiesAndExposeObservers)
|
||||
Plot_Scene playback({.frame_mode = Plot_Frame_Mode::Playback});
|
||||
playback.init();
|
||||
playback.set_viewport_size({64, 40});
|
||||
ASSERT_EQ(playback.prepare_frame(), Plot_Render_Result::none);
|
||||
ASSERT_EQ(playback.prepare_frame(), Plot_Render_Result::none);
|
||||
ASSERT_EQ(playback.prepare_frame(), Plot_Render_Result::none);
|
||||
ASSERT_TRUE(playback.prepare_frame());
|
||||
ASSERT_TRUE(playback.prepare_frame());
|
||||
ASSERT_TRUE(playback.prepare_frame());
|
||||
auto playback_observer = playback.frame_status();
|
||||
EXPECT_EQ(playback.frame_mode(), Plot_Frame_Mode::Playback);
|
||||
EXPECT_EQ(playback_observer.last_event, "enqueued");
|
||||
EXPECT_EQ(playback_observer.pending_frame_count, 3u);
|
||||
ASSERT_EQ(playback.render_prepared_frame(), Plot_Render_Result::none);
|
||||
ASSERT_TRUE(playback.render_prepared_frame());
|
||||
playback_observer = playback.frame_status();
|
||||
EXPECT_EQ(playback_observer.last_event, "rendered");
|
||||
EXPECT_EQ(playback_observer.pending_frame_count, 2u);
|
||||
@@ -520,7 +520,7 @@ TEST(Renderive_Core2, RetainedSpectrumApisRoundTripAndMarkersRemainObservable) {
|
||||
EXPECT_EQ(spectrum->selectable_line_marker_count(), 0);
|
||||
spectrum->clear_custom_markers();
|
||||
EXPECT_EQ(spectrum->selected_marker_index(), -1);
|
||||
EXPECT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
EXPECT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
}
|
||||
TEST(Renderive_Core2, RetainedHeatmapSweepAndTraceApisPreserveDataShapes) {
|
||||
Plot_Scene plot;
|
||||
@@ -634,7 +634,7 @@ TEST(Renderive_Core2, RetainedHeatmapSweepAndTraceApisPreserveDataShapes) {
|
||||
trace->append_sample(Time_Of_Day{4000}, -70.0);
|
||||
EXPECT_EQ(trace->sample_count(), 2U);
|
||||
EXPECT_EQ(trace->rendered_point_count(), 2U);
|
||||
EXPECT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
EXPECT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
}
|
||||
TEST(Renderive_Core2, RetainedSelectionAndConstellationApisDriveInteractionAndLayout) {
|
||||
Plot_Scene plot;
|
||||
@@ -713,7 +713,7 @@ TEST(Renderive_Core2, RetainedSelectionAndConstellationApisDriveInteractionAndLa
|
||||
constellation->fit_square_to_axes();
|
||||
EXPECT_EQ(horizontal->get<&Axis_Properties::coordinates>(), (Range{-3.0, 3.0}));
|
||||
EXPECT_EQ(vertical->get<&Axis_Properties::coordinates>(), (Range{3.0, -3.0}));
|
||||
EXPECT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
EXPECT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
}
|
||||
TEST(Renderive_Core2, PlottablePropertiesPublishOnlyAtFrameBoundary) {
|
||||
Plot_Scene plot;
|
||||
@@ -738,12 +738,12 @@ TEST(Renderive_Core2, PlottablePropertiesPublishOnlyAtFrameBoundary) {
|
||||
EXPECT_EQ(cached.event, Renderable_Observer_Event::Cache_Updated);
|
||||
EXPECT_EQ(cached.cache_update_count, 1U);
|
||||
EXPECT_EQ(cached.publish_count, 0U);
|
||||
ASSERT_EQ(plot.prepare_frame(), Plot_Render_Result::none);
|
||||
ASSERT_TRUE(plot.prepare_frame());
|
||||
const auto published = spectrum->observation();
|
||||
EXPECT_EQ(published.event, Renderable_Observer_Event::Published);
|
||||
EXPECT_EQ(published.cache_update_count, 1U);
|
||||
EXPECT_EQ(published.publish_count, 1U);
|
||||
ASSERT_EQ(plot.render_prepared_frame(), Plot_Render_Result::none);
|
||||
ASSERT_TRUE(plot.render_prepared_frame());
|
||||
}
|
||||
TEST(Renderive_Core2, EveryStatefulRenderableOwnsItsStateObserver) {
|
||||
Plot_Scene plot;
|
||||
@@ -777,7 +777,7 @@ TEST(Renderive_Core2, EveryStatefulRenderableOwnsItsStateObserver) {
|
||||
EXPECT_EQ(spectrum_update.cache_update_count, 1U);
|
||||
EXPECT_EQ(power->observation().event, Renderable_Observer_Event::None);
|
||||
|
||||
ASSERT_EQ(plot.prepare_frame(), Plot_Render_Result::none);
|
||||
ASSERT_TRUE(plot.prepare_frame());
|
||||
const auto frequency_publish = frequency->observation();
|
||||
const auto power_publish = power->observation();
|
||||
const auto spectrum_publish = spectrum->observation();
|
||||
@@ -791,7 +791,7 @@ TEST(Renderive_Core2, EveryStatefulRenderableOwnsItsStateObserver) {
|
||||
EXPECT_EQ(power_publish.cache_update_count, 0U);
|
||||
EXPECT_EQ(spectrum_publish.cache_update_count, 1U);
|
||||
|
||||
ASSERT_EQ(plot.render_prepared_frame(), Plot_Render_Result::none);
|
||||
ASSERT_TRUE(plot.render_prepared_frame());
|
||||
EXPECT_EQ(frequency->observation().event, Renderable_Observer_Event::Published);
|
||||
EXPECT_EQ(power->observation().event, Renderable_Observer_Event::Published);
|
||||
EXPECT_EQ(spectrum->observation().event, Renderable_Observer_Event::Published);
|
||||
@@ -922,7 +922,7 @@ TEST(Renderive_Core2, PartitionedPlotsBuildPropertyDrivenRenderGraphs) {
|
||||
EXPECT_EQ(spectrum->get<&Spectrum::Properties::partition_count>(), 4);
|
||||
EXPECT_EQ(waterfall->get<&Waterfall::Properties::partition_count>(), 4);
|
||||
EXPECT_EQ(afterglow->get<&Afterglow::Properties::partition_count>(), 4);
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
const auto partitioned_plan = plot.render_scene().render_plan_snapshot();
|
||||
ASSERT_TRUE(partitioned_plan);
|
||||
EXPECT_EQ(planned_node_count(*partitioned_plan, *spectrum), 6u);
|
||||
@@ -941,7 +941,7 @@ TEST(Renderive_Core2, PartitionedPlotsBuildPropertyDrivenRenderGraphs) {
|
||||
waterfall->set<&Waterfall::Properties::partition_count>(1);
|
||||
afterglow->set<&Afterglow::Properties::partition_count>(1);
|
||||
plot.render_scene().publish_frame_state();
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
const auto single_plan = plot.render_scene().render_plan_snapshot();
|
||||
ASSERT_TRUE(single_plan);
|
||||
EXPECT_EQ(planned_node_count(*single_plan, *spectrum), 3u);
|
||||
@@ -952,7 +952,7 @@ TEST(Renderive_Core2, PartitionedPlotsBuildPropertyDrivenRenderGraphs) {
|
||||
waterfall->set<&Waterfall::Properties::partition_mode>(Render_Partition_Mode::Automatic);
|
||||
afterglow->set<&Afterglow::Properties::partition_mode>(Render_Partition_Mode::Automatic);
|
||||
plot.render_scene().publish_frame_state();
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
const auto automatic_plan = plot.render_scene().render_plan_snapshot();
|
||||
ASSERT_TRUE(automatic_plan);
|
||||
EXPECT_EQ(planned_node_count(*automatic_plan, *spectrum), 3u);
|
||||
@@ -1028,7 +1028,7 @@ TEST(Renderive_Core2, DynamicWaterfallCaptureStressPreservesPlansSlotsAndExactSe
|
||||
}
|
||||
if (frame % 4 == 0)
|
||||
waterfall->append_row(static_cast<int>(tick++), samples);
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
}
|
||||
ASSERT_EQ(scene.render_scene().wait_for_render(), Scene_Render_Result::none);
|
||||
const auto session = scene.render_scene().capture_session(session_id);
|
||||
@@ -1069,8 +1069,8 @@ TEST(Renderive_Core2, PaintOnlyStyleChangesPreservePrepareCache) {
|
||||
});
|
||||
const std::array samples{-80.0, -70.0, -60.0, -50.0};
|
||||
spectrum->update_samples(samples);
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
ASSERT_EQ(plot.render_scene().wait_for_render(), Scene_Render_Result::none);
|
||||
const auto cached_plan = plot.render_scene().render_plan_snapshot();
|
||||
ASSERT_TRUE(cached_plan);
|
||||
@@ -1087,7 +1087,7 @@ TEST(Renderive_Core2, PaintOnlyStyleChangesPreservePrepareCache) {
|
||||
spectrum->set<&Spectrum::Properties::current_pen>(
|
||||
Pen{Color{12, 34, 56, 255}, 2.0});
|
||||
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
ASSERT_EQ(plot.render_scene().wait_for_render(), Scene_Render_Result::none);
|
||||
const auto plan = plot.render_scene().render_plan_snapshot();
|
||||
ASSERT_TRUE(plan);
|
||||
@@ -1102,7 +1102,7 @@ TEST(Renderive_Core2, PaintOnlyStyleChangesPreservePrepareCache) {
|
||||
EXPECT_TRUE(has_kind(Render_Node_Kind::paint));
|
||||
|
||||
frequency->set<&Axis_Base_Properties::color>(Color{90, 100, 110, 255});
|
||||
ASSERT_EQ(plot.render_frame(true), Plot_Render_Result::none);
|
||||
ASSERT_EQ(plot.render_frame(true).value(), Plot_Render_Status::rendered);
|
||||
ASSERT_EQ(plot.render_scene().wait_for_render(), Scene_Render_Result::none);
|
||||
const auto axis_style_plan = plot.render_scene().render_plan_snapshot();
|
||||
ASSERT_TRUE(axis_style_plan);
|
||||
|
||||
Reference in New Issue
Block a user