You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

39 lines
2.2 KiB

  1. #include <gtest/gtest.h>
  2. #include <cpputils/mp/misc/to.h>
  3. using namespace ::utl::mp;
  4. static_assert(is_convertible<int32_t, int8_t>::value, "is_convertible");
  5. static_assert(is_convertible<uint32_t, int8_t>::value, "is_convertible");
  6. static_assert(!is_convertible<std::string, int8_t>::value, "is_convertible");
  7. static_assert(is_embedded<double, long double>::value, "is_embdedded");
  8. static_assert(is_embedded<float, long double>::value, "is_embdedded");
  9. static_assert(is_embedded<float, double >::value, "is_embdedded");
  10. static_assert(is_embedded<signed long, signed long long>::value, "is_embedded");
  11. static_assert(is_embedded<signed int, signed long long>::value, "is_embedded");
  12. static_assert(is_embedded<signed short, signed long long>::value, "is_embedded");
  13. static_assert(is_embedded<signed char, signed long long>::value, "is_embedded");
  14. static_assert(is_embedded<signed int, signed long >::value, "is_embedded");
  15. static_assert(is_embedded<signed short, signed long >::value, "is_embedded");
  16. static_assert(is_embedded<signed char, signed long >::value, "is_embedded");
  17. static_assert(is_embedded<signed short, signed int >::value, "is_embedded");
  18. static_assert(is_embedded<signed char, signed int >::value, "is_embedded");
  19. static_assert(is_embedded<signed char, signed short >::value, "is_embedded");
  20. static_assert(is_embedded<unsigned long, unsigned long long>::value, "is_embedded");
  21. static_assert(is_embedded<unsigned int, unsigned long long>::value, "is_embedded");
  22. static_assert(is_embedded<unsigned short, unsigned long long>::value, "is_embedded");
  23. static_assert(is_embedded<unsigned char, unsigned long long>::value, "is_embedded");
  24. static_assert(is_embedded<unsigned int, unsigned long >::value, "is_embedded");
  25. static_assert(is_embedded<unsigned short, unsigned long >::value, "is_embedded");
  26. static_assert(is_embedded<unsigned char, unsigned long >::value, "is_embedded");
  27. static_assert(is_embedded<unsigned short, unsigned int >::value, "is_embedded");
  28. static_assert(is_embedded<unsigned char, unsigned int >::value, "is_embedded");
  29. static_assert(is_embedded<unsigned char, unsigned short >::value, "is_embedded");
  30. TEST(test_mp_util_to, make)
  31. {
  32. EXPECT_EQ(to<int>(static_cast<uint8_t>(8)), 8);
  33. }