Merge branch 'master' into chiphogg/switch-to-mag
This commit is contained in:
commit
ef9e6522ca
30 files changed
+391
-116
No files matched your search
@@ -318,7 +318,7 @@ TEST_CASE("operator<< on a quantity", "[text][ostream][fmt]")
|
||||
const auto q = 2_q_s * 2_q_m * 2_q_kg;
|
||||
os << q;
|
||||
|
||||
SECTION("iostream") { CHECK(os.str() == "8 m ⋅ kg ⋅ s"); }
|
||||
SECTION("iostream") { CHECK(os.str() == "8 m⋅kg⋅s"); }
|
||||
|
||||
SECTION("fmt with default format {} on a quantity") { CHECK(STD_FMT::format("{}", q) == os.str()); }
|
||||
|
||||
@@ -330,7 +330,7 @@ TEST_CASE("operator<< on a quantity", "[text][ostream][fmt]")
|
||||
const auto q = 2._q_s * si::cgs::length<si::cgs::centimetre>(2) * si::cgs::mass<si::cgs::gram>(2);
|
||||
os << q;
|
||||
|
||||
SECTION("iostream") { CHECK(os.str() == "8 cm ⋅ g ⋅ s"); }
|
||||
SECTION("iostream") { CHECK(os.str() == "8 cm⋅g⋅s"); }
|
||||
|
||||
SECTION("fmt with default format {} on a quantity") { CHECK(STD_FMT::format("{}", q) == os.str()); }
|
||||
|
||||
@@ -343,7 +343,7 @@ TEST_CASE("operator<< on a quantity", "[text][ostream][fmt]")
|
||||
const auto q = 4_q_km * 2_q_s;
|
||||
os << q;
|
||||
|
||||
SECTION("iostream") { CHECK(os.str() == "8 × 10³ m ⋅ s"); }
|
||||
SECTION("iostream") { CHECK(os.str() == "8 × 10³ m⋅s"); }
|
||||
|
||||
SECTION("fmt with default format {} on a quantity") { CHECK(STD_FMT::format("{}", q) == os.str()); }
|
||||
|
||||
@@ -379,7 +379,7 @@ TEST_CASE("operator<< on a quantity", "[text][ostream][fmt]")
|
||||
const auto q = 2._q_s * si::cgs::length<si::metre>(2) * si::cgs::mass<si::kilogram>(2);
|
||||
os << q;
|
||||
|
||||
SECTION("iostream") { CHECK(os.str() == "8 × 10⁵ cm ⋅ g ⋅ s"); }
|
||||
SECTION("iostream") { CHECK(os.str() == "8 × 10⁵ cm⋅g⋅s"); }
|
||||
|
||||
SECTION("fmt with default format {} on a quantity") { CHECK(STD_FMT::format("{}", q) == os.str()); }
|
||||
|
||||
@@ -404,7 +404,7 @@ TEST_CASE("operator<< on a quantity", "[text][ostream][fmt]")
|
||||
const auto q = 4_q_m * 2_q_s;
|
||||
os << q;
|
||||
|
||||
SECTION("iostream") { CHECK(os.str() == "8 m ⋅ s"); }
|
||||
SECTION("iostream") { CHECK(os.str() == "8 m⋅s"); }
|
||||
|
||||
SECTION("fmt with default format {} on a quantity") { CHECK(STD_FMT::format("{}", q) == os.str()); }
|
||||
|
||||
@@ -416,7 +416,7 @@ TEST_CASE("operator<< on a quantity", "[text][ostream][fmt]")
|
||||
const auto q = 4_q_m * 2_q_s * 2_q_s;
|
||||
os << q;
|
||||
|
||||
SECTION("iostream") { CHECK(os.str() == "16 m ⋅ s²"); }
|
||||
SECTION("iostream") { CHECK(os.str() == "16 m⋅s²"); }
|
||||
|
||||
SECTION("fmt with default format {} on a quantity") { CHECK(STD_FMT::format("{}", q) == os.str()); }
|
||||
|
||||
@@ -428,7 +428,7 @@ TEST_CASE("operator<< on a quantity", "[text][ostream][fmt]")
|
||||
const auto q = 8_q_s / 2_q_m / 2_q_m;
|
||||
os << q;
|
||||
|
||||
SECTION("iostream") { CHECK(os.str() == "2 1/m² ⋅ s"); }
|
||||
SECTION("iostream") { CHECK(os.str() == "2 1/m²⋅s"); }
|
||||
|
||||
SECTION("fmt with default format {} on a quantity") { CHECK(STD_FMT::format("{}", q) == os.str()); }
|
||||
|
||||
|
||||
@@ -167,7 +167,7 @@ TEST_CASE("std::format on synthesized unit symbols", "[text][fmt]")
|
||||
|
||||
SECTION("momentum")
|
||||
{
|
||||
CHECK(STD_FMT::format("{}", 1_q_kg_m_per_s) == "1 kg ⋅ m/s");
|
||||
CHECK(STD_FMT::format("{}", 1_q_kg_m_per_s) == "1 kg⋅m/s");
|
||||
CHECK(STD_FMT::format("{:%Q %Aq}", 1_q_kg_m_per_s) == "1 kg m/s");
|
||||
}
|
||||
|
||||
@@ -244,7 +244,7 @@ TEST_CASE("std::format on synthesized unit symbols", "[text][fmt]")
|
||||
|
||||
SECTION("dynamic viscosity")
|
||||
{
|
||||
CHECK(STD_FMT::format("{}", 1_q_Pa_s) == "1 Pa ⋅ s");
|
||||
CHECK(STD_FMT::format("{}", 1_q_Pa_s) == "1 Pa⋅s");
|
||||
CHECK(STD_FMT::format("{:%Q %Aq}", 1_q_Pa_s) == "1 Pa s");
|
||||
}
|
||||
|
||||
@@ -252,19 +252,19 @@ TEST_CASE("std::format on synthesized unit symbols", "[text][fmt]")
|
||||
|
||||
SECTION("specific heat capacity")
|
||||
{
|
||||
CHECK(STD_FMT::format("{}", 1_q_J_per_kg_K) == "1 J ⋅ K⁻¹ ⋅ kg⁻¹");
|
||||
CHECK(STD_FMT::format("{}", 1_q_J_per_kg_K) == "1 J⋅K⁻¹⋅kg⁻¹");
|
||||
CHECK(STD_FMT::format("{:%Q %Aq}", 1_q_J_per_kg_K) == "1 J K^-1 kg^-1");
|
||||
}
|
||||
|
||||
SECTION("molar heath capacity")
|
||||
{
|
||||
CHECK(STD_FMT::format("{}", 1_q_J_per_mol_K) == "1 J ⋅ K⁻¹ ⋅ mol⁻¹");
|
||||
CHECK(STD_FMT::format("{}", 1_q_J_per_mol_K) == "1 J⋅K⁻¹⋅mol⁻¹");
|
||||
CHECK(STD_FMT::format("{:%Q %Aq}", 1_q_J_per_mol_K) == "1 J K^-1 mol^-1");
|
||||
}
|
||||
|
||||
SECTION("thermal conductivity")
|
||||
{
|
||||
CHECK(STD_FMT::format("{}", 1_q_W_per_m_K) == "1 W ⋅ m⁻¹ ⋅ K⁻¹");
|
||||
CHECK(STD_FMT::format("{}", 1_q_W_per_m_K) == "1 W⋅m⁻¹⋅K⁻¹");
|
||||
CHECK(STD_FMT::format("{:%Q %Aq}", 1_q_W_per_m_K) == "1 W m^-1 K^-1");
|
||||
}
|
||||
|
||||
@@ -284,7 +284,7 @@ TEST_CASE("std::format on synthesized unit symbols", "[text][fmt]")
|
||||
|
||||
SECTION("molar energy") { CHECK(STD_FMT::format("{}", 1_q_J_per_mol) == "1 J/mol"); }
|
||||
|
||||
SECTION("torque") { CHECK(STD_FMT::format("{}", 1_q_N_m_per_rad) == "1 N ⋅ m/rad"); }
|
||||
SECTION("torque") { CHECK(STD_FMT::format("{}", 1_q_N_m_per_rad) == "1 N⋅m/rad"); }
|
||||
|
||||
SECTION("storage_capacity")
|
||||
{
|
||||
|
||||
@@ -88,8 +88,8 @@ static_assert(10_q_pdl * 10_q_ft == 100_q_ft_pdl);
|
||||
static_assert(100_q_ft_pdl / 10_q_ft == 10_q_pdl);
|
||||
static_assert(100_q_ft_pdl / 10_q_pdl == 10_q_ft);
|
||||
|
||||
static_assert(detail::unit_text<dim_energy, foot_poundal>() == basic_symbol_text("ft ⋅ pdl", "ft pdl"));
|
||||
static_assert(detail::unit_text<dim_energy, foot_pound_force>() == basic_symbol_text("ft ⋅ lbf", "ft lbf"));
|
||||
static_assert(detail::unit_text<dim_energy, foot_poundal>() == basic_symbol_text("ft⋅pdl", "ft pdl"));
|
||||
static_assert(detail::unit_text<dim_energy, foot_pound_force>() == basic_symbol_text("ft⋅lbf", "ft lbf"));
|
||||
|
||||
/* ************** DERIVED DIMENSIONS IN TERMS OF OTHER UNITS **************** */
|
||||
|
||||
@@ -99,8 +99,8 @@ static_assert(10_q_ft_pdl / 10_q_s == 1_q_ft_pdl_per_s);
|
||||
static_assert(1_q_ft_pdl_per_s * 10_q_s == 10_q_ft_pdl);
|
||||
static_assert(10_q_ft_pdl / 1_q_ft_pdl_per_s == 10_q_s);
|
||||
|
||||
static_assert(detail::unit_text<dim_power, foot_poundal_per_second>() == basic_symbol_text("ft ⋅ pdl/s", "ft pdl/s"));
|
||||
static_assert(detail::unit_text<dim_power, foot_poundal_per_second>() == basic_symbol_text("ft⋅pdl/s", "ft pdl/s"));
|
||||
static_assert(detail::unit_text<dim_power, foot_pound_force_per_second>() ==
|
||||
basic_symbol_text("ft ⋅ lbf/s", "ft lbf/s"));
|
||||
basic_symbol_text("ft⋅lbf/s", "ft lbf/s"));
|
||||
|
||||
} // namespace
|
||||
@@ -288,8 +288,10 @@ static_assert(get_length_derived_quantity() == 1_q_m);
|
||||
/////////
|
||||
|
||||
#if UNITS_COMP_GCC >= 11 || UNITS_COMP_CLANG > 15
|
||||
static_assert(std::is_same_v<decltype(units::aliases::isq::si::m(123))::rep, int>);
|
||||
static_assert(std::is_same_v<decltype(units::aliases::isq::si::m(123.))::rep, double>);
|
||||
static_assert(std::is_same_v<decltype(aliases::isq::si::m(123))::rep, int>);
|
||||
static_assert(std::is_same_v<decltype(aliases::isq::si::m(123.))::rep, double>);
|
||||
static_assert(
|
||||
std::is_same_v<decltype(aliases::isq::si::m3(aliases::isq::si::m2{2} * aliases::isq::si::m{3}))::rep, int>);
|
||||
#endif
|
||||
|
||||
static_assert(is_same_v<decltype(quantity{length<metre, int>(123)}), length<metre, int>>);
|
||||
|
||||
@@ -239,6 +239,12 @@ static_assert(gray::symbol == "Gy");
|
||||
static_assert(milligray::symbol == "mGy");
|
||||
static_assert(kilogray::symbol == "kGy");
|
||||
|
||||
// luminous flux
|
||||
|
||||
static_assert(683_q_lm == 1_q_W);
|
||||
|
||||
static_assert(lumen::symbol == "lm");
|
||||
|
||||
/* ************** DERIVED DIMENSIONS IN TERMS OF BASE UNITS **************** */
|
||||
|
||||
// speed
|
||||
@@ -334,7 +340,7 @@ static_assert(detail::unit_text<dim_luminance, candela_per_metre_sq>() == basic_
|
||||
// dynamic viscosity
|
||||
|
||||
static_assert(1_q_Pa_s == 1_q_N * 1_q_s / 1_q_m2);
|
||||
static_assert(detail::unit_text<dim_dynamic_viscosity, pascal_second>() == basic_symbol_text("Pa ⋅ s", "Pa s"));
|
||||
static_assert(detail::unit_text<dim_dynamic_viscosity, pascal_second>() == basic_symbol_text("Pa⋅s", "Pa s"));
|
||||
|
||||
// [specific|molar] heath capacity
|
||||
|
||||
@@ -344,13 +350,13 @@ static_assert(1_q_J_per_mol_K == 1_q_J_per_K / 1_q_mol);
|
||||
|
||||
static_assert(detail::unit_text<dim_heat_capacity, joule_per_kelvin>() == "J/K");
|
||||
static_assert(detail::unit_text<dim_specific_heat_capacity, joule_per_kilogram_kelvin>() ==
|
||||
basic_symbol_text("J ⋅ K⁻¹ ⋅ kg⁻¹", "J K^-1 kg^-1"));
|
||||
basic_symbol_text("J⋅K⁻¹⋅kg⁻¹", "J K^-1 kg^-1"));
|
||||
|
||||
// thermal conductivity
|
||||
|
||||
static_assert(20_q_W_per_m_K * 10_q_m * 300_q_K == 60'000_q_W);
|
||||
static_assert(detail::unit_text<dim_thermal_conductivity, watt_per_metre_kelvin>() ==
|
||||
basic_symbol_text("W ⋅ m⁻¹ ⋅ K⁻¹", "W m^-1 K^-1"));
|
||||
basic_symbol_text("W⋅m⁻¹⋅K⁻¹", "W m^-1 K^-1"));
|
||||
|
||||
// electric field strength
|
||||
|
||||
|
||||
Reference in new issue
Block a user