ReactOS
0.4.16-dev-2646-g1219156
reviter_test.cpp
Go to the documentation of this file.
1
#include <vector>
2
#include <list>
3
#include <algorithm>
4
5
#include "
cppunit/cppunit_proxy.h
"
6
7
#if !defined (STLPORT) || defined(_STLP_USE_NAMESPACES)
8
using namespace
std
;
9
#endif
10
11
//
12
// TestCase class
13
//
14
class
ReviterTest
:
public
CPPUNIT_NS::TestCase
15
{
16
CPPUNIT_TEST_SUITE
(
ReviterTest
);
17
CPPUNIT_TEST
(
reviter1
);
18
CPPUNIT_TEST
(
reviter2
);
19
CPPUNIT_TEST
(
revbit1
);
20
CPPUNIT_TEST_SUITE_END
();
21
22
protected
:
23
void
reviter1
();
24
void
reviter2
();
25
void
revbit1
();
26
};
27
28
CPPUNIT_TEST_SUITE_REGISTRATION
(
ReviterTest
);
29
30
//
31
// tests implementation
32
//
33
void
ReviterTest::reviter1
()
34
{
35
int
array
[] = { 1, 5, 2, 3 };
36
37
vector<int>
v
(
array
,
array
+ 4);
38
typedef
vector<int>::reverse_iterator reviter;
39
reviter
r
(
v
.rend());
40
r
--;
41
42
CPPUNIT_ASSERT
(*
r
-- == 1);
43
CPPUNIT_ASSERT
(*
r
-- == 5);
44
CPPUNIT_ASSERT
(*
r
-- == 2);
45
CPPUNIT_ASSERT
(*
r
== 3);
46
CPPUNIT_ASSERT
(
r
==
v
.rbegin());
47
}
48
void
ReviterTest::reviter2
()
49
{
50
int
array
[] = { 1, 5, 2, 3 };
51
52
vector<int>
v
(
array
,
array
+ 4);
53
vector<int>::reverse_iterator
r
;
54
r
=
v
.rbegin();
55
CPPUNIT_ASSERT
(*
r
++ == 3);
56
CPPUNIT_ASSERT
(*
r
++ == 2);
57
CPPUNIT_ASSERT
(*
r
++ == 5);
58
CPPUNIT_ASSERT
(*
r
++ == 1);
59
CPPUNIT_ASSERT
(
r
==
v
.rend());
60
}
61
void
ReviterTest::revbit1
()
62
{
63
int
array
[] = { 1, 5, 2, 3 };
64
65
list<int>
v
(
array
,
array
+ 4);
66
list<int>::reverse_iterator
r
(
v
.rbegin());
67
CPPUNIT_ASSERT
(*
r
++ == 3);
68
CPPUNIT_ASSERT
(*
r
++ == 2);
69
CPPUNIT_ASSERT
(*
r
++ == 5);
70
CPPUNIT_ASSERT
(*
r
++ == 1);
71
CPPUNIT_ASSERT
(
r
==
v
.rend());
72
}
ReviterTest
Definition:
reviter_test.cpp:15
ReviterTest::reviter1
void reviter1()
Definition:
reviter_test.cpp:33
ReviterTest::reviter2
void reviter2()
Definition:
reviter_test.cpp:48
ReviterTest::CPPUNIT_TEST
CPPUNIT_TEST(revbit1)
ReviterTest::CPPUNIT_TEST
CPPUNIT_TEST(reviter1)
ReviterTest::CPPUNIT_TEST_SUITE_END
CPPUNIT_TEST_SUITE_END()
ReviterTest::CPPUNIT_TEST
CPPUNIT_TEST(reviter2)
ReviterTest::revbit1
void revbit1()
Definition:
reviter_test.cpp:61
ReviterTest::CPPUNIT_TEST_SUITE
CPPUNIT_TEST_SUITE(ReviterTest)
list
Definition:
list.h:37
CPPUNIT_TEST_SUITE_REGISTRATION
#define CPPUNIT_TEST_SUITE_REGISTRATION(X)
Definition:
cppunit_mini.h:193
CPPUNIT_ASSERT
#define CPPUNIT_ASSERT(X)
Definition:
cppunit_mini.h:200
cppunit_proxy.h
v
const GLdouble * v
Definition:
gl.h:2040
r
GLdouble GLdouble GLdouble r
Definition:
gl.h:2055
std
Definition:
features.h:417
array
Definition:
undname.c:54
sdk
lib
3rdparty
stlport
test
unit
reviter_test.cpp
Generated on Fri Apr 24 2026 06:15:31 for ReactOS by
1.9.6