aboutsummaryrefslogtreecommitdiff
path: root/test/get-current.cc
blob: c9bc1b99ed25605b268bd87ec831c6cc109008c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <gtest/gtest.h>

#include <cpuinfo.h>


TEST(CURRENT_PROCESSOR, not_null) {
	ASSERT_TRUE(cpuinfo_get_current_processor());
}

TEST(CURRENT_PROCESSOR, within_bounds) {
	const struct cpuinfo_processor* current_processor = cpuinfo_get_current_processor();
	const struct cpuinfo_processor* processors_begin = cpuinfo_get_processors();
	const struct cpuinfo_processor* processors_end = processors_begin + cpuinfo_get_processors_count();
	ASSERT_GE(current_processor, processors_begin);
	ASSERT_LT(current_processor, processors_end);
}

TEST(CURRENT_CORE, not_null) {
	ASSERT_TRUE(cpuinfo_get_current_core());
}

TEST(CURRENT_CORE, within_bounds) {
	const struct cpuinfo_core* current_core = cpuinfo_get_current_core();
	const struct cpuinfo_core* cores_begin = cpuinfo_get_cores();
	const struct cpuinfo_core* cores_end = cores_begin + cpuinfo_get_cores_count();
	ASSERT_GE(current_core, cores_begin);
	ASSERT_LT(current_core, cores_end);
}

int main(int argc, char* argv[]) {
	cpuinfo_initialize();
	::testing::InitGoogleTest(&argc, argv);
	return RUN_ALL_TESTS();
}