@@ -122,6 +122,31 @@ TEST_P(umfIpcTest, GetIPCHandleSize) {
122
122
EXPECT_GT (size, 0 );
123
123
}
124
124
125
+ TEST_P (umfIpcTest, GetIPCHandleInvalidArgs) {
126
+ constexpr size_t SIZE = 100 ;
127
+ umf_ipc_handle_t ipcHandle = nullptr ;
128
+ size_t handleSize = 0 ;
129
+ umf_result_t ret = umfGetIPCHandle (nullptr , &ipcHandle, &handleSize);
130
+ EXPECT_EQ (ret, UMF_RESULT_ERROR_INVALID_ARGUMENT);
131
+
132
+ void *ptr = (void *)0xBAD ;
133
+ ret = umfGetIPCHandle (ptr, &ipcHandle, &handleSize);
134
+ EXPECT_EQ (ret, UMF_RESULT_ERROR_INVALID_ARGUMENT);
135
+
136
+ umf::pool_unique_handle_t pool = makePool ();
137
+ ptr = umfPoolMalloc (pool.get (), SIZE);
138
+ EXPECT_NE (ptr, nullptr );
139
+
140
+ ret = umfGetIPCHandle (ptr, nullptr , &handleSize);
141
+ EXPECT_EQ (ret, UMF_RESULT_ERROR_INVALID_ARGUMENT);
142
+
143
+ ret = umfGetIPCHandle (ptr, &ipcHandle, nullptr );
144
+ EXPECT_EQ (ret, UMF_RESULT_ERROR_INVALID_ARGUMENT);
145
+
146
+ ret = umfFree (ptr);
147
+ EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
148
+ }
149
+
125
150
TEST_P (umfIpcTest, BasicFlow) {
126
151
constexpr size_t SIZE = 100 ;
127
152
std::vector<int > expected_data (SIZE);
0 commit comments