public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 3/4]: C++ P1423R3 char8_t remediation: Updates to existing tests
@ 2019-09-15 19:39 Tom Honermann
  0 siblings, 0 replies; only message in thread
From: Tom Honermann @ 2019-09-15 19:39 UTC (permalink / raw)
  To: libstdc++, gcc-patches

[-- Attachment #1: Type: text/plain, Size: 810 bytes --]

This patch updates existing tests to validate the new value for the
__cpp_lib_char8_t feature test macros and to exercise u8path factory
function invocations with std::string, std::string_view, and interator
pair arguments.

libstdc++-v3/ChangeLog:

2019-09-15  Tom Honermann  <tom@honermann.net>

      * libstdc++-v3/testsuite/experimental/feat-char8_t.cc: Updated the
        expected __cpp_lib_char8_t feature test macro value.
      * libstdc++-v3/testsuite/27_io/filesystem/path/factory/u8path.cc:
        Added testing of u8path invocation with std::string,
        std::string_view, and iterators thereof.
      * 
libstdc++-v3/testsuite/experimental/filesystem/path/factory/u8path.cc:
        Added testing of u8path invocation with std::string,
        std::string_view, and iterators thereof.

Tom.

[-- Attachment #2: p1423r3-3.patch --]
[-- Type: text/x-patch, Size: 2259 bytes --]

diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/factory/u8path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/factory/u8path.cc
index aff722b5867..fb337ce1284 100644
--- a/libstdc++-v3/testsuite/27_io/filesystem/path/factory/u8path.cc
+++ b/libstdc++-v3/testsuite/27_io/filesystem/path/factory/u8path.cc
@@ -19,6 +19,7 @@
 // { dg-do run { target c++17 } }
 
 #include <filesystem>
+#include <string_view>
 #include <testsuite_hooks.h>
 
 namespace fs = std::filesystem;
@@ -34,6 +35,22 @@ test01()
 
   p = fs::u8path("\xf0\x9d\x84\x9e");
   VERIFY( p.u8string() == u8"\U0001D11E" );
+
+  std::string s1 = "filename2";
+  p = fs::u8path(s1);
+  VERIFY( p.u8string() == u8"filename2" );
+
+  std::string s2 = "filename3";
+  p = fs::u8path(s2.begin(), s2.end());
+  VERIFY( p.u8string() == u8"filename3" );
+
+  std::string_view sv1{ s1 };
+  p = fs::u8path(sv1);
+  VERIFY( p.u8string() == u8"filename2" );
+
+  std::string_view sv2{ s2 };
+  p = fs::u8path(sv2.begin(), sv2.end());
+  VERIFY( p.u8string() == u8"filename3" );
 }
 
 void
diff --git a/libstdc++-v3/testsuite/experimental/feat-char8_t.cc b/libstdc++-v3/testsuite/experimental/feat-char8_t.cc
index e843604266c..c9b277a4626 100644
--- a/libstdc++-v3/testsuite/experimental/feat-char8_t.cc
+++ b/libstdc++-v3/testsuite/experimental/feat-char8_t.cc
@@ -12,6 +12,6 @@
 
 #ifndef  __cpp_lib_char8_t
 #  error "__cpp_lib_char8_t"
-#elif  __cpp_lib_char8_t != 201811L
-#  error "__cpp_lib_char8_t != 201811L"
+#elif  __cpp_lib_char8_t != 201907L
+#  error "__cpp_lib_char8_t != 201907L"
 #endif
diff --git a/libstdc++-v3/testsuite/experimental/filesystem/path/factory/u8path.cc b/libstdc++-v3/testsuite/experimental/filesystem/path/factory/u8path.cc
index bdeb3946a15..83219b7ddda 100644
--- a/libstdc++-v3/testsuite/experimental/filesystem/path/factory/u8path.cc
+++ b/libstdc++-v3/testsuite/experimental/filesystem/path/factory/u8path.cc
@@ -35,6 +35,14 @@ test01()
 
   p = fs::u8path("\xf0\x9d\x84\x9e");
   VERIFY( p.u8string() == u8"\U0001D11E" );
+
+  std::string s1 = "filename2";
+  p = fs::u8path(s1);
+  VERIFY( p.u8string() == u8"filename2" );
+
+  std::string s2 = "filename3";
+  p = fs::u8path(s2.begin(), s2.end());
+  VERIFY( p.u8string() == u8"filename3" );
 }
 
 void

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-09-15 19:39 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-15 19:39 [PATCH 3/4]: C++ P1423R3 char8_t remediation: Updates to existing tests Tom Honermann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).