aboutsummaryrefslogtreecommitdiff
path: root/test/source/TestStringView.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/source/TestStringView.cpp')
-rw-r--r--test/source/TestStringView.cpp115
1 files changed, 0 insertions, 115 deletions
diff --git a/test/source/TestStringView.cpp b/test/source/TestStringView.cpp
deleted file mode 100644
index 23e6e51..0000000
--- a/test/source/TestStringView.cpp
+++ /dev/null
@@ -1,115 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Copyright (c) Electronic Arts Inc. All rights reserved.
-/////////////////////////////////////////////////////////////////////////////
-
-#include "EASTLTest.h"
-#include <EABase/eabase.h>
-#include <EASTL/numeric_limits.h>
-#include <EASTL/string.h>
-#include <EASTL/string_view.h>
-
-// Verify char8_t support is present if the test build requested it.
-#if defined(EASTL_EXPECT_CHAR8T_SUPPORT) && !EA_CHAR8_UNIQUE
-static_assert(false, "Building with char8_t tests enabled, but EA_CHAR8_UNIQUE evaluates to false.");
-#endif
-
-// this mess is required inorder to inject string literal string conversion macros into the unit tests
-#define TEST_STRING_NAME TestBasicStringView
-#define LITERAL(x) x
-#include "TestStringView.inl"
-
-#define TEST_STRING_NAME TestBasicStringViewW
-#define LITERAL(x) EA_WCHAR(x)
-#include "TestStringView.inl"
-
-#define TEST_STRING_NAME TestBasicStringView8
-#define LITERAL(x) EA_CHAR8(x)
-#include "TestStringView.inl"
-
-#define TEST_STRING_NAME TestBasicStringView16
-#define LITERAL(x) EA_CHAR16(x)
-#include "TestStringView.inl"
-
-#define TEST_STRING_NAME TestBasicStringView32
-#define LITERAL(x) EA_CHAR32(x)
-#include "TestStringView.inl"
-
-
-int TestStringView()
-{
- using namespace eastl;
- int nErrorCount = 0;
-
- nErrorCount += TestBasicStringView<eastl::basic_string_view<char>>();
- nErrorCount += TestBasicStringView<eastl::string_view>();
-
- nErrorCount += TestBasicStringViewW<eastl::basic_string_view<wchar_t>>();
- nErrorCount += TestBasicStringViewW<eastl::wstring_view>();
-
-#if EA_CHAR8_UNIQUE
- nErrorCount += TestBasicStringView8<eastl::basic_string_view<char8_t>>();
- nErrorCount += TestBasicStringView8<eastl::u8string_view>();
-#endif
-
- nErrorCount += TestBasicStringView16<eastl::basic_string_view<char16_t>>();
- nErrorCount += TestBasicStringView16<eastl::u16string_view>();
-
-#if EA_CHAR32_NATIVE
- nErrorCount += TestBasicStringView32<eastl::basic_string_view<char32_t>>();
- nErrorCount += TestBasicStringView32<eastl::u32string_view>();
-#endif
-
-
- // constexpr string_view operator "" sv(const char* str, size_t len) noexcept;
- // constexpr u8string_view operator "" sv(const char8_t* str, size_t len) noexcept;
- // constexpr u16string_view operator "" sv(const char16_t* str, size_t len) noexcept;
- // constexpr u32string_view operator "" sv(const char32_t* str, size_t len) noexcept;
- // constexpr wstring_view operator "" sv(const wchar_t* str, size_t len) noexcept;
- #if EASTL_USER_LITERALS_ENABLED
- {
- VERIFY("cplusplus"_sv.compare("cplusplus") == 0);
- VERIFY(L"cplusplus"_sv.compare(L"cplusplus") == 0);
- VERIFY(u"cplusplus"_sv.compare(u"cplusplus") == 0);
- VERIFY(U"cplusplus"_sv.compare(U"cplusplus") == 0);
- VERIFY(u8"cplusplus"_sv.compare(u8"cplusplus") == 0);
-
- static_assert(eastl::is_same_v<decltype("abcdef"_sv), eastl::string_view>, "string_view literal type mismatch");
- static_assert(eastl::is_same_v<decltype(u8"abcdef"_sv), eastl::u8string_view>, "string_view literal type mismatch");
- static_assert(eastl::is_same_v<decltype(u"abcdef"_sv), eastl::u16string_view>, "string_view literal type mismatch");
- static_assert(eastl::is_same_v<decltype(U"abcdef"_sv), eastl::u32string_view>, "string_view literal type mismatch");
- static_assert(eastl::is_same_v<decltype(L"abcdef"_sv), eastl::wstring_view>, "string_view literal type mismatch");
-
-
- VERIFY("cplusplus"sv.compare("cplusplus") == 0);
- VERIFY(L"cplusplus"sv.compare(L"cplusplus") == 0);
- VERIFY(u"cplusplus"sv.compare(u"cplusplus") == 0);
- VERIFY(U"cplusplus"sv.compare(U"cplusplus") == 0);
- VERIFY(u8"cplusplus"sv.compare(u8"cplusplus") == 0);
-
- static_assert(eastl::is_same_v<decltype("abcdef"sv), eastl::string_view>, "string_view literal type mismatch");
- static_assert(eastl::is_same_v<decltype(u8"abcdef"sv), eastl::u8string_view>, "string_view literal type mismatch");
- static_assert(eastl::is_same_v<decltype(u"abcdef"sv), eastl::u16string_view>, "string_view literal type mismatch");
- static_assert(eastl::is_same_v<decltype(U"abcdef"sv), eastl::u32string_view>, "string_view literal type mismatch");
- static_assert(eastl::is_same_v<decltype(L"abcdef"sv), eastl::wstring_view>, "string_view literal type mismatch");
- }
- #endif
-
-
- // strlen(char_t) compatibility
- {
- auto* pStr = "Hello, World";
- string_view sw(pStr, strlen(pStr));
- VERIFY(sw.size() == strlen(pStr));
- }
-
- // strlen(wchar_t) compatibility
- {
- auto* pStr = L"Hello, World";
- wstring_view sw(pStr, wcslen(pStr));
- VERIFY(sw.size() == wcslen(pStr));
- }
-
-
- return nErrorCount;
-}
-