mirror of
				https://github.com/boostorg/utility.git
				synced 2025-10-26 22:11:46 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			137 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			137 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
| Copyright 2019 Glen Joseph Fernandes
 | |
| (glenjofe@gmail.com)
 | |
| 
 | |
| Distributed under the Boost Software License, Version 1.0.
 | |
| (http://www.boost.org/LICENSE_1_0.txt)
 | |
| */
 | |
| #include <boost/core/lightweight_test.hpp>
 | |
| #include <boost/utility/ostream_string.hpp>
 | |
| #include <sstream>
 | |
| #include <string>
 | |
| 
 | |
| int main()
 | |
| {
 | |
|     {
 | |
|         std::ostringstream os;
 | |
|         os.width(1);
 | |
|         os.fill('.');
 | |
|         os.setf(std::ios_base::left, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, "xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == "xy");
 | |
|     }
 | |
|     {
 | |
|         std::wostringstream os;
 | |
|         os.width(1);
 | |
|         os.fill('.');
 | |
|         os.setf(std::ios_base::left, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, L"xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == L"xy");
 | |
|     }
 | |
|     {
 | |
|         std::ostringstream os;
 | |
|         os.width(1);
 | |
|         os.fill('.');
 | |
|         os.setf(std::ios_base::right, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, "xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == "xy");
 | |
|     }
 | |
|     {
 | |
|         std::wostringstream os;
 | |
|         os.width(1);
 | |
|         os.fill('.');
 | |
|         os.setf(std::ios_base::right, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, L"xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == L"xy");
 | |
|     }
 | |
|     {
 | |
|         std::ostringstream os;
 | |
|         os.width(4);
 | |
|         os.fill('.');
 | |
|         os.setf(std::ios_base::left, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, "xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == "xy..");
 | |
|     }
 | |
|     {
 | |
|         std::wostringstream os;
 | |
|         os.width(4);
 | |
|         os.fill(L'.');
 | |
|         os.setf(std::ios_base::left, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, L"xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == L"xy..");
 | |
|     }
 | |
|     {
 | |
|         std::ostringstream os;
 | |
|         os.width(4);
 | |
|         os.fill('.');
 | |
|         os.setf(std::ios_base::right, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, "xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == "..xy");
 | |
|     }
 | |
|     {
 | |
|         std::wostringstream os;
 | |
|         os.width(4);
 | |
|         os.fill(L'.');
 | |
|         os.setf(std::ios_base::right, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, L"xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == L"..xy");
 | |
|     }
 | |
|     {
 | |
|         std::ostringstream os;
 | |
|         os.width(12);
 | |
|         os.fill('.');
 | |
|         os.setf(std::ios_base::left, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, "xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == "xy..........");
 | |
|     }
 | |
|     {
 | |
|         std::wostringstream os;
 | |
|         os.width(12);
 | |
|         os.fill(L'.');
 | |
|         os.setf(std::ios_base::left, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, L"xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == L"xy..........");
 | |
|     }
 | |
|     {
 | |
|         std::ostringstream os;
 | |
|         os.width(12);
 | |
|         os.fill('.');
 | |
|         os.setf(std::ios_base::right, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, "xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == "..........xy");
 | |
|     }
 | |
|     {
 | |
|         std::wostringstream os;
 | |
|         os.width(12);
 | |
|         os.fill(L'.');
 | |
|         os.setf(std::ios_base::right, std::ios_base::adjustfield);
 | |
|         boost::ostream_string(os, L"xy", 2);
 | |
|         BOOST_TEST(os.good());
 | |
|         BOOST_TEST(os.width() == 0);
 | |
|         BOOST_TEST(os.str() == L"..........xy");
 | |
|     }
 | |
|     return boost::report_errors();
 | |
| }
 |