#include #include #include #include #include #include #include #include #include #include #include namespace { using namespace aethera; using namespace aethera::render_2d; template std::unique_ptr build_object(Arguments&&... arguments) { typename Object::Builder builder(std::forward(arguments)...); auto result = builder.build(); if (!result) std::terminate(); return std::move(result).value(); } } TEST(partition_configuration, builder_and_runtime_share_the_authoritative_partition_properties) { using Frequency = Impl; using Power = Impl; using Time = Impl; using Spectrum_Object = Impl; using Trace_Object = Impl; using Sweep_Object = Impl; using Afterglow_Object = Impl; using Constellation_Object = Impl; using Waterfall_Object = Impl; auto frequency = build_object(); auto power = build_object(); auto q_axis = build_object(); auto time = build_object