xref: /xnu-12377.61.12/tests/readonly_proc_tests.c (revision 4d495c6e23c53686cf65f45067f79024cf5dcee8)
1*4d495c6eSApple OSS Distributions #include <darwintest.h>
2*4d495c6eSApple OSS Distributions #include <sys/sysctl.h>
3*4d495c6eSApple OSS Distributions 
4*4d495c6eSApple OSS Distributions T_GLOBAL_META(
5*4d495c6eSApple OSS Distributions 	T_META_NAMESPACE("xnu.bsd"),
6*4d495c6eSApple OSS Distributions 	T_META_RADAR_COMPONENT_NAME("xnu"),
7*4d495c6eSApple OSS Distributions 	T_META_RADAR_COMPONENT_VERSION("bsd"),
8*4d495c6eSApple OSS Distributions 	T_META_OWNER("chrisjd")
9*4d495c6eSApple OSS Distributions 	);
10*4d495c6eSApple OSS Distributions 
11*4d495c6eSApple OSS Distributions T_DECL(readonly_proc_tests, "invoke the read-only proc unit test",
12*4d495c6eSApple OSS Distributions     T_META_ASROOT(true), T_META_REQUIRES_SYSCTL_EQ("kern.development", 1))
13*4d495c6eSApple OSS Distributions {
14*4d495c6eSApple OSS Distributions 	int64_t result = 0;
15*4d495c6eSApple OSS Distributions 	int64_t value = 0;
16*4d495c6eSApple OSS Distributions 	size_t s = sizeof(value);
17*4d495c6eSApple OSS Distributions 	int ret;
18*4d495c6eSApple OSS Distributions 	ret = sysctlbyname("debug.test.readonly_proc_test", &result, &s, &value, sizeof(value));
19*4d495c6eSApple OSS Distributions 	T_ASSERT_POSIX_SUCCESS(ret, "sysctlbyname(\"debug.test.readonly_proc_test\"");
20*4d495c6eSApple OSS Distributions 	T_EXPECT_EQ(1ull, result, "run readonly proc test");
21*4d495c6eSApple OSS Distributions }
22