From 31f676da5a0fae2cf79a0e73f30aea1e8ebb9019 Mon Sep 17 00:00:00 2001
From: Isuru Fernando <isuruf@gmail.com>
Date: Tue, 14 Jul 2020 01:31:34 -0500
Subject: [PATCH] Fix parallel tests using platform

---
 pyopencl/tools.py | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/pyopencl/tools.py b/pyopencl/tools.py
index 109e0be0..461b2138 100644
--- a/pyopencl/tools.py
+++ b/pyopencl/tools.py
@@ -286,8 +286,15 @@ def pytest_generate_tests_for_pyopencl(metafunc):
 
             arg_values.append(tuple(arg_dict[name] for name in arg_names))
 
+    def idfn(val):
+        if isinstance(val, cl.Platform):
+            # Don't show address, so that parallel test collection works
+            return f"<pyopencl.Platform '{val.name}'>"
+        else:
+            return str(val)
+
     if arg_names:
-        metafunc.parametrize(arg_names, arg_values, ids=str)
+        metafunc.parametrize(arg_names, arg_values, ids=idfn)
 
 
 # {{{ C argument lists
-- 
GitLab