From 0c0bac932e3e7ee73a9fc3b6851cb40c272b49c3 Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Thu, 28 Mar 2002 21:25:25 +0100 Subject: [PATCH] 2002-03-28 Paolo Carlini * testsuite/24_iterators/istream_iterator.cc (test02): New tests. From-SVN: r51527 --- libstdc++-v3/ChangeLog | 5 +++ .../24_iterators/istream_iterator.cc | 36 +++++++++++++++++++ 2 files changed, 41 insertions(+) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 5cf5af9d3ef..158c5c072a9 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2002-03-28 Paolo Carlini + + * testsuite/24_iterators/istream_iterator.cc + (test02): New tests. + 2002-03-28 Ulrich Weigand Paolo Carlini diff --git a/libstdc++-v3/testsuite/24_iterators/istream_iterator.cc b/libstdc++-v3/testsuite/24_iterators/istream_iterator.cc index 1a2c7fcbc01..ce41ee67ec7 100644 --- a/libstdc++-v3/testsuite/24_iterators/istream_iterator.cc +++ b/libstdc++-v3/testsuite/24_iterators/istream_iterator.cc @@ -21,6 +21,8 @@ // 24.5.1 Template class istream_iterator #include +#include +#include void test01() { @@ -48,8 +50,42 @@ void test01() // Instantiate template class std::istream_iterator; +void test02() +{ + using namespace std; + + string st("R.Rorty"); + + string re_01, re_02, re_03; + re_02 = ",H.Putnam"; + re_03 = "D.Dennett,xxx,H.Putnam"; + + stringbuf sb_01(st); + istream is_01(&sb_01); + istream_iterator inb_01(is_01); + istream_iterator ine_01; + re_01.assign(inb_01, ine_01); + VERIFY( re_01 == "R.Rorty" ); + + stringbuf sb_02(st); + istream is_02(&sb_02); + istream_iterator inb_02(is_02); + istream_iterator ine_02; + re_02.insert(re_02.begin(), inb_02, ine_02); + VERIFY( re_02 == "R.Rorty,H.Putnam" ); + + stringbuf sb_03(st); + istream is_03(&sb_03); + istream_iterator inb_03(is_03); + istream_iterator ine_03; + re_03.replace(re_03.begin() + 10, re_03.begin() + 13, + inb_03, ine_03); + VERIFY( re_03 == "D.Dennett,R.Rorty,H.Putnam" ); +} + int main() { test01(); + test02(); return 0; }