]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/gil/test/core/channel/channel_traits.cpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / libs / gil / test / core / channel / channel_traits.cpp
1 //
2 // Copyright 2018 Mateusz Loskot <mateusz at loskot dot net>
3 //
4 // Distributed under the Boost Software License, Version 1.0
5 // See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt
7 //
8 #include <boost/gil/channel.hpp>
9 #include <boost/gil/typedefs.hpp>
10 #include <cstdint>
11 #include <limits>
12
13 #define BOOST_TEST_MODULE test_channel_traits
14 #include "unit_test.hpp"
15
16 namespace gil = boost::gil;
17
18 template <typename T>
19 void test_channel_minmax()
20 {
21 BOOST_TEST(gil::channel_traits<T>::min_value() ==
22 std::numeric_limits<T>::min());
23
24 BOOST_TEST(gil::channel_traits<T>::max_value() ==
25 std::numeric_limits<T>::max());
26 }
27
28 BOOST_AUTO_TEST_CASE(channel_minmax_uint8_t)
29 {
30 test_channel_minmax<std::uint8_t>();
31 }
32
33 BOOST_AUTO_TEST_CASE(channel_minmax_int8_t)
34 {
35 test_channel_minmax<std::int8_t>();
36 }
37
38 BOOST_AUTO_TEST_CASE(channel_minmax_uint16_t)
39 {
40 test_channel_minmax<std::uint16_t>();
41 }
42
43 BOOST_AUTO_TEST_CASE(channel_minmax_int16_t)
44 {
45 test_channel_minmax<std::int16_t>();
46 }
47
48 BOOST_AUTO_TEST_CASE(channel_minmax_uint32_t)
49 {
50 test_channel_minmax<std::uint32_t>();
51 }
52
53 BOOST_AUTO_TEST_CASE(channel_minmax_int32_t)
54 {
55 test_channel_minmax<std::int32_t>();
56 }