1// 2005-12-12 Paolo Carlini <pcarlini@suse.de> 2// 3// Copyright (C) 2005-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// 23.2.1.1 deque constructors, copy, and assignment 21 22#include <deque> 23#include <cstdlib> 24#include <testsuite_hooks.h> 25 26void test01() 27{ 28 bool test __attribute__((unused)) = true; 29 using namespace std; 30 31 int data3[1000]; 32 fill(data3, data3 + 1000, 3); 33 34 int data5[1000]; 35 fill(data5, data5 + 1000, 5); 36 37 for (deque<int>::size_type i = 0; i < 1000; ++i) 38 { 39 deque<int> d(rand() % 500, 1); 40 d.assign(i, i % 2 ? 3 : 5); 41 42 VERIFY( d.size() == i ); 43 VERIFY( equal(d.begin(), d.end(), i % 2 ? data3 : data5) ); 44 } 45} 46 47int main() 48{ 49 test01(); 50 return 0; 51} 52