Sacado Package Browser (Single Doxygen Collection)
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
test
GTestSuite
googletest
googletest
test
googletest-shuffle-test_.cc
Go to the documentation of this file.
1
// Copyright 2009, Google Inc.
2
// All rights reserved.
3
//
4
// Redistribution and use in source and binary forms, with or without
5
// modification, are permitted provided that the following conditions are
6
// met:
7
//
8
// * Redistributions of source code must retain the above copyright
9
// notice, this list of conditions and the following disclaimer.
10
// * Redistributions in binary form must reproduce the above
11
// copyright notice, this list of conditions and the following disclaimer
12
// in the documentation and/or other materials provided with the
13
// distribution.
14
// * Neither the name of Google Inc. nor the names of its
15
// contributors may be used to endorse or promote products derived from
16
// this software without specific prior written permission.
17
//
18
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
30
31
// Verifies that test shuffling works.
32
33
#include "
gtest/gtest.h
"
34
35
namespace
{
36
37
using
::
testing::EmptyTestEventListener
;
38
using
::
testing::InitGoogleTest
;
39
using
::
testing::Message
;
40
using
::
testing::Test
;
41
using
::
testing::TestEventListeners
;
42
using
::
testing::TestInfo
;
43
using
::
testing::UnitTest
;
44
45
// The test methods are empty, as the sole purpose of this program is
46
// to print the test names before/after shuffling.
47
48
class
A
:
public
Test
{};
49
TEST_F
(
A
,
A
) {}
50
TEST_F
(
A
,
B
) {}
51
52
TEST
(ADeathTest,
A
) {}
53
TEST
(ADeathTest,
B
) {}
54
TEST
(ADeathTest,
C
) {}
55
56
TEST
(
B
,
A
) {}
57
TEST
(
B
,
B
) {}
58
TEST
(
B
,
C
) {}
59
TEST
(
B
, DISABLED_D) {}
60
TEST
(
B
, DISABLED_E) {}
61
62
TEST
(BDeathTest,
A
) {}
63
TEST
(BDeathTest,
B
) {}
64
65
TEST
(
C
,
A
) {}
66
TEST
(
C
,
B
) {}
67
TEST
(
C
,
C
) {}
68
TEST
(
C
, DISABLED_D) {}
69
70
TEST
(CDeathTest,
A
) {}
71
72
TEST
(DISABLED_D,
A
) {}
73
TEST
(DISABLED_D, DISABLED_B) {}
74
75
// This printer prints the full test names only, starting each test
76
// iteration with a "----" marker.
77
class
TestNamePrinter :
public
EmptyTestEventListener
{
78
public
:
79
void
OnTestIterationStart(
const
UnitTest&
/* unit_test */
,
80
int
/* iteration */
)
override
{
81
printf(
"----\n"
);
82
}
83
84
void
OnTestStart(
const
TestInfo& test_info)
override
{
85
printf(
"%s.%s\n"
, test_info.
test_case_name
(), test_info.
name
());
86
}
87
};
88
89
}
// namespace
90
91
int
main
(
int
argc,
char
**argv) {
92
InitGoogleTest
(&argc, argv);
93
94
// Replaces the default printer with TestNamePrinter, which prints
95
// the test name only.
96
TestEventListeners
& listeners =
UnitTest::GetInstance
()->
listeners
();
97
delete
listeners.
Release
(listeners.
default_result_printer
());
98
listeners.
Append
(
new
TestNamePrinter);
99
100
return
RUN_ALL_TESTS
();
101
}
A
#define A
Definition
Sacado_rad.hpp:572
C
#define C(x)
Definition
Sacado_trad.hpp:2637
main
int main()
Definition
ad_example.cpp:191
EmptyTestEventListener
Definition
gtest.h:1157
TestEventListeners
Definition
gtest.h:1186
TestEventListeners::Release
TestEventListener * Release(TestEventListener *listener)
Definition
gtest.cc:4937
TestEventListeners::Append
void Append(TestEventListener *listener)
Definition
gtest.cc:4930
TestEventListeners::default_result_printer
TestEventListener * default_result_printer() const
Definition
gtest.h:1206
TestInfo::name
const char * name() const
Definition
gtest.h:718
TestInfo::test_case_name
const char * test_case_name() const
Definition
gtest.h:714
Test
Definition
gtest.h:414
UnitTest::GetInstance
static UnitTest * GetInstance()
Definition
gtest.cc:4998
testing::EmptyTestEventListener
Definition
gtest.h:1157
testing::Message
Definition
gtest-message.h:91
testing::TestEventListeners
Definition
gtest.h:1186
testing::TestInfo
Definition
gtest.h:703
testing::Test
Definition
gtest.h:414
testing::UnitTest
Definition
gtest.h:1273
testing::UnitTest::listeners
TestEventListeners & listeners()
Definition
gtest.cc:5129
gtest.h
TEST_F
#define TEST_F(test_fixture, test_name)
Definition
gtest.h:2379
RUN_ALL_TESTS
int RUN_ALL_TESTS() GTEST_MUST_USE_RESULT_
Definition
gtest.h:2484
TEST
#define TEST(test_suite_name, test_name)
Definition
gtest.h:2348
testing::InitGoogleTest
GTEST_API_ void InitGoogleTest(int *argc, char **argv)
Definition
gtest.cc:6527
InitGoogleTest
GTEST_API_ void InitGoogleTest(int *argc, char **argv)
Definition
gtest.cc:6527
B
Definition
ConversionTests.cpp:44
Generated by
1.17.0