diff --git a/test/unit_test/static/quantity_spec_test.cpp b/test/unit_test/static/quantity_spec_test.cpp index 60ea4c32..96024fb2 100644 --- a/test/unit_test/static/quantity_spec_test.cpp +++ b/test/unit_test/static/quantity_spec_test.cpp @@ -53,6 +53,7 @@ inline constexpr auto arc_length = path_length; QUANTITY_SPEC_(distance, path_length); QUANTITY_SPEC_(position_vector, length, quantity_character::vector); QUANTITY_SPEC_(period_duration, time); +QUANTITY_SPEC_(rotation, dimensionless); QUANTITY_SPEC_(frequency, 1 / period_duration); QUANTITY_SPEC_(activity, 1 / time); QUANTITY_SPEC_(area, pow<2>(length)); @@ -566,6 +567,8 @@ static_assert(convertible_impl(speed, special_rate_of_climb) == explicit_convers static_assert(convertible_impl(rate_of_climb, special_rate_of_climb) == explicit_conversion); static_assert(convertible_impl(energy, potential_energy) == explicit_conversion); static_assert(convertible_impl(energy, kinetic_energy) == explicit_conversion); +static_assert(convertible_impl(dimensionless, rotation) == explicit_conversion); +static_assert(convertible_impl(dimensionless, rotational_displacement) == explicit_conversion); // downcasting to a different kind static_assert(convertible_impl(dimensionless, angular_measure) == yes); @@ -702,6 +705,9 @@ static_assert(convertible_impl(kind_of, velocity) == yes); static_assert(convertible_impl(kind_of, energy) == yes); static_assert(convertible_impl(kind_of, potential_energy) == yes); static_assert(convertible_impl(kind_of, kinetic_energy) == yes); +static_assert(convertible_impl(kind_of, rotation) == yes); +static_assert(convertible_impl(kind_of, angular_measure) == yes); +static_assert(convertible_impl(kind_of, rotational_displacement) == yes); // kind to a type of a different dimension static_assert(convertible_impl(kind_of, mass) == no); @@ -741,12 +747,19 @@ static_assert(convertible_impl(frequency, kind_of) == no); static_assert(convertible_impl(energy, kind_of) == yes); static_assert(convertible_impl(potential_energy, kind_of) == yes); static_assert(convertible_impl(kinetic_energy, kind_of) == yes); +static_assert(convertible_impl(rotation, kind_of) == yes); +static_assert(convertible_impl(angular_measure, kind_of) == yes); +static_assert(convertible_impl(rotational_displacement, kind_of) == yes); // converting derived type to a kind static_assert(convertible_impl(1 / time, kind_of) == yes); static_assert(convertible_impl(length / time, kind_of) == yes); static_assert(convertible_impl(length / pow<2>(time), kind_of) == yes); +// converting kind to a kind +static_assert(convertible_impl(kind_of, kind_of) == yes); +static_assert(convertible_impl(kind_of, kind_of) == yes); + // converting derived kind to a kind static_assert(convertible_impl(kind_of<1 / time>, kind_of) == yes); static_assert(convertible_impl(kind_of, kind_of) == yes);