From 4cefcf9d519a90b2a8d4b0f275a739247bb90a16 Mon Sep 17 00:00:00 2001
From: Matthias Diener <mdiener@illinois.edu>
Date: Mon, 28 Jun 2021 10:57:31 -0500
Subject: [PATCH] keep context

---
 arraycontext/impl/pytato/__init__.py | 5 ++++-
 arraycontext/pytest.py               | 3 ++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/arraycontext/impl/pytato/__init__.py b/arraycontext/impl/pytato/__init__.py
index 7022d32..4d987a4 100644
--- a/arraycontext/impl/pytato/__init__.py
+++ b/arraycontext/impl/pytato/__init__.py
@@ -54,12 +54,15 @@ class PytatoPyOpenCLArrayContext(ArrayContext):
 
     def __init__(self, queue, allocator=None, force_device_scalars=True):
         super().__init__()
-        assert force_device_scalars == True
+        assert force_device_scalars is True
         self._force_device_scalars = True
         self.queue = queue
         self.allocator = allocator
         self.np = self._get_fake_numpy_namespace()
 
+        # unused, but necessary to keep the context alive
+        self.context = self.queue.context
+
     def _get_fake_numpy_namespace(self):
         from arraycontext.impl.pytato.fake_numpy import PytatoFakeNumpyNamespace
         return PytatoFakeNumpyNamespace(self)
diff --git a/arraycontext/pytest.py b/arraycontext/pytest.py
index 9171027..de1e005 100644
--- a/arraycontext/pytest.py
+++ b/arraycontext/pytest.py
@@ -102,7 +102,8 @@ class _PytestPyOpenCLArrayContextFactoryWithClassAndHostScalars(
     force_device_scalars = False
 
 
-class _PytestPytatoPyOpenCLArrayContextFactory(_PytestPyOpenCLArrayContextFactoryWithClass):
+class _PytestPytatoPyOpenCLArrayContextFactory(
+        _PytestPyOpenCLArrayContextFactoryWithClass):
 
     @property
     def actx_class(self):
-- 
GitLab