xo-unit: tidy: move exponent-abbrev test to bpu.test.cpp

This commit is contained in:
Roland Conybeare 2024-04-28 16:04:26 -04:00
commit e379b9c46f
2 changed files with 46 additions and 42 deletions

View file

@ -1,10 +1,12 @@
/* @file bpu.test.cpp */
#include "xo/unit/bpu.hpp"
//#include "xo/indentlog/scope.hpp"
#include "xo/indentlog/scope.hpp"
#include <catch2/catch.hpp>
namespace xo {
using xo::qty::abbrev::flatstring_from_exponent;
namespace qty {
using bpu64_type = bpu<std::int64_t>;
@ -30,6 +32,49 @@ namespace xo {
static_assert(bpu_mpl_abbrev<bpu64_type::unit_power(bu::gram)> == bpu64_type::unit_power(bu::gram).abbrev());
REQUIRE(bpu_mpl_abbrev<bpu64_type::unit_power(bu::gram)> == bpu64_type::unit_power(bu::gram).abbrev());
} /*TEST_CASE(bpu)*/
TEST_CASE("flatstring_from_exponent", "[flatstring_from_exponent]") {
constexpr bool c_debug_flag = false;
// can get bits from /dev/random by uncommenting the 2nd line below
//uint64_t seed = xxx;
//rng::Seed<xoshio256ss> seed;
//auto rng = xo::rng::xoshiro256ss(seed);
scope log(XO_DEBUG2(c_debug_flag, "TEST_CASE.flatstring_from_exponent"));
//log && log("(A)", xtag("foo", foo));
log && log(xtag("^-3", flatstring_from_exponent(-3,1)));
log && log(xtag("^-2", flatstring_from_exponent(-2,1)));
log && log(xtag("^-1", flatstring_from_exponent(-1,1)));
log && log(xtag("^-1/2", flatstring_from_exponent(-1,2)));
log && log(xtag("^0", flatstring_from_exponent(0,1)));
log && log(xtag("^1/2", flatstring_from_exponent(1,2)));
log && log(xtag("^1", flatstring_from_exponent(1,1)));
log && log(xtag("^2", flatstring_from_exponent(2,1)));
log && log(xtag("^3", flatstring_from_exponent(3,1)));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(-3,1))
== flatstring<5>::from_flatstring(flatstring("^-3")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(-2,1))
== flatstring<5>::from_flatstring(flatstring("^-2")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(-1,1))
== flatstring<5>::from_flatstring(flatstring("^-1")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(-1,2))
== flatstring<5>::from_flatstring(flatstring("^(-1/2)")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(1,2))
== flatstring<5>::from_flatstring(flatstring("^(1/2)")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(1,1))
== flatstring<5>::from_flatstring(flatstring("")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(2,1))
== flatstring<5>::from_flatstring(flatstring("^2")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(3,1))
== flatstring<5>::from_flatstring(flatstring("^3")));
} /*TEST_CASE(flatstring_from_exponent)*/
} /*namespace qty*/
} /*namespace xo*/

View file

@ -36,7 +36,6 @@ namespace xo {
using xo::qty::abbrev::bpu_abbrev;
using xo::qty::basis_unit2_store;
using xo::qty::power_ratio_type;
using xo::qty::abbrev::flatstring_from_exponent;
using xo::qty::bpu;
using xo::qty::detail::bpu2_rescale;
//using xo::qty::detail::bpu2_product;
@ -113,46 +112,6 @@ namespace xo {
} /*TEST_CASE(basis_unit2_store)*/
TEST_CASE("flatstring_from_exponent", "[flatstring_from_exponent]") {
constexpr bool c_debug_flag = false;
// can get bits from /dev/random by uncommenting the 2nd line below
//uint64_t seed = xxx;
//rng::Seed<xoshio256ss> seed;
//auto rng = xo::rng::xoshiro256ss(seed);
scope log(XO_DEBUG2(c_debug_flag, "TEST_CASE.flatstring_from_exponent"));
//log && log("(A)", xtag("foo", foo));
log && log(xtag("^-3", flatstring_from_exponent(-3,1)));
log && log(xtag("^-2", flatstring_from_exponent(-2,1)));
log && log(xtag("^-1", flatstring_from_exponent(-1,1)));
log && log(xtag("^-1/2", flatstring_from_exponent(-1,2)));
log && log(xtag("^0", flatstring_from_exponent(0,1)));
log && log(xtag("^1/2", flatstring_from_exponent(1,2)));
log && log(xtag("^1", flatstring_from_exponent(1,1)));
log && log(xtag("^2", flatstring_from_exponent(2,1)));
log && log(xtag("^3", flatstring_from_exponent(3,1)));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(-3,1))
== flatstring<5>::from_flatstring(flatstring("^-3")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(-2,1))
== flatstring<5>::from_flatstring(flatstring("^-2")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(-1,1))
== flatstring<5>::from_flatstring(flatstring("^-1")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(-1,2))
== flatstring<5>::from_flatstring(flatstring("^(-1/2)")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(1,2))
== flatstring<5>::from_flatstring(flatstring("^(1/2)")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(1,1))
== flatstring<5>::from_flatstring(flatstring("")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(2,1))
== flatstring<5>::from_flatstring(flatstring("^2")));
static_assert(flatstring<5>::from_flatstring(flatstring_from_exponent(3,1))
== flatstring<5>::from_flatstring(flatstring("^3")));
} /*TEST_CASE(flatstring_from_exponent)*/
TEST_CASE("bpu2_abbrev", "[bpu2_abbrev]") {
constexpr bool c_debug_flag = true;