Sha256: a3ec86e328d430f6159acb81782ef10f27ab8a97488e7d1f71521e64a3bfe1c3

Contents?: true

Size: 1.57 KB

Versions: 16

Compression:

Stored size: 1.57 KB

Contents

#include <boost/nowide/iostream.hpp>

#include "test.hpp"


int main(int argc,char **argv)
{
    
    char const *example = "Basic letters: \xd7\xa9-\xd0\xbc-\xce\xbd\n"
                          "East Asian Letters: \xe5\x92\x8c\xe5\xb9\xb3\n"
                          "Non-BMP letters: \xf0\x9d\x84\x9e\n";

    try {
        int maxval = 15000;
        for(int i=0;i<maxval;i++) {
            char c = i % 96 + ' ';
            TEST(boost::nowide::cin.putback(c));
        }
        for(int i=maxval-1;i>=0;i--) {
            int c = i % 96 + ' ';
            TEST(boost::nowide::cin.get() == c);
        }
        std::string v1,v2;
        boost::nowide::cout << "Normal I/O:" << std::endl;
        boost::nowide::cout << example << std::endl;
        boost::nowide::cerr << example << std::endl;
        
        boost::nowide::cout << "Flushing each character:" << std::endl;
        
        for(char const *s=example;*s;s++) {
            boost::nowide::cout << *s << std::flush;
            TEST(boost::nowide::cout);
        }
        
        TEST(boost::nowide::cout);
        TEST(boost::nowide::cerr);
        if(argc==2 && argv[1]==std::string("-i")) {
            boost::nowide::cin  >> v1 >> v2;
            TEST(boost::nowide::cin);
            boost::nowide::cout << "First:  "<< v1 << std::endl;
            boost::nowide::cout << "Second: "<< v2 << std::endl;
            TEST(boost::nowide::cout);
        }
    }
    catch(std::exception const &e) {
        std::cerr << "Fail: " << e.what() << std::endl;
        return 1;
    }
    std::cout <<"Ok" << std::endl;
    return 0;

}

Version data entries

16 entries across 16 versions & 2 rubygems

Version Path
facter-3.12.2.cfacter.20181217 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.12.1.cfacter.20181031 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.11.6.cfacter.20181031 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.12.1.cfacter.20181023 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.11.5.cfacter.20181022 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.12.0.cfacter.20181004 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.12.0.cfacter.20181001 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.12.0.cfacter.20180918 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.11.4.cfacter.20180821 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.11.3.cfacter.20180716 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.11.2.cfacter.20180612 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.9.6.cfacter.20180612 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.11.2.cfacter.20180606 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.9.6.cfacter.20180606 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
facter-3.11.0.cfacter.20180319 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp
cfacter-3.11.0.rc.20180314 ext/facter/leatherman/vendor/nowide/test/test_iostream.cpp