summaryrefslogtreecommitdiffstats
path: root/src/boost/libs/array/test/array7.cpp
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 18:45:59 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 18:45:59 +0000
commit19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch)
tree42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/boost/libs/array/test/array7.cpp
parentInitial commit. (diff)
downloadceph-upstream/16.2.11+ds.tar.xz
ceph-upstream/16.2.11+ds.zip
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/boost/libs/array/test/array7.cpp')
-rw-r--r--src/boost/libs/array/test/array7.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/boost/libs/array/test/array7.cpp b/src/boost/libs/array/test/array7.cpp
new file mode 100644
index 000000000..567b2e61a
--- /dev/null
+++ b/src/boost/libs/array/test/array7.cpp
@@ -0,0 +1,66 @@
+/* tests using std::get on boost:array
+ * (C) Copyright Marshall Clow 2012
+ * Distributed under 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 <string>
+#include <iostream>
+#include <boost/array.hpp>
+#include <algorithm>
+#ifndef BOOST_NO_CXX11_HDR_ARRAY
+#include <array>
+#endif
+
+#include <boost/core/lightweight_test_trait.hpp>
+
+namespace {
+
+ #ifndef BOOST_NO_CXX11_HDR_ARRAY
+ template< class T >
+ void RunStdTests()
+ {
+ typedef boost::array< T, 5 > test_type;
+ test_type test_case; // = { 1, 1, 2, 3, 5 };
+
+ T &aRef = std::get<0> ( test_case );
+ BOOST_TEST ( &*test_case.begin () == &aRef );
+
+ const T &caRef = std::get<0> ( test_case );
+ BOOST_TEST ( &*test_case.cbegin () == &caRef );
+ }
+ #endif
+
+ template< class T >
+ void RunBoostTests()
+ {
+ typedef boost::array< T, 5 > test_type;
+ test_type test_case; // = { 1, 1, 2, 3, 5 };
+
+ T &aRef = boost::get<0> ( test_case );
+ BOOST_TEST ( &*test_case.begin () == &aRef );
+
+ const T &caRef = boost::get<0> ( test_case );
+ BOOST_TEST ( &*test_case.cbegin () == &caRef );
+ }
+
+}
+
+int main()
+{
+ RunBoostTests< bool >();
+ RunBoostTests< void * >();
+ RunBoostTests< long double >();
+ RunBoostTests< std::string >();
+
+#ifndef BOOST_NO_CXX11_HDR_ARRAY
+ RunStdTests< bool >();
+ RunStdTests< void * >();
+ RunStdTests< long double >();
+ RunStdTests< std::string >();
+#endif
+
+ return boost::report_errors();
+}
+