summaryrefslogtreecommitdiffstats
path: root/src/boost/libs/vmd/test/test_tuple_pop_back.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/boost/libs/vmd/test/test_tuple_pop_back.cxx')
-rw-r--r--src/boost/libs/vmd/test/test_tuple_pop_back.cxx33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/boost/libs/vmd/test/test_tuple_pop_back.cxx b/src/boost/libs/vmd/test/test_tuple_pop_back.cxx
new file mode 100644
index 000000000..f30ef6d6b
--- /dev/null
+++ b/src/boost/libs/vmd/test/test_tuple_pop_back.cxx
@@ -0,0 +1,33 @@
+
+// (C) Copyright Edward Diener 2015
+// Use, modification and distribution are subject to the Boost Software License,
+// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt).
+
+#include <boost/vmd/tuple/pop_back.hpp>
+#include <boost/vmd/is_empty.hpp>
+#include <boost/preprocessor/tuple/elem.hpp>
+#include <boost/preprocessor/tuple/size.hpp>
+#include <boost/detail/lightweight_test.hpp>
+
+int main()
+ {
+
+#if BOOST_PP_VARIADICS
+
+ #define A_TUPLE (1,2,3,4)
+ #define AN_SE_TUPLE (1)
+
+ BOOST_TEST_EQ(BOOST_PP_TUPLE_ELEM(2,BOOST_VMD_TUPLE_POP_BACK(A_TUPLE)),3);
+ BOOST_TEST_EQ(BOOST_PP_TUPLE_SIZE(BOOST_VMD_TUPLE_POP_BACK(A_TUPLE)),3);
+ BOOST_TEST(BOOST_VMD_IS_EMPTY(BOOST_VMD_TUPLE_POP_BACK(AN_SE_TUPLE)));
+
+#else
+
+BOOST_ERROR("No variadic macro support");
+
+#endif
+
+ return boost::report_errors();
+
+ }