2
0
mirror of https://github.com/boostorg/hana.git synced 2026-02-21 15:12:21 +00:00

Use finer grained assertions acknowledging Constants

This commit is contained in:
Louis Dionne
2014-08-05 10:37:54 -04:00
parent bf5eb10c46
commit d132db0ebf
436 changed files with 2672 additions and 2554 deletions

View File

@@ -6,9 +6,9 @@ Distributed under the Boost Software License, Version 1.0.
#include <boost/hana/functional.hpp>
#include <boost/hana/detail/assert.hpp>
#include <boost/hana/detail/constexpr.hpp>
#include <boost/hana/detail/minimal/comparable.hpp>
#include <boost/hana/detail/static_assert.hpp>
#include <tuple>
using namespace boost::hana;
@@ -30,11 +30,11 @@ template <int i>
constexpr auto x = detail::minimal::comparable<>(i);
int main() {
BOOST_HANA_STATIC_ASSERT(compose(f, g)(x<0>) == f(g(x<0>)));
BOOST_HANA_STATIC_ASSERT(compose(f, g)(x<0>, x<1>) == f(g(x<0>), x<1>));
BOOST_HANA_STATIC_ASSERT(compose(f, g)(x<0>, x<1>, x<2>) == f(g(x<0>), x<1>, x<2>));
BOOST_HANA_CONSTEXPR_ASSERT(compose(f, g)(x<0>) == f(g(x<0>)));
BOOST_HANA_CONSTEXPR_ASSERT(compose(f, g)(x<0>, x<1>) == f(g(x<0>), x<1>));
BOOST_HANA_CONSTEXPR_ASSERT(compose(f, g)(x<0>, x<1>, x<2>) == f(g(x<0>), x<1>, x<2>));
BOOST_HANA_STATIC_ASSERT(compose(f, g, h)(x<0>) == f(g(h(x<0>))));
BOOST_HANA_STATIC_ASSERT(compose(f, g, h)(x<0>, x<1>) == f(g(h(x<0>)), x<1>));
BOOST_HANA_STATIC_ASSERT(compose(f, g, h)(x<0>, x<1>, x<2>) == f(g(h(x<0>)), x<1>, x<2>));
BOOST_HANA_CONSTEXPR_ASSERT(compose(f, g, h)(x<0>) == f(g(h(x<0>))));
BOOST_HANA_CONSTEXPR_ASSERT(compose(f, g, h)(x<0>, x<1>) == f(g(h(x<0>)), x<1>));
BOOST_HANA_CONSTEXPR_ASSERT(compose(f, g, h)(x<0>, x<1>, x<2>) == f(g(h(x<0>)), x<1>, x<2>));
}