summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/experimental/filesystem/class.path/path.nonmember
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/experimental/filesystem/class.path/path.nonmember')
-rw-r--r--libcxx/test/std/experimental/filesystem/class.path/path.nonmember/append_op.pass.cpp32
-rw-r--r--libcxx/test/std/experimental/filesystem/class.path/path.nonmember/comparison_ops_tested_elsewhere.pass.cpp14
-rw-r--r--libcxx/test/std/experimental/filesystem/class.path/path.nonmember/hash_value_tested_elswhere.pass.cpp14
-rw-r--r--libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.factory.pass.cpp52
-rw-r--r--libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.io.pass.cpp98
-rw-r--r--libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.io.unicode_bug.pass.cpp69
-rw-r--r--libcxx/test/std/experimental/filesystem/class.path/path.nonmember/swap.pass.cpp49
7 files changed, 0 insertions, 328 deletions
diff --git a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/append_op.pass.cpp b/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/append_op.pass.cpp
deleted file mode 100644
index 3648da57af0..00000000000
--- a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/append_op.pass.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++98, c++03
-
-// <experimental/filesystem>
-
-// path operator/(path const&, path const&);
-
-#include "filesystem_include.hpp"
-#include <type_traits>
-#include <cassert>
-
-#include "test_macros.h"
-#include "filesystem_test_helper.hpp"
-
-
-// This is mainly tested via the member append functions.
-int main()
-{
- using namespace fs;
- path p1("abc");
- path p2("def");
- path p3 = p1 / p2;
- assert(p3 == "abc/def");
-}
diff --git a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/comparison_ops_tested_elsewhere.pass.cpp b/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/comparison_ops_tested_elsewhere.pass.cpp
deleted file mode 100644
index 28867432c61..00000000000
--- a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/comparison_ops_tested_elsewhere.pass.cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++98, c++03
-
-// The comparison operators are tested as part of [path.compare]
-// in class.path/path.members/path.compare.pass.cpp
-int main() {}
diff --git a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/hash_value_tested_elswhere.pass.cpp b/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/hash_value_tested_elswhere.pass.cpp
deleted file mode 100644
index b03b8008b62..00000000000
--- a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/hash_value_tested_elswhere.pass.cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++98, c++03
-
-// The "hash_value" function is tested as part of [path.compare]
-// in class.path/path.members/path.compare.pass.cpp
-int main() {}
diff --git a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.factory.pass.cpp b/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.factory.pass.cpp
deleted file mode 100644
index 5d9194b4e8b..00000000000
--- a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.factory.pass.cpp
+++ /dev/null
@@ -1,52 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++98, c++03
-
-// <experimental/filesystem>
-
-// template <class Source>
-// path u8path(Source const&);
-// template <class InputIter>
-// path u8path(InputIter, InputIter);
-
-#include "filesystem_include.hpp"
-#include <type_traits>
-#include <cassert>
-
-#include "test_macros.h"
-#include "test_iterators.h"
-#include "count_new.hpp"
-#include "filesystem_test_helper.hpp"
-
-
-int main()
-{
- using namespace fs;
- const char* In1 = "abcd/efg";
- const std::string In2(In1);
- const auto In3 = In2.begin();
- const auto In3End = In2.end();
- {
- path p = fs::u8path(In1);
- assert(p == In1);
- }
- {
- path p = fs::u8path(In2);
- assert(p == In1);
- }
- {
- path p = fs::u8path(In3);
- assert(p == In1);
- }
- {
- path p = fs::u8path(In3, In3End);
- assert(p == In1);
- }
-}
diff --git a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.io.pass.cpp b/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.io.pass.cpp
deleted file mode 100644
index 58e333aad6b..00000000000
--- a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.io.pass.cpp
+++ /dev/null
@@ -1,98 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++98, c++03
-
-// <experimental/filesystem>
-
-// class path
-
-// template <class charT, class traits>
-// basic_ostream<charT, traits>&
-// operator<<(basic_ostream<charT, traits>& os, const path& p);
-//
-// template <class charT, class traits>
-// basic_istream<charT, traits>&
-// operator>>(basic_istream<charT, traits>& is, path& p)
-//
-
-#include "filesystem_include.hpp"
-#include <type_traits>
-#include <sstream>
-#include <cassert>
-#include <iostream>
-
-#include "test_macros.h"
-#include "test_iterators.h"
-#include "count_new.hpp"
-#include "filesystem_test_helper.hpp"
-
-MultiStringType InStr = MKSTR("abcdefg/\"hijklmnop\"/qrstuvwxyz/123456789");
-MultiStringType OutStr = MKSTR("\"abcdefg/\\\"hijklmnop\\\"/qrstuvwxyz/123456789\"");
-
-
-
-template <class CharT>
-void doIOTest() {
- using namespace fs;
- using Ptr = const CharT*;
- using StrStream = std::basic_stringstream<CharT>;
- const Ptr E = OutStr;
- const path p((const char*)InStr);
- StrStream ss;
- { // test output
- auto& ret = (ss << p);
- assert(ss.str() == E);
- assert(&ret == &ss);
- }
- { // test input
- path p_in;
- auto& ret = ss >> p_in;
- assert(p_in.native() == (const char*)InStr);
- assert(&ret == &ss);
- }
-}
-
-namespace impl {
-using namespace fs;
-
-template <class Stream, class Tp, class = decltype(std::declval<Stream&>() << std::declval<Tp&>())>
-std::true_type is_ostreamable_imp(int);
-
-template <class Stream, class Tp>
-std::false_type is_ostreamable_imp(long);
-
-template <class Stream, class Tp, class = decltype(std::declval<Stream&>() >> std::declval<Tp&>())>
-std::true_type is_istreamable_imp(int);
-
-template <class Stream, class Tp>
-std::false_type is_istreamable_imp(long);
-
-
-} // namespace impl
-
-template <class Stream, class Tp>
-struct is_ostreamable : decltype(impl::is_ostreamable_imp<Stream, Tp>(0)) {};
-template <class Stream, class Tp>
-struct is_istreamable : decltype(impl::is_istreamable_imp<Stream, Tp>(0)) {};
-
-void test_LWG2989() {
- static_assert(!is_ostreamable<decltype(std::cout), std::wstring>::value, "");
- static_assert(!is_ostreamable<decltype(std::wcout), std::string>::value, "");
- static_assert(!is_istreamable<decltype(std::cin), std::wstring>::value, "");
- static_assert(!is_istreamable<decltype(std::wcin), std::string>::value, "");
-}
-
-int main() {
- doIOTest<char>();
- doIOTest<wchar_t>();
- //doIOTest<char16_t>();
- //doIOTest<char32_t>();
- test_LWG2989();
-}
diff --git a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.io.unicode_bug.pass.cpp b/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.io.unicode_bug.pass.cpp
deleted file mode 100644
index ff622532e8c..00000000000
--- a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/path.io.unicode_bug.pass.cpp
+++ /dev/null
@@ -1,69 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++98, c++03
-
-// <experimental/filesystem>
-
-// class path
-
-// template <class charT, class traits>
-// basic_ostream<charT, traits>&
-// operator<<(basic_ostream<charT, traits>& os, const path& p);
-//
-// template <class charT, class traits>
-// basic_istream<charT, traits>&
-// operator>>(basic_istream<charT, traits>& is, path& p)
-//
-
-// TODO(EricWF) This test fails because "std::quoted" fails to compile
-// for char16_t and char32_t types. Combine with path.io.pass.cpp when this
-// passes.
-// XFAIL: *
-
-#include "filesystem_include.hpp"
-#include <type_traits>
-#include <sstream>
-#include <cassert>
-
-#include "test_macros.h"
-#include "test_iterators.h"
-#include "count_new.hpp"
-#include "filesystem_test_helper.hpp"
-
-MultiStringType InStr = MKSTR("abcdefg/\"hijklmnop\"/qrstuvwxyz/123456789");
-MultiStringType OutStr = MKSTR("\"abcdefg/\\\"hijklmnop\\\"/qrstuvwxyz/123456789\"");
-
-template <class CharT>
-void doIOTest() {
- using namespace fs;
- using Ptr = const CharT*;
- using StrStream = std::basic_stringstream<CharT>;
- const char* const InCStr = InStr;
- const Ptr E = OutStr;
- const path p((const char*)InStr);
- StrStream ss;
- { // test output
- auto& ret = (ss << p);
- assert(ss.str() == E);
- assert(&ret == &ss);
- }
- { // test input
- path p_in;
- auto& ret = ss >> p_in;
- assert(p_in.native() == (const char*)InStr);
- assert(&ret == &ss);
- }
-}
-
-
-int main() {
- doIOTest<char16_t>();
- doIOTest<char32_t>();
-}
diff --git a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/swap.pass.cpp b/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/swap.pass.cpp
deleted file mode 100644
index 4f7b93a05a9..00000000000
--- a/libcxx/test/std/experimental/filesystem/class.path/path.nonmember/swap.pass.cpp
+++ /dev/null
@@ -1,49 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under the MIT and the University of Illinois Open
-// Source Licenses. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++98, c++03
-
-// <experimental/filesystem>
-
-// void swap(path& lhs, path& rhs) noexcept;
-
-#include "filesystem_include.hpp"
-#include <type_traits>
-#include <cassert>
-
-#include "test_macros.h"
-#include "count_new.hpp"
-#include "filesystem_test_helper.hpp"
-
-
-// NOTE: this is tested in path.members/path.modifiers via the member swap.
-int main()
-{
- using namespace fs;
- const char* value1 = "foo/bar/baz";
- const char* value2 = "_THIS_IS_LONG_THIS_IS_LONG_THIS_IS_LONG_THIS_IS_LONG_THIS_IS_LONG_THIS_IS_LONG_THIS_IS_LONG";
- path p1(value1);
- path p2(value2);
- {
- using namespace std; using namespace fs;
- ASSERT_NOEXCEPT(swap(p1, p2));
- ASSERT_SAME_TYPE(void, decltype(swap(p1, p2)));
- }
- {
- DisableAllocationGuard g;
- using namespace std;
- using namespace fs;
- swap(p1, p2);
- assert(p1.native() == value2);
- assert(p2.native() == value1);
- swap(p1, p2);
- assert(p1.native() == value1);
- assert(p2.native() == value2);
- }
-}
OpenPOWER on IntegriCloud