From 2c9502a2a9b6e48705052f2bee2e03cb083016d9 Mon Sep 17 00:00:00 2001 From: Mateusz Pusz Date: Thu, 31 Aug 2023 19:02:04 +0200 Subject: [PATCH] test: units tests for point origin arithmetics added --- test/unit_test/static/quantity_point_test.cpp | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/test/unit_test/static/quantity_point_test.cpp b/test/unit_test/static/quantity_point_test.cpp index 71e0457b..e93ebf09 100644 --- a/test/unit_test/static/quantity_point_test.cpp +++ b/test/unit_test/static/quantity_point_test.cpp @@ -1058,6 +1058,49 @@ static_assert((ground_level + 42 * m) - (other_ground_level + 42 * m) == -81 * m static_assert((other_ground_level + 42 * m) - (tower_peak + 42 * m) == 39 * m); static_assert((tower_peak + 42 * m) - (other_ground_level + 42 * m) == -39 * m); +static_assert((mean_sea_level + 42 * m).quantity_from_origin() == 42 * m); +static_assert((42 * m + mean_sea_level).quantity_from_origin() == 42 * m); +static_assert((mean_sea_level - 42 * m).quantity_from_origin() == -42 * m); +static_assert((ground_level + 42 * m).quantity_from_origin() == 42 * m); +static_assert((42 * m + ground_level).quantity_from_origin() == 42 * m); +static_assert((ground_level - 42 * m).quantity_from_origin() == -42 * m); +static_assert((tower_peak + 42 * m).quantity_from_origin() == 42 * m); +static_assert((42 * m + tower_peak).quantity_from_origin() == 42 * m); +static_assert((tower_peak - 42 * m).quantity_from_origin() == -42 * m); + +static_assert((mean_sea_level + 42 * m) - ground_level == 0 * m); +static_assert((ground_level + 42 * m) - mean_sea_level == 84 * m); +static_assert((tower_peak + 42 * m) - ground_level == 84 * m); +static_assert((ground_level + 42 * m) - tower_peak == 0 * m); +static_assert((tower_peak + 42 * m) - mean_sea_level == 126 * m); +static_assert((mean_sea_level + 42 * m) - tower_peak == -42 * m); +static_assert((other_ground_level + 42 * m) - ground_level == 123 * m); +static_assert((ground_level + 42 * m) - other_ground_level == -39 * m); +static_assert((other_ground_level + 42 * m) - tower_peak == 81 * m); +static_assert((tower_peak + 42 * m) - other_ground_level == 3 * m); + +static_assert(mean_sea_level - (ground_level + 42 * m) == -84 * m); +static_assert(ground_level - (mean_sea_level + 42 * m) == 0 * m); +static_assert(tower_peak - (ground_level + 42 * m) == 0 * m); +static_assert(ground_level - (tower_peak + 42 * m) == -84 * m); +static_assert(tower_peak - (mean_sea_level + 42 * m) == 42 * m); +static_assert(mean_sea_level - (tower_peak + 42 * m) == -126 * m); +static_assert(other_ground_level - (ground_level + 42 * m) == 39 * m); +static_assert(ground_level - (other_ground_level + 42 * m) == -123 * m); +static_assert(other_ground_level - (tower_peak + 42 * m) == -3 * m); +static_assert(tower_peak - (other_ground_level + 42 * m) == -81 * m); + +static_assert(mean_sea_level - ground_level == -42 * m); +static_assert(ground_level - mean_sea_level == 42 * m); +static_assert(tower_peak - ground_level == 42 * m); +static_assert(ground_level - tower_peak == -42 * m); +static_assert(tower_peak - mean_sea_level == 84 * m); +static_assert(mean_sea_level - tower_peak == -84 * m); +static_assert(other_ground_level - ground_level == 81 * m); +static_assert(ground_level - other_ground_level == -81 * m); +static_assert(other_ground_level - tower_peak == 39 * m); +static_assert(tower_peak - other_ground_level == -39 * m); + inline constexpr struct zero_m_per_s : absolute_point_origin> { } zero_m_per_s;