1 #include <gtest/gtest.h>
2
3 #include <cpuinfo.h>
4
TEST(CURRENT_PROCESSOR,within_bounds)5 TEST(CURRENT_PROCESSOR, within_bounds) {
6 ASSERT_TRUE(cpuinfo_initialize());
7
8 const struct cpuinfo_processor* current_processor = cpuinfo_get_current_processor();
9 if (current_processor == nullptr) {
10 GTEST_SKIP();
11 }
12
13 const struct cpuinfo_processor* processors_begin = cpuinfo_get_processors();
14 const struct cpuinfo_processor* processors_end = processors_begin + cpuinfo_get_processors_count();
15 ASSERT_GE(current_processor, processors_begin);
16 ASSERT_LT(current_processor, processors_end);
17 }
18
TEST(CURRENT_CORE,within_bounds)19 TEST(CURRENT_CORE, within_bounds) {
20 ASSERT_TRUE(cpuinfo_initialize());
21
22 const struct cpuinfo_core* current_core = cpuinfo_get_current_core();
23 if (current_core == nullptr) {
24 GTEST_SKIP();
25 }
26
27 const struct cpuinfo_core* cores_begin = cpuinfo_get_cores();
28 const struct cpuinfo_core* cores_end = cores_begin + cpuinfo_get_cores_count();
29 ASSERT_GE(current_core, cores_begin);
30 ASSERT_LT(current_core, cores_end);
31 }
32
TEST(CURRENT_UARCH_INDEX,within_bounds)33 TEST(CURRENT_UARCH_INDEX, within_bounds) {
34 ASSERT_TRUE(cpuinfo_initialize());
35
36 ASSERT_LT(cpuinfo_get_current_uarch_index(), cpuinfo_get_uarchs_count());
37 }
38
TEST(CURRENT_UARCH_INDEX_WITH_DEFAULT,within_bounds)39 TEST(CURRENT_UARCH_INDEX_WITH_DEFAULT, within_bounds) {
40 ASSERT_TRUE(cpuinfo_initialize());
41
42 ASSERT_LE(cpuinfo_get_current_uarch_index_with_default(cpuinfo_get_uarchs_count()), cpuinfo_get_uarchs_count());
43 }
44