1// Copyright (C) 2005, 2009 Free Software Foundation, Inc. 2// 3// This file is part of the GNU ISO C++ Library. This library is free 4// software; you can redistribute it and/or modify it under the 5// terms of the GNU General Public License as published by the 6// Free Software Foundation; either version 3, or (at your option) 7// any later version. 8 9// This library is distributed in the hope that it will be useful, 10// but WITHOUT ANY WARRANTY; without even the implied warranty of 11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12// GNU General Public License for more details. 13 14// You should have received a copy of the GNU General Public License along 15// with this library; see the file COPYING3. If not see 16// <http://www.gnu.org/licenses/>. 17 18#include <algorithm> 19#include <testsuite_hooks.h> 20#include <testsuite_iterators.h> 21 22using __gnu_test::test_container; 23using __gnu_test::input_iterator_wrapper; 24 25typedef test_container<int, input_iterator_wrapper> Container; 26int array1[] = {0, 1}; 27int array2[] = {1, 0}; 28int array3[] = {1, 0}; 29 30void test1() 31{ 32 Container con1(array1, array1); 33 Container con2(array2, array2); 34 VERIFY( std::equal(con1.begin(), con1.end(), con2.begin()) ); 35} 36 37void test2() 38{ 39 Container con1(array1, array1 + 2); 40 Container con2(array2, array2 + 2); 41 VERIFY( !std::equal(con2.begin(), con2.end(), con1.begin()) ); 42} 43 44void test3() 45{ 46 Container con1(array1, array1 + 2); 47 Container con2(array2, array2 + 2); 48 VERIFY( !std::equal(con2.begin(), con2.end(), con1.begin()) ); 49} 50 51void test4() 52{ 53 Container con1(array1, array1 + 2); 54 Container con2(array2, array2 + 2); 55 VERIFY( !std::equal(con1.begin(), con1.end(), con2.begin()) ); 56} 57 58void test5() 59{ 60 Container con3(array3, array3 + 2); 61 Container con2(array2, array2 + 2); 62 VERIFY( std::equal(con3.begin(), con3.end(), con2.begin()) ); 63} 64 65int main() 66{ 67 test1(); 68 test2(); 69 test3(); 70 test4(); 71 test5(); 72} 73