1// 2004-25-10 Paolo Carlini <pcarlini@suse.de> 2 3// Copyright (C) 2004-2015 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 3, 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 COPYING3. If not see 18// <http://www.gnu.org/licenses/>. 19 20// 21.3.5 string modifiers 21 22#include <string> 23#include <testsuite_hooks.h> 24 25// append(const _CharT* __s, size_type __n) 26// append(const _CharT* __s) 27void 28test02() 29{ 30 bool test __attribute__((unused)) = true; 31 32 using namespace std; 33 34 string one; 35 string two; 36 string three; 37 const char * source = "Written in your eyes"; 38 39 one.append(source); 40 VERIFY( one == "Written in your eyes" ); 41 42 two.append(source, 20); 43 VERIFY( two == "Written in your eyes" ); 44 45 three.append(source, 7); 46 VERIFY( three == "Written" ); 47 48 three.clear(); 49 three.append(source + 8, 2); 50 VERIFY( three == "in" ); 51 52 one.append(one.c_str(), 20); 53 VERIFY( one == "Written in your eyesWritten in your eyes" ); 54 55 two.append(two.c_str() + 16, 4); 56 VERIFY( two == "Written in your eyeseyes" ); 57 58 two.append(two.c_str(), 3); 59 VERIFY( two == "Written in your eyeseyesWri" ); 60} 61 62int main() 63{ 64 test02(); 65 return 0; 66} 67