tests: Write test name to debug output.

This is useful when inspecting the output of D3D12 debug layer.
This commit is contained in:
Józef Kucia
2016-11-09 14:46:37 +01:00
parent 9242c12c51
commit 2eed0e0ed3
2 changed files with 57 additions and 22 deletions

View File

@@ -153,6 +153,30 @@ vkd3d_test_trace(unsigned int line, const char *fmt, ...)
va_end(args); va_end(args);
} }
static void VKD3D_PRINTF_FUNC(1, 2) VKD3D_UNUSED
vkd3d_test_debug(const char *fmt, ...)
{
char buffer[512];
va_list args;
int size;
size = snprintf(buffer, sizeof(buffer), "%s: ", vkd3d_test_name);
if (0 < size && size < sizeof(buffer))
{
va_start(args, fmt);
vsnprintf(buffer + size, sizeof(buffer) - size, fmt, args);
va_end(args);
}
buffer[sizeof(buffer) - 1] = '\0';
#ifdef _WIN32
OutputDebugStringA(buffer);
#endif
if (vkd3d_test_state.debug)
printf("%s\n", buffer);
}
#ifdef _WIN32 #ifdef _WIN32
int wmain(void) int wmain(void)
#else #else
@@ -181,4 +205,15 @@ int main(void)
return vkd3d_test_state.failure_count || vkd3d_test_state.todo_success_count; return vkd3d_test_state.failure_count || vkd3d_test_state.todo_success_count;
} }
typedef void (*vkd3d_test_pfn)(void);
static inline void vkd3d_run_test(const char *name, vkd3d_test_pfn test_pfn)
{
vkd3d_test_debug(name);
test_pfn();
}
#define run_test(test_pfn) \
vkd3d_run_test(#test_pfn, test_pfn)
#endif /* __VKD3D_TEST_H */ #endif /* __VKD3D_TEST_H */

View File

@@ -3119,26 +3119,26 @@ START_TEST(d3d12)
ID3D12Debug_Release(debug); ID3D12Debug_Release(debug);
} }
test_create_device(); run_test(test_create_device);
test_node_count(); run_test(test_node_count);
test_check_feature_support(); run_test(test_check_feature_support);
test_create_command_allocator(); run_test(test_create_command_allocator);
test_create_command_list(); run_test(test_create_command_list);
test_create_command_queue(); run_test(test_create_command_queue);
test_create_committed_resource(); run_test(test_create_committed_resource);
test_create_descriptor_heap(); run_test(test_create_descriptor_heap);
test_create_root_signature(); run_test(test_create_root_signature);
test_create_pipeline_state(); run_test(test_create_pipeline_state);
test_create_fence(); run_test(test_create_fence);
test_reset_command_allocator(); run_test(test_reset_command_allocator);
test_cpu_signal_fence(); run_test(test_cpu_signal_fence);
test_gpu_signal_fence(); run_test(test_gpu_signal_fence);
test_multithread_fence_wait(); run_test(test_multithread_fence_wait);
test_clear_render_target_view(); run_test(test_clear_render_target_view);
test_draw_instanced(); run_test(test_draw_instanced);
test_texture_resource_barriers(); run_test(test_texture_resource_barriers);
test_invalid_texture_resource_barriers(); run_test(test_invalid_texture_resource_barriers);
test_device_removed_reason(); run_test(test_device_removed_reason);
test_map_resource(); run_test(test_map_resource);
test_bundle_state_inheritance(); run_test(test_bundle_state_inheritance);
} }