]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/libs/test/test/writing-test-ts/boost_check_equal-str-test.cpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / test / test / writing-test-ts / boost_check_equal-str-test.cpp
index 8f00b8eb72b30bccab181a7140bb33ab28d02545..d14590c8a47293fb386eee9f04ed958340f96395 100644 (file)
@@ -23,10 +23,26 @@ BOOST_AUTO_TEST_CASE( check_is_cstring_concept )
   BOOST_TEST((bp::is_cstring<char const []>::value));
   BOOST_TEST((bp::is_cstring<char []>::value));
   BOOST_TEST((bp::is_cstring<char *>::value));
+  BOOST_TEST((!bp::is_cstring<std::string>::value));
+  BOOST_TEST((!bp::is_cstring< bp::basic_cstring<char> >::value));
+
+  BOOST_TEST((!bp::is_cstring< std::vector<char> >::value));
 }
 
-//____________________________________________________________________________//
+BOOST_AUTO_TEST_CASE( check_is_cstring_comparable_concept )
+{
+  namespace bp = boost::unit_test;
+  BOOST_TEST((bp::is_cstring_comparable<char const*>::value));
+  BOOST_TEST((bp::is_cstring_comparable<char const []>::value));
+  BOOST_TEST((bp::is_cstring_comparable<char []>::value));
+  BOOST_TEST((bp::is_cstring_comparable<char *>::value));
+  BOOST_TEST((bp::is_cstring_comparable<std::string>::value));
+  BOOST_TEST((bp::is_cstring_comparable< bp::basic_cstring<char> >::value));
+
+  BOOST_TEST((!bp::is_cstring_comparable< std::vector<char> >::value));
+}
 
+//____________________________________________________________________________//
 
 BOOST_AUTO_TEST_CASE( check_string_compare )
 {
@@ -41,10 +57,12 @@ BOOST_AUTO_TEST_CASE( check_string_compare )
     BOOST_TEST((void*)buf_array_cch != (void*)buf_array_ch);
 
     BOOST_TEST(buf_ptr_cch == buf_ptr_cch);
+#ifndef BOOST_TEST_MACRO_LIMITED_SUPPORT
     BOOST_TEST(buf_ptr_cch == buf_array_cch);
-    BOOST_TEST(buf_ptr_cch == buf_ptr_ch);
     BOOST_TEST(buf_ptr_cch == buf_array_ch);
+    BOOST_TEST(buf_ptr_cch == buf_ptr_ch);
     BOOST_TEST(buf_ptr_cch == buf_str);
+#endif
 
 #ifndef BOOST_TEST_MACRO_LIMITED_SUPPORT
     BOOST_TEST(buf_array_cch == buf_ptr_cch);
@@ -54,11 +72,13 @@ BOOST_AUTO_TEST_CASE( check_string_compare )
     BOOST_TEST(buf_array_cch == buf_str);
 #endif
 
+    BOOST_TEST(buf_ptr_ch == buf_ptr_ch);
+#ifndef BOOST_TEST_MACRO_LIMITED_SUPPORT
     BOOST_TEST(buf_ptr_ch == buf_ptr_cch);
     BOOST_TEST(buf_ptr_ch == buf_array_cch);
-    BOOST_TEST(buf_ptr_ch == buf_ptr_ch);
     BOOST_TEST(buf_ptr_ch == buf_array_ch);
     BOOST_TEST(buf_ptr_ch == buf_str);
+#endif
 
 #ifndef BOOST_TEST_MACRO_LIMITED_SUPPORT
     BOOST_TEST(buf_array_ch == buf_ptr_cch);
@@ -73,6 +93,36 @@ BOOST_AUTO_TEST_CASE( check_string_compare )
     BOOST_TEST(buf_str == buf_ptr_ch);
     BOOST_TEST(buf_str == buf_array_ch);
     BOOST_TEST(buf_str == buf_str);
+
+    BOOST_TEST(buf_ptr_cch == buf_str);
+    //BOOST_TEST(buf_array_cch == buf_str); // does not compile
+    BOOST_TEST(buf_ptr_ch == buf_str);
+    //BOOST_TEST(buf_array_ch == buf_str); // does not compile
+    BOOST_TEST(buf_str == buf_str);
+
+#ifndef BOOST_TEST_MACRO_LIMITED_SUPPORT
+    BOOST_TEST( buf_ptr_cch == buf_ptr_cch, boost::test_tools::per_element() );
+    BOOST_TEST( buf_ptr_cch <= "abd" , boost::test_tools::per_element() );
+    BOOST_TEST( buf_ptr_cch >= "aba" , boost::test_tools::per_element() );
+    BOOST_TEST( buf_str == buf_ptr_cch , boost::test_tools::per_element() );
+    BOOST_TEST( buf_str <= "abd" , boost::test_tools::per_element() );
+    BOOST_TEST( buf_str >= "aba" , boost::test_tools::per_element() );
+
+    BOOST_TEST( buf_ptr_cch <= buf_ptr_cch, boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_ptr_cch >= buf_ptr_cch, boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_ptr_cch <= "abc" , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_ptr_cch < "abd" , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_ptr_cch < "abcd" , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_ptr_cch >= "abc" , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_ptr_cch > "aba" , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_ptr_cch > "abad" , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_str <= buf_ptr_cch , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_str >= buf_ptr_cch , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_str <= "abc" , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_str < "abd" , boost::test_tools::lexicographic() );
+    BOOST_TEST( buf_str > "aba" , boost::test_tools::lexicographic() );
+#endif
+
 }
 
 // EOF