Skip to content

Commit

Permalink
Reorganised urEventGetProfilingInfo test into separate tests instead …
Browse files Browse the repository at this point in the history
…of a switch.

Also done a housekeeping pass across all urXGetInfo tests, renaming and adding consts where appropriate, and adding extra checks to tests with vectors.
  • Loading branch information
martygrant committed Jan 30, 2025
1 parent 0fd6433 commit fb30178
Show file tree
Hide file tree
Showing 17 changed files with 639 additions and 563 deletions.
28 changes: 14 additions & 14 deletions test/conformance/adapter/urAdapterGetInfo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,50 +13,50 @@ using urAdapterGetInfoTest = uur::urAdapterTest;
UUR_INSTANTIATE_ADAPTER_TEST_SUITE_P(urAdapterGetInfoTest);

TEST_P(urAdapterGetInfoTest, SuccessBackend) {
ur_adapter_info_t property_name = UR_ADAPTER_INFO_BACKEND;
const ur_adapter_info_t property_name = UR_ADAPTER_INFO_BACKEND;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urAdapterGetInfo(adapter, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(ur_adapter_backend_t));

ur_adapter_backend_t backend = UR_ADAPTER_BACKEND_UNKNOWN;
ur_adapter_backend_t property_value = UR_ADAPTER_BACKEND_UNKNOWN;
ASSERT_SUCCESS(urAdapterGetInfo(adapter, property_name, property_size,
&backend, nullptr));
&property_value, nullptr));

ASSERT_TRUE(backend >= UR_ADAPTER_BACKEND_LEVEL_ZERO &&
backend <= UR_ADAPTER_BACKEND_NATIVE_CPU);
ASSERT_TRUE(property_value >= UR_ADAPTER_BACKEND_LEVEL_ZERO &&
property_value <= UR_ADAPTER_BACKEND_NATIVE_CPU);
}

TEST_P(urAdapterGetInfoTest, SuccessReferenceCount) {
ur_adapter_info_t property_name = UR_ADAPTER_INFO_REFERENCE_COUNT;
const ur_adapter_info_t property_name = UR_ADAPTER_INFO_REFERENCE_COUNT;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urAdapterGetInfo(adapter, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(uint32_t));

uint32_t reference_count = 0;
uint32_t property_value = 0;
ASSERT_SUCCESS(urAdapterGetInfo(adapter, property_name, property_size,
&reference_count, nullptr));
ASSERT_GE(reference_count, 0);
&property_value, nullptr));
ASSERT_GE(property_value, 0);
}

TEST_P(urAdapterGetInfoTest, SuccessVersion) {
ur_adapter_info_t property_name = UR_ADAPTER_INFO_VERSION;
const ur_adapter_info_t property_name = UR_ADAPTER_INFO_VERSION;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urAdapterGetInfo(adapter, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(uint32_t));

uint32_t returned_version = 46;
uint32_t property_value = 46;
ASSERT_SUCCESS(urAdapterGetInfo(adapter, property_name, property_size,
&returned_version, nullptr));
ASSERT_NE(42, returned_version);
&property_value, nullptr));
ASSERT_NE(42, property_value);
}

TEST_P(urAdapterGetInfoTest, InvalidNullHandleAdapter) {
Expand Down Expand Up @@ -89,7 +89,7 @@ TEST_P(urAdapterGetInfoTest, InvalidSizeSmall) {
}

TEST_P(urAdapterGetInfoTest, InvalidNullPointerPropValue) {
ur_adapter_backend_t backend = UR_ADAPTER_BACKEND_UNKNOWN;
const ur_adapter_backend_t backend = UR_ADAPTER_BACKEND_UNKNOWN;
ASSERT_EQ_RESULT(urAdapterGetInfo(adapter, UR_ADAPTER_INFO_BACKEND,
sizeof(backend), nullptr, nullptr),
UR_RESULT_ERROR_INVALID_NULL_POINTER);
Expand Down
68 changes: 34 additions & 34 deletions test/conformance/context/urContextGetInfo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,41 +9,41 @@ using urContextGetInfoTest = uur::urContextTest;
UUR_INSTANTIATE_DEVICE_TEST_SUITE_P(urContextGetInfoTest);

TEST_P(urContextGetInfoTest, SuccessNumDevices) {
ur_context_info_t property_name = UR_CONTEXT_INFO_NUM_DEVICES;
const ur_context_info_t property_name = UR_CONTEXT_INFO_NUM_DEVICES;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urContextGetInfo(context, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(uint32_t));

uint32_t nDevices = 0;
uint32_t property_value = 0;
ASSERT_SUCCESS(urContextGetInfo(context, property_name, property_size,
&nDevices, nullptr));
&property_value, nullptr));

ASSERT_EQ(nDevices, 1);
ASSERT_EQ(property_value, 1);
}

