diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2019-08-20 18:01:01 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2019-08-20 18:01:01 +0000 |
| commit | b7332b04df5d50c92640c74cfeb138ecb7e3f7ae (patch) | |
| tree | b1b49faa0cab1482905e0cda6f0ee5d97e3fe08f /test/std/strings/string.conversions/to_string.pass.cpp | |
| parent | 6012fe9abb1f01b1b5b4ca908464804c21ff8602 (diff) | |
Notes
Diffstat (limited to 'test/std/strings/string.conversions/to_string.pass.cpp')
| -rw-r--r-- | test/std/strings/string.conversions/to_string.pass.cpp | 127 |
1 files changed, 0 insertions, 127 deletions
diff --git a/test/std/strings/string.conversions/to_string.pass.cpp b/test/std/strings/string.conversions/to_string.pass.cpp deleted file mode 100644 index fdc682ce10312..0000000000000 --- a/test/std/strings/string.conversions/to_string.pass.cpp +++ /dev/null @@ -1,127 +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. -// -//===----------------------------------------------------------------------===// - -// <string> - -// string to_string(int val); -// string to_string(unsigned val); -// string to_string(long val); -// string to_string(unsigned long val); -// string to_string(long long val); -// string to_string(unsigned long long val); -// string to_string(float val); -// string to_string(double val); -// string to_string(long double val); - -#include <limits> -#include <string> -#include <cassert> -#include <sstream> - -template <class T> -void -test_signed() -{ - { - std::string s = std::to_string(T(0)); - assert(s.size() == 1); - assert(s[s.size()] == 0); - assert(s == "0"); - } - { - std::string s = std::to_string(T(12345)); - assert(s.size() == 5); - assert(s[s.size()] == 0); - assert(s == "12345"); - } - { - std::string s = std::to_string(T(-12345)); - assert(s.size() == 6); - assert(s[s.size()] == 0); - assert(s == "-12345"); - } - { - std::string s = std::to_string(std::numeric_limits<T>::max()); - assert(s.size() == std::numeric_limits<T>::digits10 + 1); - std::istringstream is(s); - T t(0); - is >> t; - assert(t == std::numeric_limits<T>::max()); - } - { - std::string s = std::to_string(std::numeric_limits<T>::min()); - std::istringstream is(s); - T t(0); - is >> t; - assert(t == std::numeric_limits<T>::min()); - } -} - -template <class T> -void -test_unsigned() -{ - { - std::string s = std::to_string(T(0)); - assert(s.size() == 1); - assert(s[s.size()] == 0); - assert(s == "0"); - } - { - std::string s = std::to_string(T(12345)); - assert(s.size() == 5); - assert(s[s.size()] == 0); - assert(s == "12345"); - } - { - std::string s = std::to_string(std::numeric_limits<T>::max()); - assert(s.size() == std::numeric_limits<T>::digits10 + 1); - std::istringstream is(s); - T t(0); - is >> t; - assert(t == std::numeric_limits<T>::max()); - } -} - -template <class T> -void -test_float() -{ - { - std::string s = std::to_string(T(0)); - assert(s.size() == 8); - assert(s[s.size()] == 0); - assert(s == "0.000000"); - } - { - std::string s = std::to_string(T(12345)); - assert(s.size() == 12); - assert(s[s.size()] == 0); - assert(s == "12345.000000"); - } - { - std::string s = std::to_string(T(-12345)); - assert(s.size() == 13); - assert(s[s.size()] == 0); - assert(s == "-12345.000000"); - } -} - -int main() -{ - test_signed<int>(); - test_signed<long>(); - test_signed<long long>(); - test_unsigned<unsigned>(); - test_unsigned<unsigned long>(); - test_unsigned<unsigned long long>(); - test_float<float>(); - test_float<double>(); - test_float<long double>(); -} |
