5
5
6
6
#include < uur/fixtures.h>
7
7
8
- struct urUSMGetMemAllocInfoTest
8
+ struct urUSMGetMemAllocInfoPoolTest
9
9
: uur::urUSMDeviceAllocTestWithParam<ur_usm_alloc_info_t > {
10
10
void SetUp () override {
11
11
use_pool = getParam () == UR_USM_ALLOC_INFO_POOL;
@@ -14,100 +14,108 @@ struct urUSMGetMemAllocInfoTest
14
14
}
15
15
};
16
16
17
- UUR_TEST_SUITE_P (urUSMGetMemAllocInfoTest,
18
- ::testing::Values (UR_USM_ALLOC_INFO_TYPE,
19
- UR_USM_ALLOC_INFO_BASE_PTR,
20
- UR_USM_ALLOC_INFO_SIZE,
21
- UR_USM_ALLOC_INFO_DEVICE,
22
- UR_USM_ALLOC_INFO_POOL),
17
+ UUR_TEST_SUITE_P (urUSMGetMemAllocInfoPoolTest,
18
+ testing::Values (UR_USM_ALLOC_INFO_POOL),
23
19
uur::deviceTestWithParamPrinter<ur_usm_alloc_info_t>);
24
20
25
- static std::unordered_map<ur_usm_alloc_info_t , size_t > usm_info_size_map = {
26
- {UR_USM_ALLOC_INFO_TYPE, sizeof (ur_usm_type_t )},
27
- {UR_USM_ALLOC_INFO_BASE_PTR, sizeof (void *)},
28
- {UR_USM_ALLOC_INFO_SIZE, sizeof (size_t )},
29
- {UR_USM_ALLOC_INFO_DEVICE, sizeof (ur_device_handle_t )},
30
- {UR_USM_ALLOC_INFO_POOL, sizeof (ur_usm_pool_handle_t )},
31
- };
21
+ TEST_P (urUSMGetMemAllocInfoPoolTest, SuccessPool) {
22
+ size_t size = 0 ;
23
+ auto info_type = UR_USM_ALLOC_INFO_POOL;
24
+ ASSERT_SUCCESS (
25
+ urUSMGetMemAllocInfo (context, ptr, info_type, 0 , nullptr , &size));
26
+ ASSERT_EQ (sizeof (ur_usm_pool_handle_t ), size);
32
27
33
- TEST_P (urUSMGetMemAllocInfoTest, Success) {
28
+ ur_usm_pool_handle_t returned_pool = nullptr ;
29
+ ASSERT_SUCCESS (urUSMGetMemAllocInfo (context, ptr, info_type, size,
30
+ &returned_pool, nullptr ));
31
+
32
+ ASSERT_EQ (returned_pool, pool);
33
+ }
34
+
35
+ using urUSMGetMemAllocInfoTest = uur::urUSMDeviceAllocTest;
36
+ UUR_INSTANTIATE_DEVICE_TEST_SUITE_P (urUSMGetMemAllocInfoTest);
37
+
38
+ TEST_P (urUSMGetMemAllocInfoTest, SuccessType) {
34
39
size_t size = 0 ;
35
- auto alloc_info = getParam ();
36
- ASSERT_SUCCESS_OR_OPTIONAL_QUERY (
37
- urUSMGetMemAllocInfo (context, ptr, alloc_info, 0 , nullptr , &size),
38
- alloc_info);
39
- ASSERT_NE (size, 0 );
40
-
41
- if (const auto expected_size = usm_info_size_map.find (alloc_info);
42
- expected_size != usm_info_size_map.end ()) {
43
- ASSERT_EQ (expected_size->second , size);
44
- }
40
+ auto info_type = UR_USM_ALLOC_INFO_TYPE;
41
+ ASSERT_SUCCESS (
42
+ urUSMGetMemAllocInfo (context, ptr, info_type, 0 , nullptr , &size));
43
+ ASSERT_EQ (sizeof (ur_usm_type_t ), size);
45
44
46
- std::vector<uint8_t > info_data (size);
47
- ASSERT_SUCCESS (urUSMGetMemAllocInfo (context, ptr, alloc_info, size,
48
- info_data.data (), nullptr ));
49
- switch (alloc_info) {
50
- case UR_USM_ALLOC_INFO_DEVICE: {
51
- auto returned_device =
52
- reinterpret_cast <ur_device_handle_t *>(info_data.data ());
53
- ASSERT_EQ (*returned_device, device);
54
- break ;
55
- }
56
- case UR_USM_ALLOC_INFO_SIZE: {
57
- auto returned_size = reinterpret_cast <size_t *>(info_data.data ());
58
- ASSERT_GE (*returned_size, allocation_size);
59
- break ;
60
- }
61
- case UR_USM_ALLOC_INFO_BASE_PTR: {
62
- auto returned_ptr = reinterpret_cast <void **>(info_data.data ());
63
- ASSERT_EQ (*returned_ptr, ptr);
64
- break ;
65
- }
66
- case UR_USM_ALLOC_INFO_POOL: {
67
- auto returned_pool =
68
- reinterpret_cast <ur_usm_pool_handle_t *>(info_data.data ());
69
- ASSERT_EQ (*returned_pool, pool);
70
- break ;
71
- }
72
- case UR_USM_ALLOC_INFO_TYPE: {
73
- auto returned_type =
74
- reinterpret_cast <ur_usm_type_t *>(info_data.data ());
75
- ASSERT_EQ (*returned_type, UR_USM_TYPE_DEVICE);
76
- break ;
77
- }
78
- default :
79
- break ;
80
- }
45
+ ur_usm_type_t returned_type = UR_USM_TYPE_FORCE_UINT32;
46
+ ASSERT_SUCCESS (urUSMGetMemAllocInfo (context, ptr, info_type, size,
47
+ &returned_type, nullptr ));
48
+
49
+ ASSERT_EQ (returned_type, UR_USM_TYPE_DEVICE);
81
50
}
82
51
83
- using urUSMGetMemAllocInfoNegativeTest = uur::urUSMDeviceAllocTest;
84
- UUR_INSTANTIATE_DEVICE_TEST_SUITE_P (urUSMGetMemAllocInfoNegativeTest);
52
+ TEST_P (urUSMGetMemAllocInfoTest, SuccessBasePtr) {
53
+ size_t size = 0 ;
54
+ auto info_type = UR_USM_ALLOC_INFO_BASE_PTR;
55
+ ASSERT_SUCCESS (
56
+ urUSMGetMemAllocInfo (context, ptr, info_type, 0 , nullptr , &size));
57
+ ASSERT_GT (size, 0 );
58
+
59
+ void *returned_ptr = nullptr ;
60
+ ASSERT_SUCCESS (urUSMGetMemAllocInfo (context, ptr, info_type, size,
61
+ &returned_ptr, nullptr ));
62
+
63
+ ASSERT_NE (returned_ptr, ptr);
64
+ }
65
+
66
+ TEST_P (urUSMGetMemAllocInfoTest, SuccessSize) {
67
+ size_t size = 0 ;
68
+ auto info_type = UR_USM_ALLOC_INFO_SIZE;
69
+ ASSERT_SUCCESS (
70
+ urUSMGetMemAllocInfo (context, ptr, info_type, 0 , nullptr , &size));
71
+ ASSERT_EQ (sizeof (size_t ), size);
72
+
73
+ size_t returned_size = 0 ;
74
+ ASSERT_SUCCESS (urUSMGetMemAllocInfo (context, ptr, info_type, size,
75
+ &returned_size, nullptr ));
76
+
77
+ ASSERT_EQ (returned_size, allocation_size);
78
+ }
79
+
80
+ TEST_P (urUSMGetMemAllocInfoTest, SuccessDevice) {
81
+ size_t size = 0 ;
82
+ auto info_type = UR_USM_ALLOC_INFO_DEVICE;
83
+ ASSERT_SUCCESS (
84
+ urUSMGetMemAllocInfo (context, ptr, info_type, 0 , nullptr , &size));
85
+ ASSERT_EQ (sizeof (ur_device_handle_t ), size);
86
+
87
+ ur_device_handle_t returned_device = nullptr ;
88
+ ASSERT_SUCCESS (urUSMGetMemAllocInfo (context, ptr, info_type, size,
89
+ &returned_device, nullptr ));
90
+
91
+ ASSERT_EQ (returned_device, device);
92
+ }
85
93
86
- TEST_P (urUSMGetMemAllocInfoNegativeTest , InvalidNullHandleContext) {
94
+ TEST_P (urUSMGetMemAllocInfoTest , InvalidNullHandleContext) {
87
95
ur_usm_type_t USMType;
88
96
ASSERT_EQ_RESULT (UR_RESULT_ERROR_INVALID_NULL_HANDLE,
89
97
urUSMGetMemAllocInfo (nullptr , ptr, UR_USM_ALLOC_INFO_TYPE,
90
98
sizeof (ur_usm_type_t ), &USMType,
91
99
nullptr ));
92
100
}
93
101
94
- TEST_P (urUSMGetMemAllocInfoNegativeTest , InvalidNullPointerMem) {
102
+ TEST_P (urUSMGetMemAllocInfoTest , InvalidNullPointerMem) {
95
103
ur_usm_type_t USMType;
96
104
ASSERT_EQ_RESULT (
97
105
UR_RESULT_ERROR_INVALID_NULL_POINTER,
98
106
urUSMGetMemAllocInfo (context, nullptr , UR_USM_ALLOC_INFO_TYPE,
99
107
sizeof (ur_usm_type_t ), &USMType, nullptr ));
100
108
}
101
109
102
- TEST_P (urUSMGetMemAllocInfoNegativeTest , InvalidEnumeration) {
110
+ TEST_P (urUSMGetMemAllocInfoTest , InvalidEnumeration) {
103
111
ur_usm_type_t USMType;
104
112
ASSERT_EQ_RESULT (
105
113
UR_RESULT_ERROR_INVALID_ENUMERATION,
106
114
urUSMGetMemAllocInfo (context, ptr, UR_USM_ALLOC_INFO_FORCE_UINT32,
107
115
sizeof (ur_usm_type_t ), &USMType, nullptr ));
108
116
}
109
117
110
- TEST_P (urUSMGetMemAllocInfoNegativeTest , InvalidValuePropSize) {
118
+ TEST_P (urUSMGetMemAllocInfoTest , InvalidValuePropSize) {
111
119
ur_usm_type_t USMType;
112
120
ASSERT_EQ_RESULT (UR_RESULT_ERROR_INVALID_SIZE,
113
121
urUSMGetMemAllocInfo (context, ptr, UR_USM_ALLOC_INFO_TYPE,
0 commit comments