TEST_P(urContextGetInfoTest, SuccessDevices) {
ur_context_info_t property_name = UR_CONTEXT_INFO_DEVICES;
const ur_context_info_t property_name = UR_CONTEXT_INFO_DEVICES;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urContextGetInfo(context, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_NE(property_size, 0);

ur_device_handle_t queried_device = nullptr;
ur_device_handle_t property_value = nullptr;
ASSERT_SUCCESS(urContextGetInfo(context, property_name, property_size,
&queried_device, nullptr));
&property_value, nullptr));

size_t devices_count = property_size / sizeof(ur_device_handle_t);
ASSERT_EQ(devices_count, 1);
ASSERT_EQ(queried_device, device);
ASSERT_EQ(property_value, device);
}

TEST_P(urContextGetInfoTest, SuccessUSMMemCpy2DSupport) {
ur_context_info_t property_name = UR_CONTEXT_INFO_USM_MEMCPY2D_SUPPORT;
const ur_context_info_t property_name = UR_CONTEXT_INFO_USM_MEMCPY2D_SUPPORT;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
Expand All @@ -53,7 +53,7 @@ TEST_P(urContextGetInfoTest, SuccessUSMMemCpy2DSupport) {
}

TEST_P(urContextGetInfoTest, SuccessUSMFill2DSupport) {
ur_context_info_t property_name = UR_CONTEXT_INFO_USM_FILL2D_SUPPORT;
const ur_context_info_t property_name = UR_CONTEXT_INFO_USM_FILL2D_SUPPORT;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
Expand All @@ -63,22 +63,22 @@ TEST_P(urContextGetInfoTest, SuccessUSMFill2DSupport) {
}

TEST_P(urContextGetInfoTest, SuccessReferenceCount) {
ur_context_info_t property_name = UR_CONTEXT_INFO_REFERENCE_COUNT;
const ur_context_info_t property_name = UR_CONTEXT_INFO_REFERENCE_COUNT;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urContextGetInfo(context, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(uint32_t));

uint32_t reference_count = 0;
uint32_t property_value = 0;
ASSERT_SUCCESS(urContextGetInfo(context, property_name, property_size,
&reference_count, nullptr));
ASSERT_GT(reference_count, 0U);
&property_value, nullptr));
ASSERT_GT(property_value, 0U);
}

TEST_P(urContextGetInfoTest, SuccessAtomicMemoryOrderCapabilities) {
ur_context_info_t property_name =
const ur_context_info_t property_name =
UR_CONTEXT_INFO_ATOMIC_MEMORY_ORDER_CAPABILITIES;
size_t property_size = 0;

Expand All @@ -87,15 +87,15 @@ TEST_P(urContextGetInfoTest, SuccessAtomicMemoryOrderCapabilities) {
property_name);
ASSERT_EQ(property_size, sizeof(ur_memory_order_capability_flags_t));

ur_memory_order_capability_flags_t flags = 0;
ASSERT_SUCCESS(
urContextGetInfo(context, property_name, property_size, &flags, nullptr));
ur_memory_order_capability_flags_t property_value = 0;
ASSERT_SUCCESS(urContextGetInfo(context, property_name, property_size,
&property_value, nullptr));

ASSERT_EQ(flags & UR_MEMORY_ORDER_CAPABILITY_FLAGS_MASK, 0);
ASSERT_EQ(property_value & UR_MEMORY_ORDER_CAPABILITY_FLAGS_MASK, 0);
}

