fill_test.cpp revision e46c9386c4f79aa40185f79a19fc5b2a7ef528b3
1#include <vector>
2#include <algorithm>
3
4#include "cppunit/cppunit_proxy.h"
5
6#if !defined (STLPORT) || defined(_STLP_USE_NAMESPACES)
7using namespace std;
8#endif
9
10//
11// TestCase class
12//
13class FillTest : public CPPUNIT_NS::TestCase
14{
15  CPPUNIT_TEST_SUITE(FillTest);
16  CPPUNIT_TEST(fill1);
17  CPPUNIT_TEST(filln1);
18  CPPUNIT_TEST_SUITE_END();
19
20protected:
21  void fill1();
22  void filln1();
23};
24
25CPPUNIT_TEST_SUITE_REGISTRATION(FillTest);
26
27//
28// tests implementation
29//
30void FillTest::fill1()
31{
32  vector <int> v(10);
33  fill(v.begin(), v.end(), 42);
34
35  CPPUNIT_ASSERT(v[0]==42);
36  CPPUNIT_ASSERT(v[1]==42);
37  CPPUNIT_ASSERT(v[2]==42);
38  CPPUNIT_ASSERT(v[3]==42);
39  CPPUNIT_ASSERT(v[4]==42);
40  CPPUNIT_ASSERT(v[5]==42);
41  CPPUNIT_ASSERT(v[6]==42);
42  CPPUNIT_ASSERT(v[7]==42);
43  CPPUNIT_ASSERT(v[8]==42);
44  CPPUNIT_ASSERT(v[9]==42);
45}
46void FillTest::filln1()
47{
48  vector <int> v(10);
49  fill_n(v.begin(), v.size(), 42);
50
51  CPPUNIT_ASSERT(v[0]==42);
52  CPPUNIT_ASSERT(v[1]==42);
53  CPPUNIT_ASSERT(v[2]==42);
54  CPPUNIT_ASSERT(v[3]==42);
55  CPPUNIT_ASSERT(v[4]==42);
56  CPPUNIT_ASSERT(v[5]==42);
57  CPPUNIT_ASSERT(v[6]==42);
58  CPPUNIT_ASSERT(v[7]==42);
59  CPPUNIT_ASSERT(v[8]==42);
60  CPPUNIT_ASSERT(v[9]==42);
61}
62