Update contrib.
2 #if !defined (STLPORT) || !defined (_STLP_USE_NO_IOSTREAMS)
7 #include "cppunit/cppunit_proxy.h"
9 #if !defined (STLPORT) || defined(_STLP_USE_NAMESPACES)
13 class IoiterTest : public CPPUNIT_NS::TestCase
15 CPPUNIT_TEST_SUITE(IoiterTest);
16 CPPUNIT_TEST(ioiter_test);
17 CPPUNIT_TEST(assign_test);
18 CPPUNIT_TEST(assign2_test);
19 CPPUNIT_TEST_SUITE_END();
27 CPPUNIT_TEST_SUITE_REGISTRATION(IoiterTest);
29 void IoiterTest::ioiter_test()
34 char *strorg = "abcd";
37 string objStr(strorg);
39 istringstream objIStrStrm1(objStr);
40 istringstream objIStrStrm2(objStr);
41 istringstream objIStrStrm3(objStr);
44 string::size_type sz = strlen(strorg);
46 for ( i = 0; i < sz; ++i ) {
50 CPPUNIT_ASSERT( tmp == "abcd" );
52 istreambuf_iterator<char, char_traits<char> > objIStrmbIt1( objIStrStrm1.rdbuf() );
53 istreambuf_iterator<char, char_traits<char> > end;
57 for ( i = 0; i < sz /* objIStrmbIt1 != end */; ++i ) {
61 CPPUNIT_ASSERT( tmp == "abcd" );
65 istreambuf_iterator<char, char_traits<char> > objIStrmbIt2( objIStrStrm2.rdbuf() );
66 for ( i = 0; i < sz; ++i ) {
71 CPPUNIT_ASSERT( tmp == "abcd" );
75 istreambuf_iterator<char, char_traits<char> > objIStrmbIt3( objIStrStrm3.rdbuf() );
77 while ( objIStrmbIt3 != end ) {
81 CPPUNIT_ASSERT( tmp == "abcd" );
84 void IoiterTest::assign_test()
86 stringstream s( "1234567890" );
89 v.assign( istreambuf_iterator<char>(s), istreambuf_iterator<char>() );
90 CPPUNIT_CHECK( v.size() == 10 );
91 if ( v.size() == 10 ) {
92 CPPUNIT_CHECK( v[0] == '1' );
93 CPPUNIT_CHECK( v[9] == '0' );
97 void IoiterTest::assign2_test()
99 stringstream s( "1234567890" );
102 v.assign( istreambuf_iterator<char>(s.rdbuf()), istreambuf_iterator<char>() );
103 CPPUNIT_CHECK( v.size() == 10 );
104 if ( v.size() == 10 ) {
105 CPPUNIT_CHECK( v[0] == '1' );
106 CPPUNIT_CHECK( v[9] == '0' );