TEST_P(urContextGetInfoTest, SuccessAtomicMemoryScopeCapabilities) {
ur_context_info_t property_name =
const ur_context_info_t property_name =
UR_CONTEXT_INFO_ATOMIC_MEMORY_SCOPE_CAPABILITIES;
size_t property_size = 0;

Expand All @@ -104,15 +104,15 @@ TEST_P(urContextGetInfoTest, SuccessAtomicMemoryScopeCapabilities) {
property_name);
ASSERT_EQ(property_size, sizeof(ur_memory_scope_capability_flags_t));

ur_memory_scope_capability_flags_t flags = 0;
ASSERT_SUCCESS(
urContextGetInfo(context, property_name, property_size, &flags, nullptr));
ur_memory_scope_capability_flags_t property_value = 0;
ASSERT_SUCCESS(urContextGetInfo(context, property_name, property_size,
&property_value, nullptr));

ASSERT_EQ(flags & UR_MEMORY_SCOPE_CAPABILITY_FLAGS_MASK, 0);
ASSERT_EQ(property_value & UR_MEMORY_SCOPE_CAPABILITY_FLAGS_MASK, 0);
}

TEST_P(urContextGetInfoTest, SuccessAtomicFenceOrderCapabilities) {
ur_context_info_t property_name =
const ur_context_info_t property_name =
UR_CONTEXT_INFO_ATOMIC_FENCE_ORDER_CAPABILITIES;
size_t property_size = 0;

Expand All @@ -121,15 +121,15 @@ TEST_P(urContextGetInfoTest, SuccessAtomicFenceOrderCapabilities) {
property_name);
ASSERT_EQ(property_size, sizeof(ur_memory_order_capability_flags_t));

ur_memory_order_capability_flags_t flags = 0;
ASSERT_SUCCESS(
urContextGetInfo(context, property_name, property_size, &flags, nullptr));
ur_memory_order_capability_flags_t property_value = 0;
ASSERT_SUCCESS(urContextGetInfo(context, property_name, property_size,
&property_value, nullptr));

ASSERT_EQ(flags & UR_MEMORY_ORDER_CAPABILITY_FLAGS_MASK, 0);
ASSERT_EQ(property_value & UR_MEMORY_ORDER_CAPABILITY_FLAGS_MASK, 0);
}

TEST_P(urContextGetInfoTest, SuccessAtomicFenceScopeCapabilities) {
ur_context_info_t property_name =
const ur_context_info_t property_name =
UR_CONTEXT_INFO_ATOMIC_FENCE_SCOPE_CAPABILITIES;
size_t property_size = 0;

Expand All @@ -138,11 +138,11 @@ TEST_P(urContextGetInfoTest, SuccessAtomicFenceScopeCapabilities) {
property_name);
ASSERT_EQ(property_size, sizeof(ur_memory_scope_capability_flags_t));

ur_memory_scope_capability_flags_t flags = 0;
ASSERT_SUCCESS(
urContextGetInfo(context, property_name, property_size, &flags, nullptr));
ur_memory_scope_capability_flags_t property_value = 0;
ASSERT_SUCCESS(urContextGetInfo(context, property_name, property_size,
&property_value, nullptr));

ASSERT_EQ(flags & UR_MEMORY_SCOPE_CAPABILITY_FLAGS_MASK, 0);
ASSERT_EQ(property_value & UR_MEMORY_SCOPE_CAPABILITY_FLAGS_MASK, 0);
}

TEST_P(urContextGetInfoTest, InvalidNullHandleContext) {
Expand Down
47 changes: 22 additions & 25 deletions test/conformance/event/urEventGetInfo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,97 +10,95 @@
using urEventGetInfoTest = uur::event::urEventTest;

TEST_P(urEventGetInfoTest, SuccessCommandQueue) {
ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_QUEUE;
const ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_QUEUE;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urEventGetInfo(event, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(ur_queue_handle_t));

ur_queue_handle_t returned_queue = nullptr;
ur_queue_handle_t property_value = nullptr;
ASSERT_SUCCESS(urEventGetInfo(event, property_name, property_size,
&returned_queue, nullptr));
&property_value, nullptr));

ASSERT_EQ(queue, returned_queue);
ASSERT_EQ(queue, property_value);
}

