blob: 1a411f74c95d390c7092f1cc32c060c0b72b0b83 [file] [log] [blame]
William A. Kennington III977d4d42018-06-23 00:33:08 -07001#include <gtest/gtest.h>
Patrick Williams0c841a12016-07-20 12:34:24 -05002#include <sdbusplus/utility/type_traits.hpp>
William A. Kennington III977d4d42018-06-23 00:33:08 -07003#include <type_traits>
Patrick Williams0c841a12016-07-20 12:34:24 -05004
William A. Kennington III977d4d42018-06-23 00:33:08 -07005namespace
Patrick Williams0c841a12016-07-20 12:34:24 -05006{
Patrick Williams0c841a12016-07-20 12:34:24 -05007
William A. Kennington III977d4d42018-06-23 00:33:08 -07008using sdbusplus::utility::array_to_ptr_t;
9using std::is_same;
10
11TEST(TypeTraits, Basic)
12{
13
14 static_assert(is_same<char, array_to_ptr_t<char, char>>::value,
Andrew Geissler072da3e2018-01-18 07:21:42 -080015 "array_to_ptr_t<char, char> != char");
Patrick Williams0c841a12016-07-20 12:34:24 -050016
William A. Kennington III977d4d42018-06-23 00:33:08 -070017 static_assert(is_same<char*, array_to_ptr_t<char, char*>>::value,
Andrew Geissler072da3e2018-01-18 07:21:42 -080018 "array_to_ptr_t<char, char*> != char*");
Patrick Williams0c841a12016-07-20 12:34:24 -050019
William A. Kennington III977d4d42018-06-23 00:33:08 -070020 static_assert(is_same<char*, array_to_ptr_t<char, char[100]>>::value,
Andrew Geissler072da3e2018-01-18 07:21:42 -080021 "array_to_ptr_t<char, char[100]> != char*");
Patrick Williams0c841a12016-07-20 12:34:24 -050022
William A. Kennington III977d4d42018-06-23 00:33:08 -070023 static_assert(is_same<char[100], array_to_ptr_t<int, char[100]>>::value,
24 "array_to_ptr_t<int, char[100]> != char[100]");
Patrick Williams0c841a12016-07-20 12:34:24 -050025}
William A. Kennington III977d4d42018-06-23 00:33:08 -070026
27} // namespace