From 6758451e0878c8384db5e7a1f6cb3f5b14d8c0ba Mon Sep 17 00:00:00 2001 From: Sung-hun Kim Date: Mon, 29 Aug 2022 15:41:39 +0900 Subject: [PATCH] tests: resource-monitor-tests: Add a test for pass_resource_monitor_set_resource_flag Add a test for newly added operation which is used for distinguishing PRIVATE and PUBLIC resources. Change-Id: I56d6eed1e68a292aee8075041d402bc7a8a6bb6c Signed-off-by: Sung-hun Kim --- .../resource-monitor-tests.cpp | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/tests/integration-test/resource-monitor-tests.cpp b/tests/integration-test/resource-monitor-tests.cpp index 62f465f..8d62db8 100644 --- a/tests/integration-test/resource-monitor-tests.cpp +++ b/tests/integration-test/resource-monitor-tests.cpp @@ -165,6 +165,34 @@ TEST_F(ResourceMonitorTest, EXPECT_EQ(ret, 0); } +TEST_F(ResourceMonitorTest, + pass_resource_monitor_set_resource_flag_invalid) +{ + int ret; + int res_type = RESOURCE_TYPE_PROCESS; /* RESOURCE_TYPE_PROCESS has private visibility */ + u_int64_t res_attr_id = PROCESS_ATTR_CPU_UTIL; + u_int64_t ctrl_id = PROCESS_CTRL_TGID; + + int id = pass_resource_monitor_init(); + EXPECT_TRUE(id > 0); + + int res_id = pass_resource_monitor_create_resource(id, res_type); + ret = pass_resource_monitor_set_resource_flag(id, res_id, RESOURCE_FLAG_PUBLIC); + EXPECT_EQ(ret, 0); + + ret = pass_resource_monitor_set_resource_ctrl(id, res_id, ctrl_id, getpid()); + EXPECT_EQ(ret, 0); + + ret = pass_resource_monitor_set_resource_attr(id, res_id, res_attr_id); + EXPECT_EQ(ret, -EPERM); + + ret = pass_resource_monitor_delete_resource(id, res_id); + EXPECT_EQ(ret, 0); + + ret = pass_resource_monitor_exit(id); + EXPECT_EQ(ret, 0); +} + struct resource_attr_info { u_int64_t attr_id; int attr_type; -- 2.34.1