@@ -42,14 +42,28 @@ bool IsHardenedSlow() {
4242 return hardened;
4343}
4444
45- TEST (HardeningTest, HardeningAssertSlow) {
45+ class HardeningTest : public testing ::Test {
46+ public:
47+ ~HardeningTest () override {
48+ absl::base_internal::SetAbslHardeningEnabled (true );
49+ }
50+ };
51+
52+ class HardeningDeathTest : public testing ::Test {
53+ public:
54+ ~HardeningDeathTest () override {
55+ absl::base_internal::SetAbslHardeningEnabled (true );
56+ }
57+ };
58+
59+ TEST_F (HardeningTest, HardeningAssertSlow) {
4660 absl::base_internal::HardeningAssertSlow (true );
4761 if (!IsHardenedSlow ()) {
4862 absl::base_internal::HardeningAssertSlow (false );
4963 }
5064}
5165
52- TEST (HardeningDeathTest, HardeningAssertSlow) {
66+ TEST_F (HardeningDeathTest, HardeningAssertSlow) {
5367#if GTEST_HAS_DEATH_TEST
5468 if (IsHardenedSlow ()) {
5569 // The underlying mechanism of termination varies, and may include SIGILL
@@ -59,107 +73,114 @@ TEST(HardeningDeathTest, HardeningAssertSlow) {
5973#endif
6074}
6175
62- TEST (HardeningTest, HardeningAssertGT) {
76+ TEST_F (HardeningTest, HardeningAssertGT) {
6377 absl::base_internal::HardeningAssertGT (1 , 0 );
6478}
6579
66- TEST (HardeningDeathTest, HardeningAssertGT) {
80+ TEST_F (HardeningDeathTest, HardeningAssertGT) {
6781#if GTEST_HAS_DEATH_TEST
6882 if (IsHardened ()) {
6983 // The underlying mechanism of termination varies, and may include SIGILL
7084 // or SIGABRT.
85+ absl::base_internal::SetAbslHardeningEnabled (true );
7186 EXPECT_DEATH (absl::base_internal::HardeningAssertGT (1 , 1 ), " " );
7287 EXPECT_DEATH (absl::base_internal::HardeningAssertGT (0 , 1 ), " " );
7388 }
7489#endif
7590}
7691
77- TEST (HardeningTest, HardeningAssertGE) {
92+ TEST_F (HardeningTest, HardeningAssertGE) {
7893 absl::base_internal::HardeningAssertGE (1 , 0 );
7994 absl::base_internal::HardeningAssertGE (1 , 1 );
8095}
8196
82- TEST (HardeningDeathTest, HardeningAssertGE) {
97+ TEST_F (HardeningDeathTest, HardeningAssertGE) {
8398#if GTEST_HAS_DEATH_TEST
8499 if (IsHardened ()) {
85100 // The underlying mechanism of termination varies, and may include SIGILL
86101 // or SIGABRT.
102+ absl::base_internal::SetAbslHardeningEnabled (true );
87103 EXPECT_DEATH (absl::base_internal::HardeningAssertGE (0 , 1 ), " " );
88104 }
89105#endif
90106}
91107
92- TEST (HardeningTest, HardeningAssertLT) {
108+ TEST_F (HardeningTest, HardeningAssertLT) {
93109 absl::base_internal::HardeningAssertLT (0 , 1 );
94110}
95111
96- TEST (HardeningDeathTest, HardeningAssertLT) {
112+ TEST_F (HardeningDeathTest, HardeningAssertLT) {
97113#if GTEST_HAS_DEATH_TEST
98114 if (IsHardened ()) {
99115 // The underlying mechanism of termination varies, and may include SIGILL
100116 // or SIGABRT.
117+ absl::base_internal::SetAbslHardeningEnabled (true );
101118 EXPECT_DEATH (absl::base_internal::HardeningAssertLT (1 , 1 ), " " );
102119 EXPECT_DEATH (absl::base_internal::HardeningAssertLT (1 , 0 ), " " );
103120 }
104121#endif
105122}
106123
107- TEST (HardeningTest, HardeningAssertLE) {
124+ TEST_F (HardeningTest, HardeningAssertLE) {
108125 absl::base_internal::HardeningAssertLE (0 , 1 );
109126 absl::base_internal::HardeningAssertLE (1 , 1 );
110127}
111128
112- TEST (HardeningDeathTest, HardeningAssertLE) {
129+ TEST_F (HardeningDeathTest, HardeningAssertLE) {
113130#if GTEST_HAS_DEATH_TEST
114131 if (IsHardened ()) {
115132 // The underlying mechanism of termination varies, and may include SIGILL
116133 // or SIGABRT.
134+ absl::base_internal::SetAbslHardeningEnabled (true );
117135 EXPECT_DEATH (absl::base_internal::HardeningAssertLE (1 , 0 ), " " );
118136 }
119137#endif
120138}
121139
122- TEST (HardeningTest, HardeningAssertInBounds) {
140+ TEST_F (HardeningTest, HardeningAssertInBounds) {
123141 absl::base_internal::HardeningAssertInBounds (0 , 10 );
124142}
125143
126- TEST (HardeningDeathTest, HardeningAssertInBounds) {
144+ TEST_F (HardeningDeathTest, HardeningAssertInBounds) {
127145#if GTEST_HAS_DEATH_TEST
128146 if (IsHardened ()) {
129147 // The underlying mechanism of termination varies, and may include SIGILL
130148 // or SIGABRT.
149+ absl::base_internal::SetAbslHardeningEnabled (true );
131150 EXPECT_DEATH (absl::base_internal::HardeningAssertInBounds (10 , 10 ), " " );
132151 }
133152#endif
134153}
135154
136- TEST (HardeningTest, HardeningAssertNonEmpty) {
155+ TEST_F (HardeningTest, HardeningAssertNonEmpty) {
137156 std::vector<int > v = {1 };
138157 absl::base_internal::HardeningAssertNonEmpty (v);
139158}
140159
141- TEST (HardeningDeathTest, HardeningAssertNonEmpty) {
160+ TEST_F (HardeningDeathTest, HardeningAssertNonEmpty) {
142161#if GTEST_HAS_DEATH_TEST
143162 if (IsHardened ()) {
144163 // The underlying mechanism of termination varies, and may include SIGILL
145164 // or SIGABRT.
146165 std::vector<int > v = {};
166+ absl::base_internal::SetAbslHardeningEnabled (true );
147167 EXPECT_DEATH (absl::base_internal::HardeningAssertNonEmpty (v), " " );
148168 }
149169#endif
150170}
151171
152- TEST (HardeningTest, HardeningAssertNonNull) {
172+ TEST_F (HardeningTest, HardeningAssertNonNull) {
153173 int x = 1 ;
154174 absl::base_internal::HardeningAssertNonNull (&x);
155175}
156176
157- TEST (HardeningDeathTest, HardeningAssertNonNull) {
177+ TEST_F (HardeningDeathTest, HardeningAssertNonNull) {
158178#if GTEST_HAS_DEATH_TEST
159179 if (IsHardened ()) {
160180 // The underlying mechanism of termination varies, and may include SIGILL
161181 // or SIGABRT.
162182 int *x = nullptr ;
183+ absl::base_internal::SetAbslHardeningEnabled (true );
163184 EXPECT_DEATH (absl::base_internal::HardeningAssertNonNull (x), " " );
164185 }
165186#endif
0 commit comments