ReactOS 0.4.15-dev-7842-g558ab78
RotateTest Class Reference
Inheritance diagram for RotateTest:
Collaboration diagram for RotateTest:

Protected Member Functions

void rotate0 ()
 
void rotate1 ()
 
void rotcopy0 ()
 
void rotcopy1 ()
 

Private Member Functions

 CPPUNIT_TEST_SUITE (RotateTest)
 
 CPPUNIT_TEST (rotate0)
 
 CPPUNIT_TEST (rotate1)
 
 CPPUNIT_TEST (rotcopy0)
 
 CPPUNIT_TEST (rotcopy1)
 
 CPPUNIT_TEST_SUITE_END ()
 

Detailed Description

Definition at line 15 of file rotate_test.cpp.

Member Function Documentation

◆ CPPUNIT_TEST() [1/4]

RotateTest::CPPUNIT_TEST ( rotate0  )
private

◆ CPPUNIT_TEST() [2/4]

RotateTest::CPPUNIT_TEST ( rotate1  )
private

◆ CPPUNIT_TEST() [3/4]

RotateTest::CPPUNIT_TEST ( rotcopy0  )
private

◆ CPPUNIT_TEST() [4/4]

RotateTest::CPPUNIT_TEST ( rotcopy1  )
private

◆ CPPUNIT_TEST_SUITE()

RotateTest::CPPUNIT_TEST_SUITE ( RotateTest  )
private

◆ CPPUNIT_TEST_SUITE_END()

RotateTest::CPPUNIT_TEST_SUITE_END ( )
private

◆ rotate0()

void RotateTest::rotate0 ( )
protected

Definition at line 36 of file rotate_test.cpp.

37{
38 int numbers[6] = { 0, 1, 2, 3, 4, 5 };
39 // 3 4 5 0 1 2
40 rotate((int*)numbers, numbers + 3, numbers + 6);
41 CPPUNIT_ASSERT(numbers[0]==3);
42 CPPUNIT_ASSERT(numbers[1]==4);
43 CPPUNIT_ASSERT(numbers[2]==5);
44 CPPUNIT_ASSERT(numbers[3]==0);
45 CPPUNIT_ASSERT(numbers[4]==1);
46 CPPUNIT_ASSERT(numbers[5]==2);
47}
_STLP_MOVE_TO_STD_NAMESPACE void rotate(_ForwardIter __first, _ForwardIter __middle, _ForwardIter __last)
Definition: _algo.c:519
#define CPPUNIT_ASSERT(X)
Definition: cppunit_mini.h:200

◆ rotate1()

void RotateTest::rotate1 ( )
protected

Definition at line 48 of file rotate_test.cpp.

49{
50 vector <int> v1(10);
51 __iota(v1.begin(), v1.end(), 0);
52
53 rotate(v1.begin(), v1.begin()+1, v1.end());
54 CPPUNIT_ASSERT(v1[0]==1);
55 CPPUNIT_ASSERT(v1[1]==2);
56 CPPUNIT_ASSERT(v1[2]==3);
57 CPPUNIT_ASSERT(v1[3]==4);
58 CPPUNIT_ASSERT(v1[4]==5);
59 CPPUNIT_ASSERT(v1[5]==6);
60 CPPUNIT_ASSERT(v1[6]==7);
61 CPPUNIT_ASSERT(v1[7]==8);
62 CPPUNIT_ASSERT(v1[8]==9);
63 CPPUNIT_ASSERT(v1[9]==0);
64
65 rotate(v1.begin(), v1.begin()+2, v1.end());
66 CPPUNIT_ASSERT(v1[0]==3);
67 CPPUNIT_ASSERT(v1[1]==4);
68 CPPUNIT_ASSERT(v1[2]==5);
69 CPPUNIT_ASSERT(v1[3]==6);
70 CPPUNIT_ASSERT(v1[4]==7);
71 CPPUNIT_ASSERT(v1[5]==8);
72 CPPUNIT_ASSERT(v1[6]==9);
73 CPPUNIT_ASSERT(v1[7]==0);
74 CPPUNIT_ASSERT(v1[8]==1);
75 CPPUNIT_ASSERT(v1[9]==2);
76
77 rotate(v1.begin(), v1.begin()+7, v1.end());
78 CPPUNIT_ASSERT(v1[0]==0);
79 CPPUNIT_ASSERT(v1[1]==1);
80 CPPUNIT_ASSERT(v1[2]==2);
81 CPPUNIT_ASSERT(v1[3]==3);
82 CPPUNIT_ASSERT(v1[4]==4);
83 CPPUNIT_ASSERT(v1[5]==5);
84 CPPUNIT_ASSERT(v1[6]==6);
85 CPPUNIT_ASSERT(v1[7]==7);
86 CPPUNIT_ASSERT(v1[8]==8);
87 CPPUNIT_ASSERT(v1[9]==9);
88
89}
GLfloat GLfloat v1
Definition: glext.h:6062
void __iota(_It __first, _It __last, _Tp __val)
Definition: iota.h:8

◆ rotcopy0()

void RotateTest::rotcopy0 ( )
protected

Definition at line 90 of file rotate_test.cpp.

91{
92 int numbers[6] = { 0, 1, 2, 3, 4, 5 };
93
94 int result[6];
95 rotate_copy((int*)numbers, (int*)numbers + 3, (int*)numbers + 6, (int*)result);
96 // 3 4 5 0 1 2
100 CPPUNIT_ASSERT(result[3]==0);
101 CPPUNIT_ASSERT(result[4]==1);
102 CPPUNIT_ASSERT(result[5]==2);
103}
_OutputIter rotate_copy(_ForwardIter __first, _ForwardIter __middle, _ForwardIter __last, _OutputIter __result)
Definition: _algo.h:355
GLuint64EXT * result
Definition: glext.h:11304

◆ rotcopy1()

void RotateTest::rotcopy1 ( )
protected

Definition at line 104 of file rotate_test.cpp.

105{
106 vector <int> v1(10);
107 __iota(v1.begin(), v1.end(), 0);
108 vector <int> v2(v1.size());
109
110 rotate_copy(v1.begin(), v1.begin()+1, v1.end(), v2.begin());
111 CPPUNIT_ASSERT(v2[0]==1);
112 CPPUNIT_ASSERT(v2[1]==2);
113 CPPUNIT_ASSERT(v2[2]==3);
114 CPPUNIT_ASSERT(v2[3]==4);
115 CPPUNIT_ASSERT(v2[4]==5);
116 CPPUNIT_ASSERT(v2[5]==6);
117 CPPUNIT_ASSERT(v2[6]==7);
118 CPPUNIT_ASSERT(v2[7]==8);
119 CPPUNIT_ASSERT(v2[8]==9);
120 CPPUNIT_ASSERT(v2[9]==0);
121
122 rotate_copy(v1.begin(), v1.begin()+3, v1.end(), v2.begin());
123 CPPUNIT_ASSERT(v2[0]==3);
124 CPPUNIT_ASSERT(v2[1]==4);
125 CPPUNIT_ASSERT(v2[2]==5);
126 CPPUNIT_ASSERT(v2[3]==6);
127 CPPUNIT_ASSERT(v2[4]==7);
128 CPPUNIT_ASSERT(v2[5]==8);
129 CPPUNIT_ASSERT(v2[6]==9);
130 CPPUNIT_ASSERT(v2[7]==0);
131 CPPUNIT_ASSERT(v2[8]==1);
132 CPPUNIT_ASSERT(v2[9]==2);
133}
GLfloat GLfloat GLfloat v2
Definition: glext.h:6063

The documentation for this class was generated from the following file: