Skip to content

Commit d5518c6

Browse files
committed
test: avoid non-private member variables in classes (linter)
1 parent 4a06c41 commit d5518c6

File tree

2 files changed

+41
-33
lines changed

2 files changed

+41
-33
lines changed

.clang-tidy

+4-2
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,9 @@ Checks: >
66
-cppcoreguidelines-avoid-const-or-ref-data-members,
77
-cppcoreguidelines-avoid-magic-numbers,
88
-cppcoreguidelines-avoid-non-const-global-variables,
9-
-cppcoreguidelines-non-private-member-variables-in-classes,
109
-cppcoreguidelines-pro-*,
1110
misc-*,
1211
-misc-no-recursion,
13-
-misc-non-private-member-variables-in-classes,
1412
modernize-*,
1513
-modernize-avoid-c-arrays,
1614
-modernize-macro-to-enum,
@@ -25,3 +23,7 @@ CheckOptions:
2523
value: true
2624
- key: cppcoreguidelines-special-member-functions.AllowMissingMoveFunctionsWhenCopyIsDeleted
2725
value: true
26+
- key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
27+
value: true
28+
- key: misc-non-private-member-variables-in-classes.IgnorePublicMemberVariables
29+
value: true

test/entt/meta/meta_context.cpp

+37-31
Original file line numberDiff line numberDiff line change
@@ -137,55 +137,61 @@ class MetaContext: public ::testing::Test {
137137
entt::meta_reset();
138138
}
139139

140+
[[nodiscard]] const entt::meta_ctx& ctx() const noexcept {
141+
return context;
142+
}
143+
140144
protected:
141145
static constexpr int global_marker = 1;
142146
static constexpr int local_marker = 42;
143147
static constexpr int bucket_value = 99;
144148
static constexpr int prop_value = 3;
149+
150+
private:
145151
entt::meta_ctx context{};
146152
};
147153

148154
TEST_F(MetaContext, Resolve) {
149155
using namespace entt::literals;
150156

151157
ASSERT_TRUE(entt::resolve<clazz>());
152-
ASSERT_TRUE(entt::resolve<clazz>(context));
158+
ASSERT_TRUE(entt::resolve<clazz>(ctx()));
153159

154160
ASSERT_TRUE(entt::resolve<test::empty>());
155-
ASSERT_TRUE(entt::resolve<test::empty>(context));
161+
ASSERT_TRUE(entt::resolve<test::empty>(ctx()));
156162

157163
ASSERT_TRUE(entt::resolve(entt::type_id<clazz>()));
158-
ASSERT_TRUE(entt::resolve(context, entt::type_id<clazz>()));
164+
ASSERT_TRUE(entt::resolve(ctx(), entt::type_id<clazz>()));
159165

160166
ASSERT_FALSE(entt::resolve(entt::type_id<test::empty>()));
161-
ASSERT_TRUE(entt::resolve(context, entt::type_id<test::empty>()));
167+
ASSERT_TRUE(entt::resolve(ctx(), entt::type_id<test::empty>()));
162168

163169
ASSERT_TRUE(entt::resolve("foo"_hs));
164-
ASSERT_FALSE(entt::resolve(context, "foo"_hs));
170+
ASSERT_FALSE(entt::resolve(ctx(), "foo"_hs));
165171

166172
ASSERT_FALSE(entt::resolve("bar"_hs));
167-
ASSERT_TRUE(entt::resolve(context, "bar"_hs));
173+
ASSERT_TRUE(entt::resolve(ctx(), "bar"_hs));
168174

169175
ASSERT_FALSE(entt::resolve("quux"_hs));
170-
ASSERT_TRUE(entt::resolve(context, "quux"_hs));
176+
ASSERT_TRUE(entt::resolve(ctx(), "quux"_hs));
171177

172178
ASSERT_EQ((std::distance(entt::resolve().cbegin(), entt::resolve().cend())), 4);
173-
ASSERT_EQ((std::distance(entt::resolve(context).cbegin(), entt::resolve(context).cend())), 6);
179+
ASSERT_EQ((std::distance(entt::resolve(ctx()).cbegin(), entt::resolve(ctx()).cend())), 6);
174180
}
175181

176182
TEST_F(MetaContext, MetaType) {
177183
using namespace entt::literals;
178184

179185
const auto global = entt::resolve<clazz>();
180-
const auto local = entt::resolve<clazz>(context);
186+
const auto local = entt::resolve<clazz>(ctx());
181187

182188
ASSERT_TRUE(global);
183189
ASSERT_TRUE(local);
184190

185191
ASSERT_NE(global, local);
186192

187193
ASSERT_EQ(global, entt::resolve("foo"_hs));
188-
ASSERT_EQ(local, entt::resolve(context, "bar"_hs));
194+
ASSERT_EQ(local, entt::resolve(ctx(), "bar"_hs));
189195

190196
ASSERT_EQ(global.id(), "foo"_hs);
191197
ASSERT_EQ(local.id(), "bar"_hs);
@@ -207,22 +213,22 @@ TEST_F(MetaContext, MetaType) {
207213

208214
TEST_F(MetaContext, MetaBase) {
209215
const auto global = entt::resolve<clazz>();
210-
const auto local = entt::resolve<clazz>(context);
216+
const auto local = entt::resolve<clazz>(ctx());
211217

212218
ASSERT_EQ((std::distance(global.base().cbegin(), global.base().cend())), 0);
213219
ASSERT_EQ((std::distance(local.base().cbegin(), local.base().cend())), 1);
214220

215221
ASSERT_EQ(local.base().cbegin()->second.info(), entt::type_id<base>());
216222

217223
ASSERT_FALSE(entt::resolve(entt::type_id<base>()));
218-
ASSERT_TRUE(entt::resolve(context, entt::type_id<base>()));
224+
ASSERT_TRUE(entt::resolve(ctx(), entt::type_id<base>()));
219225
}
220226

221227
TEST_F(MetaContext, MetaData) {
222228
using namespace entt::literals;
223229

224230
const auto global = entt::resolve<clazz>();
225-
const auto local = entt::resolve<clazz>(context);
231+
const auto local = entt::resolve<clazz>(ctx());
226232

227233
ASSERT_TRUE(global.data("value"_hs));
228234
ASSERT_TRUE(local.data("value"_hs));
@@ -257,7 +263,7 @@ TEST_F(MetaContext, MetaFunc) {
257263
using namespace entt::literals;
258264

259265
const auto global = entt::resolve<clazz>();
260-
const auto local = entt::resolve<clazz>(context);
266+
const auto local = entt::resolve<clazz>(ctx());
261267

262268
ASSERT_TRUE(global.func("func"_hs));
263269
ASSERT_TRUE(local.func("func"_hs));
@@ -288,7 +294,7 @@ TEST_F(MetaContext, MetaFunc) {
288294

289295
TEST_F(MetaContext, MetaCtor) {
290296
const auto global = entt::resolve<clazz>();
291-
const auto local = entt::resolve<clazz>(context);
297+
const auto local = entt::resolve<clazz>(ctx());
292298

293299
auto any = global.construct();
294300
auto other = local.construct();
@@ -320,7 +326,7 @@ TEST_F(MetaContext, MetaConv) {
320326
argument value{2};
321327

322328
auto global = entt::forward_as_meta(value);
323-
auto local = entt::forward_as_meta(context, value);
329+
auto local = entt::forward_as_meta(ctx(), value);
324330

325331
ASSERT_TRUE(global.allow_cast<int>());
326332
ASSERT_TRUE(local.allow_cast<int>());
@@ -331,7 +337,7 @@ TEST_F(MetaContext, MetaConv) {
331337

332338
TEST_F(MetaContext, MetaDtor) {
333339
auto global = entt::resolve<clazz>().construct();
334-
auto local = entt::resolve<clazz>(context).construct();
340+
auto local = entt::resolve<clazz>(ctx()).construct();
335341

336342
ASSERT_EQ(clazz::bucket, bucket_value);
337343

@@ -348,13 +354,13 @@ TEST_F(MetaContext, MetaProp) {
348354
using namespace entt::literals;
349355

350356
const auto global = entt::resolve<clazz>();
351-
const auto local = entt::resolve<clazz>(context);
357+
const auto local = entt::resolve<clazz>(ctx());
352358

353359
ASSERT_TRUE(global.prop("prop"_hs));
354360
ASSERT_TRUE(local.prop("prop"_hs));
355361

356362
ASSERT_EQ(global.prop("prop"_hs).value().type(), entt::resolve<int>());
357-
ASSERT_EQ(local.prop("prop"_hs).value().type(), entt::resolve<int>(context));
363+
ASSERT_EQ(local.prop("prop"_hs).value().type(), entt::resolve<int>(ctx()));
358364

359365
ASSERT_EQ(global.prop("prop"_hs).value().cast<int>(), prop_value);
360366
ASSERT_EQ(local.prop("prop"_hs).value().cast<int>(), prop_value);
@@ -367,7 +373,7 @@ TEST_F(MetaContext, MetaTemplate) {
367373
using namespace entt::literals;
368374

369375
const auto global = entt::resolve("template"_hs);
370-
const auto local = entt::resolve(context, "template"_hs);
376+
const auto local = entt::resolve(ctx(), "template"_hs);
371377

372378
ASSERT_TRUE(global.is_template_specialization());
373379
ASSERT_TRUE(local.is_template_specialization());
@@ -376,8 +382,8 @@ TEST_F(MetaContext, MetaTemplate) {
376382
ASSERT_EQ(local.template_arity(), 2u);
377383

378384
ASSERT_EQ(global.template_arg(0u), entt::resolve<int>());
379-
ASSERT_EQ(local.template_arg(0u), entt::resolve<int>(context));
380-
ASSERT_EQ(local.template_arg(1u), entt::resolve<char>(context));
385+
ASSERT_EQ(local.template_arg(0u), entt::resolve<int>(ctx()));
386+
ASSERT_EQ(local.template_arg(1u), entt::resolve<char>(ctx()));
381387

382388
ASSERT_EQ(global.template_arg(0u).data("marker"_hs).get({}).cast<int>(), global_marker);
383389
ASSERT_EQ(local.template_arg(0u).data("marker"_hs).get({}).cast<int>(), local_marker);
@@ -389,7 +395,7 @@ TEST_F(MetaContext, MetaPointer) {
389395
int value = 42;
390396

391397
const entt::meta_any global{&value};
392-
const entt::meta_any local{context, &value};
398+
const entt::meta_any local{ctx(), &value};
393399

394400
ASSERT_TRUE(global.type().is_pointer());
395401
ASSERT_TRUE(local.type().is_pointer());
@@ -407,7 +413,7 @@ TEST_F(MetaContext, MetaAssociativeContainer) {
407413
std::unordered_map<int, int> map{{{0, 0}}};
408414

409415
auto global = entt::forward_as_meta(map).as_associative_container();
410-
auto local = entt::forward_as_meta(context, map).as_associative_container();
416+
auto local = entt::forward_as_meta(ctx(), map).as_associative_container();
411417

412418
ASSERT_TRUE(global);
413419
ASSERT_TRUE(local);
@@ -434,7 +440,7 @@ TEST_F(MetaContext, MetaSequenceContainer) {
434440
std::vector<int> vec{0};
435441

436442
auto global = entt::forward_as_meta(vec).as_sequence_container();
437-
auto local = entt::forward_as_meta(context, vec).as_sequence_container();
443+
auto local = entt::forward_as_meta(ctx(), vec).as_sequence_container();
438444

439445
ASSERT_TRUE(global);
440446
ASSERT_TRUE(local);
@@ -453,9 +459,9 @@ TEST_F(MetaContext, MetaAny) {
453459
using namespace entt::literals;
454460

455461
const entt::meta_any global{42};
456-
const entt::meta_any ctx_value{context, 42};
457-
const entt::meta_any in_place{context, std::in_place_type<int>, 42};
458-
entt::meta_any two_step_local{entt::meta_ctx_arg, context};
462+
const entt::meta_any ctx_value{ctx(), 42};
463+
const entt::meta_any in_place{ctx(), std::in_place_type<int>, 42};
464+
entt::meta_any two_step_local{entt::meta_ctx_arg, ctx()};
459465

460466
ASSERT_TRUE(global);
461467
ASSERT_TRUE(ctx_value);
@@ -478,8 +484,8 @@ TEST_F(MetaContext, MetaHandle) {
478484
int value = 42;
479485

480486
entt::meta_handle global{value};
481-
entt::meta_handle ctx_value{context, value};
482-
entt::meta_handle two_step_local{entt::meta_ctx_arg, context};
487+
entt::meta_handle ctx_value{ctx(), value};
488+
entt::meta_handle two_step_local{entt::meta_ctx_arg, ctx()};
483489

484490
ASSERT_TRUE(global);
485491
ASSERT_TRUE(ctx_value);
@@ -498,7 +504,7 @@ TEST_F(MetaContext, ForwardAsMeta) {
498504
using namespace entt::literals;
499505

500506
const auto global = entt::forward_as_meta(42);
501-
const auto local = entt::forward_as_meta(context, 42);
507+
const auto local = entt::forward_as_meta(ctx(), 42);
502508

503509
ASSERT_TRUE(global);
504510
ASSERT_TRUE(local);

0 commit comments

Comments
 (0)