修复大错误移动到prop
This commit is contained in:
@@ -32,7 +32,7 @@ TEST(spectrum_data, publishes_samples_and_interpolates_power) {
|
||||
const auto missing = spectrum->power_at(25.0);
|
||||
ASSERT_FALSE(missing.has_value());
|
||||
EXPECT_EQ(missing.error(), Spectrum::Power_At_Result::no_samples);
|
||||
spectrum->update_state<&Spectrum::State::frequency_range>(Axis_Range{0.0, 100.0});
|
||||
spectrum->set<&Spectrum::Prop::frequency_range>(Axis_Range{0.0, 100.0});
|
||||
const double samples[]{-100.0, -50.0, 0.0};
|
||||
spectrum->update_samples(samples);
|
||||
spectrum->advance();
|
||||
@@ -84,24 +84,24 @@ TEST(render_scene_2d, composites_axes_and_spectrum_into_final_frame) {
|
||||
auto power = build_object<Power>();
|
||||
auto spectrum = build_object<Spectrum_Object>(scene.get(), frequency.get(), power.get());
|
||||
const Size canvas{160, 120};
|
||||
frequency->update_state<&Abs_Axis::State::position>(Point_F{20.0, 100.0});
|
||||
frequency->update_state<&Abs_Axis::State::canvas_size>(canvas);
|
||||
frequency->update_state<&Abs_Axis::State::pixel_length>(120.0);
|
||||
frequency->update_state<&Numeric_Axis::State::coordinate_range>(Axis_Range{0.0, 100.0});
|
||||
power->update_state<&Abs_Axis::State::position>(Point_F{20.0, 100.0});
|
||||
power->update_state<&Abs_Axis::State::canvas_size>(canvas);
|
||||
power->update_state<&Abs_Axis::State::pixel_length>(-80.0);
|
||||
power->update_state<&Abs_Axis::State::orientation>(Axis_Orientation::vertical);
|
||||
power->update_state<&Numeric_Axis::State::coordinate_range>(Axis_Range{-100.0, 0.0});
|
||||
spectrum->update_state<&Spectrum::State::frequency_range>(Axis_Range{0.0, 100.0});
|
||||
spectrum->update_state<&Spectrum::State::partition_mode>(Spectrum_Partition_Mode::fixed);
|
||||
spectrum->update_state<&Spectrum::State::partition_count>(3u);
|
||||
spectrum->update_state<&Spectrum::State::sweep_region_visible>(true);
|
||||
spectrum->update_state<&Spectrum::State::max_hold_visible>(true);
|
||||
frequency->set<&Abs_Axis::Prop::position>(Point_F{20.0, 100.0});
|
||||
frequency->set<&Abs_Axis::Prop::canvas_size>(canvas);
|
||||
frequency->set<&Abs_Axis::Prop::pixel_length>(120.0);
|
||||
frequency->set<&Numeric_Axis::Prop::coordinate_range>(Axis_Range{0.0, 100.0});
|
||||
power->set<&Abs_Axis::Prop::position>(Point_F{20.0, 100.0});
|
||||
power->set<&Abs_Axis::Prop::canvas_size>(canvas);
|
||||
power->set<&Abs_Axis::Prop::pixel_length>(-80.0);
|
||||
power->set<&Abs_Axis::Prop::orientation>(Axis_Orientation::vertical);
|
||||
power->set<&Numeric_Axis::Prop::coordinate_range>(Axis_Range{-100.0, 0.0});
|
||||
spectrum->set<&Spectrum::Prop::frequency_range>(Axis_Range{0.0, 100.0});
|
||||
spectrum->set<&Spectrum::Prop::partition_mode>(Spectrum_Partition_Mode::fixed);
|
||||
spectrum->set<&Spectrum::Prop::partition_count>(3u);
|
||||
spectrum->set<&Spectrum::Prop::sweep_region_visible>(true);
|
||||
spectrum->set<&Spectrum::Prop::max_hold_visible>(true);
|
||||
const double samples[]{-90.0, -65.0, -20.0, -45.0, -75.0};
|
||||
spectrum->update_samples(samples);
|
||||
scene->update_state<&Render_Scene_2D::State::viewport>(canvas);
|
||||
scene->update_state<&Render_Scene_2D::State::background>(Color::transparent());
|
||||
scene->set<&Render_Scene_2D::Prop::viewport>(canvas);
|
||||
scene->set<&Render_Scene_2D::Prop::background>(Color::transparent());
|
||||
scene->activate_view();
|
||||
const auto prepare_graph = scene->pending_dependency_graph<Prepare_Data_Tag>();
|
||||
EXPECT_TRUE(prepare_graph.depends_on(spectrum.get(), scene.get()));
|
||||
@@ -109,23 +109,23 @@ TEST(render_scene_2d, composites_axes_and_spectrum_into_final_frame) {
|
||||
EXPECT_TRUE(prepare_graph.depends_on(spectrum.get(), power.get()));
|
||||
EXPECT_EQ(scene->render_frame(), Render_Frame_Status::rendered);
|
||||
EXPECT_GT(spectrum->rendered_point_count(), 0u);
|
||||
const auto& render_state = spectrum->read_state<Renderable_State_Tag>();
|
||||
const auto& render_state = spectrum->read_state<Renderable::Base_Tag>();
|
||||
EXPECT_EQ(render_state.prepare_task_count, 4u);
|
||||
EXPECT_EQ(render_state.paint_task_count, 1u);
|
||||
const Image_View frame = scene->frame_view();
|
||||
ASSERT_FALSE(frame.empty());
|
||||
EXPECT_TRUE(contains_color(frame));
|
||||
spectrum->update_state<&Spectrum::State::partition_count>(2u);
|
||||
spectrum->set<&Spectrum::Prop::partition_count>(2u);
|
||||
spectrum->update_samples(samples);
|
||||
EXPECT_EQ(scene->render_frame(), Render_Frame_Status::rendered);
|
||||
const auto& rebuilt_state = spectrum->read_state<Renderable_State_Tag>();
|
||||
const auto& rebuilt_state = spectrum->read_state<Renderable::Base_Tag>();
|
||||
EXPECT_TRUE(rebuilt_state.prepare_graph_rebuilt);
|
||||
EXPECT_EQ(rebuilt_state.prepare_task_count, 3u);
|
||||
EXPECT_TRUE(contains_color(scene->frame_view()));
|
||||
const Size resized_canvas{200, 140};
|
||||
scene->update_state<&Render_Scene_2D::State::viewport>(resized_canvas);
|
||||
frequency->update_state<&Abs_Axis::State::canvas_size>(resized_canvas);
|
||||
power->update_state<&Abs_Axis::State::canvas_size>(resized_canvas);
|
||||
scene->set<&Render_Scene_2D::Prop::viewport>(resized_canvas);
|
||||
frequency->set<&Abs_Axis::Prop::canvas_size>(resized_canvas);
|
||||
power->set<&Abs_Axis::Prop::canvas_size>(resized_canvas);
|
||||
EXPECT_EQ(scene->render_frame(), Render_Frame_Status::rendered);
|
||||
const Image_View resized_frame = scene->frame_view();
|
||||
EXPECT_EQ(resized_frame.width, resized_canvas.width);
|
||||
|
||||
Reference in New Issue
Block a user