OSDN Git Service

2005-08-17 Kelley Cook <kcook@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / testsuite / 21_strings / basic_string / replace / wchar_t / 6.cc
1 // 2004-01-26  Paolo Carlini  <pcarlini@suse.de>
2
3 // Copyright (C) 2004 Free Software Foundation, Inc.
4 //
5 // This file is part of the GNU ISO C++ Library.  This library is free
6 // software; you can redistribute it and/or modify it under the
7 // terms of the GNU General Public License as published by the
8 // Free Software Foundation; either version 2, or (at your option)
9 // any later version.
10
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 // GNU General Public License for more details.
15
16 // You should have received a copy of the GNU General Public License along
17 // with this library; see the file COPYING.  If not, write to the Free
18 // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
19 // USA.
20
21 // 21.3.5.6 basic_string::replace
22
23 #include <string>
24 #include <testsuite_hooks.h>
25
26 void test01()
27 {
28   bool test __attribute__((unused)) = true;
29
30   std::wstring str01(L"Valle Del Salto");
31   str01.replace(0, 5, str01.data() + 10, 5);
32   VERIFY( str01 == L"Salto Del Salto" );
33   
34   std::wstring str02(L"Colle di Val d'Elsa");
35   str02.replace(0, 9, str02.data() + 10, 0);
36   VERIFY( str02 == L"Val d'Elsa" );
37
38   std::wstring str03(L"Novi Ligure");
39   str03.replace(11, 0, str03.data() + 4, 7);
40   VERIFY( str03 == L"Novi Ligure Ligure");
41
42   std::wstring str04(L"Trebisacce");
43   str04.replace(3, 4, str04.data(), 0);
44   VERIFY( str04 == L"Trecce" );
45
46   std::wstring str05(L"Altopiano della Sila");
47   str05.replace(1, 18, str05.data() + 19, 1);
48   VERIFY( str05 == L"Aaa" );
49 }
50
51 int main()
52 {
53   test01();
54   return 0;
55 }