TEST_P(urEventGetInfoTest, SuccessContext) {
ur_event_info_t property_name = UR_EVENT_INFO_CONTEXT;
const ur_event_info_t property_name = UR_EVENT_INFO_CONTEXT;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urEventGetInfo(event, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(ur_context_handle_t));

ur_context_handle_t returned_context = nullptr;
ur_context_handle_t property_value = nullptr;
ASSERT_SUCCESS(urEventGetInfo(event, property_name, property_size,
&returned_context, nullptr));
&property_value, nullptr));

ASSERT_EQ(context, returned_context);
ASSERT_EQ(context, property_value);
}

TEST_P(urEventGetInfoTest, SuccessCommandType) {
UUR_KNOWN_FAILURE_ON(uur::LevelZero{});

ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_TYPE;
const ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_TYPE;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urEventGetInfo(event, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(ur_command_t));

ur_command_t returned_command_type = UR_COMMAND_FORCE_UINT32;
ur_command_t property_value = UR_COMMAND_FORCE_UINT32;
ASSERT_SUCCESS(urEventGetInfo(event, property_name, property_size,
&returned_command_type, nullptr));
&property_value, nullptr));

ASSERT_EQ(UR_COMMAND_MEM_BUFFER_WRITE, returned_command_type);
ASSERT_EQ(UR_COMMAND_MEM_BUFFER_WRITE, property_value);
}

TEST_P(urEventGetInfoTest, SuccessCommandExecutionStatus) {
ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_EXECUTION_STATUS;
const ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_EXECUTION_STATUS;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urEventGetInfo(event, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(ur_event_status_t));

ur_event_status_t returned_status = UR_EVENT_STATUS_FORCE_UINT32;
ur_event_status_t property_value = UR_EVENT_STATUS_FORCE_UINT32;
ASSERT_SUCCESS(urEventGetInfo(event, property_name, property_size,
&returned_status, nullptr));
&property_value, nullptr));

ASSERT_EQ(UR_EVENT_STATUS_COMPLETE, returned_status);
ASSERT_EQ(UR_EVENT_STATUS_COMPLETE, property_value);
}

TEST_P(urEventGetInfoTest, SuccessReferenceCount) {
ur_event_info_t property_name = UR_EVENT_INFO_REFERENCE_COUNT;
const ur_event_info_t property_name = UR_EVENT_INFO_REFERENCE_COUNT;
size_t property_size = 0;

ASSERT_SUCCESS_OR_OPTIONAL_QUERY(
urEventGetInfo(event, property_name, 0, nullptr, &property_size),
property_name);
ASSERT_EQ(property_size, sizeof(uint32_t));

uint32_t returned_reference_count = 0;
uint32_t property_value = 0;
ASSERT_SUCCESS(urEventGetInfo(event, property_name, property_size,
&returned_reference_count, nullptr));
&property_value, nullptr));

ASSERT_GT(returned_reference_count, 0U);
ASSERT_GT(property_value, 0U);
}

TEST_P(urEventGetInfoTest, InvalidNullHandle) {
ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_QUEUE;
const ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_QUEUE;
size_t property_size;

ASSERT_SUCCESS(
urEventGetInfo(event, property_name, 0, nullptr, &property_size));
ASSERT_NE(property_size, 0);
std::vector<uint8_t> data(property_size);

/* Invalid hEvent */
ASSERT_EQ_RESULT(urEventGetInfo(nullptr, UR_EVENT_INFO_COMMAND_QUEUE, 0,
nullptr, &property_size),
UR_RESULT_ERROR_INVALID_NULL_HANDLE);
Expand All @@ -115,15 +113,14 @@ TEST_P(urEventGetInfoTest, InvalidEnumeration) {
}

TEST_P(urEventGetInfoTest, InvalidSizePropSize) {
ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_QUEUE;
const ur_event_info_t property_name = UR_EVENT_INFO_COMMAND_QUEUE;
size_t property_size = 0;

ASSERT_SUCCESS(
urEventGetInfo(event, property_name, 0, nullptr, &property_size));
ASSERT_NE(property_size, 0);
std::vector<uint8_t> data(property_size);

/* Invalid propSize */
ASSERT_EQ_RESULT(urEventGetInfo(event, UR_EVENT_INFO_COMMAND_QUEUE, 0,
data.data(), nullptr),
UR_RESULT_ERROR_INVALID_SIZE);
Expand Down
Loading

0 comments on commit fb30178

Please sign in to comment.