/
githubmirror
/
omim
Обзор
Документация
Войти
/
githubmirror
/
omim
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
base/base_tests/checked_cast_tests.cpp
69 строк
2 KB
Arsentiy Milchakov
[map] infrastructure for elevation info is added. review fixes
04 мар 2020, 15:51
04 мар 2020, 15:51
4683f80
Код
Авторство
О чём код?
#include "testing/testing.hpp" #include "base/checked_cast.hpp" #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wimplicitly-unsigned-literal" UNIT_TEST(IsCastValid) { { int8_t value = -1; TEST(base::IsCastValid<int8_t>(value), ()); TEST(base::IsCastValid<int16_t>(value), ()); TEST(base::IsCastValid<int32_t>(value), ()); TEST(base::IsCastValid<int64_t>(value), ()); TEST(!base::IsCastValid<uint8_t>(value), ()); TEST(!base::IsCastValid<uint16_t>(value), ()); TEST(!base::IsCastValid<uint32_t>(value), ()); TEST(!base::IsCastValid<uint64_t>(value), ()); } { int64_t value = -1; TEST(base::IsCastValid<int8_t>(value), ()); TEST(base::IsCastValid<int16_t>(value), ()); TEST(base::IsCastValid<int32_t>(value), ()); TEST(base::IsCastValid<int64_t>(value), ()); TEST(!base::IsCastValid<uint8_t>(value), ()); TEST(!base::IsCastValid<uint16_t>(value), ()); TEST(!base::IsCastValid<uint32_t>(value), ()); TEST(!base::IsCastValid<uint64_t>(value), ()); } { uint8_t value = 128; TEST(!base::IsCastValid<int8_t>(value), ()); TEST(base::IsCastValid<int16_t>(value), ()); TEST(base::IsCastValid<int32_t>(value), ()); TEST(base::IsCastValid<int64_t>(value), ()); TEST(base::IsCastValid<uint8_t>(value), ()); TEST(base::IsCastValid<uint16_t>(value), ()); TEST(base::IsCastValid<uint32_t>(value), ()); TEST(base::IsCastValid<uint64_t>(value), ()); } { uint64_t value = 9223372036854775808; TEST(!base::IsCastValid<int8_t>(value), ()); TEST(!base::IsCastValid<int16_t>(value), ()); TEST(!base::IsCastValid<int32_t>(value), ()); TEST(!base::IsCastValid<int64_t>(value), ()); TEST(!base::IsCastValid<uint8_t>(value), ()); TEST(!base::IsCastValid<uint16_t>(value), ()); TEST(!base::IsCastValid<uint32_t>(value), ()); TEST(base::IsCastValid<uint64_t>(value), ()); } { int64_t value = -9223372036854775808; TEST(!base::IsCastValid<int8_t>(value), ()); TEST(!base::IsCastValid<int16_t>(value), ()); TEST(!base::IsCastValid<int32_t>(value), ()); TEST(base::IsCastValid<int64_t>(value), ()); TEST(!base::IsCastValid<uint8_t>(value), ()); TEST(!base::IsCastValid<uint16_t>(value), ()); TEST(!base::IsCastValid<uint32_t>(value), ()); TEST(!base::IsCastValid<uint64_t>(value), ()); } }