[PATCH vkd3d 09/10] tests: Introduce parse_args() helper function.

Józef Kucia joseph.kucia at gmail.com
Tue Dec 4 08:56:02 CST 2018


From: Józef Kucia <jkucia at codeweavers.com>

Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 tests/d3d12.c               | 21 +--------------------
 tests/d3d12_crosstest.h     | 23 +++++++++++++++++++++++
 tests/d3d12_invalid_usage.c | 21 +--------------------
 3 files changed, 25 insertions(+), 40 deletions(-)

diff --git a/tests/d3d12.c b/tests/d3d12.c
index 3123018aca6f..aee2ccca4295 100644
--- a/tests/d3d12.c
+++ b/tests/d3d12.c
@@ -21809,26 +21809,7 @@ static void test_primitive_restart(void)
 
 START_TEST(d3d12)
 {
-    bool enable_debug_layer = false;
-    ID3D12Debug *debug;
-    unsigned int i;
-
-    for (i = 1; i < argc; ++i)
-    {
-        if (!strcmp(argv[i], "--validate"))
-            enable_debug_layer = true;
-        else if (!strcmp(argv[i], "--warp"))
-            use_warp_device = true;
-        else if (!strcmp(argv[i], "--adapter") && i + 1 < argc)
-            use_adapter_idx = atoi(argv[++i]);
-    }
-
-    if (enable_debug_layer && SUCCEEDED(D3D12GetDebugInterface(&IID_ID3D12Debug, (void **)&debug)))
-    {
-        ID3D12Debug_EnableDebugLayer(debug);
-        ID3D12Debug_Release(debug);
-    }
-
+    parse_args(argc, argv);
     print_adapter_info();
 
     run_test(test_create_device);
diff --git a/tests/d3d12_crosstest.h b/tests/d3d12_crosstest.h
index ddba9feaa589..8f522e880b16 100644
--- a/tests/d3d12_crosstest.h
+++ b/tests/d3d12_crosstest.h
@@ -316,4 +316,27 @@ static ID3D12Device *create_device(void)
     return SUCCEEDED(hr) ? device : NULL;
 }
 
+static void parse_args(int argc, char **argv)
+{
+    bool enable_debug_layer = false;
+    ID3D12Debug *debug;
+    unsigned int i;
+
+    for (i = 1; i < argc; ++i)
+    {
+        if (!strcmp(argv[i], "--validate"))
+            enable_debug_layer = true;
+        else if (!strcmp(argv[i], "--warp"))
+            use_warp_device = true;
+        else if (!strcmp(argv[i], "--adapter") && i + 1 < argc)
+            use_adapter_idx = atoi(argv[++i]);
+    }
+
+    if (enable_debug_layer && SUCCEEDED(D3D12GetDebugInterface(&IID_ID3D12Debug, (void **)&debug)))
+    {
+        ID3D12Debug_EnableDebugLayer(debug);
+        ID3D12Debug_Release(debug);
+    }
+}
+
 #endif  /* __VKD3D_D3D12_CROSSTEST_H */
diff --git a/tests/d3d12_invalid_usage.c b/tests/d3d12_invalid_usage.c
index ce354b8a8709..40935428f5ad 100644
--- a/tests/d3d12_invalid_usage.c
+++ b/tests/d3d12_invalid_usage.c
@@ -152,26 +152,7 @@ static void test_invalid_texture_resource_barriers(void)
 
 START_TEST(d3d12_invalid_usage)
 {
-    bool enable_debug_layer = false;
-    ID3D12Debug *debug;
-    unsigned int i;
-
-    for (i = 1; i < argc; ++i)
-    {
-        if (!strcmp(argv[i], "--validate"))
-            enable_debug_layer = true;
-        else if (!strcmp(argv[i], "--warp"))
-            use_warp_device = true;
-        else if (!strcmp(argv[i], "--adapter") && i + 1 < argc)
-            use_adapter_idx = atoi(argv[++i]);
-    }
-
-    if (enable_debug_layer && SUCCEEDED(D3D12GetDebugInterface(&IID_ID3D12Debug, (void **)&debug)))
-    {
-        ID3D12Debug_EnableDebugLayer(debug);
-        ID3D12Debug_Release(debug);
-    }
-
+    parse_args(argc, argv);
     print_adapter_info();
 
     run_test(test_invalid_texture_resource_barriers);
-- 
2.19.2




More information about the wine-devel mailing list