Repository: IntelPython/dpnp (language: python)

Issue:
Install OneAPI compiler for coverage GitHub action
The PR proposes to use OneAPI compiler in GitHub actions with coverage run, because the latest conda package with DPC++ 2024.2 still has an issue with collecting of the coverage.

- [x] Have you provided a meaningful PR description?
- [ ] Have you added a test, reproducer or referred to issue with a reproducer?
- [ ] Have you tested your changes locally for CPU and GPU devices?
- [x] Have you made sure that new changes do not introduce compiler warnings?
- [ ] Have you checked performance impact of proposed changes?
- [ ] If this PR is a work in progress, are you filing the PR as a draft?



Discussion / hints:
<!-- add-pr-comment:add-pr-comment -->

View rendered docs @ https://intelpython.github.io/dpnp/pull//index.html

Fix patch:
diff --git a/setup.cfg b/setup.cfg
index 23e56f0c9f7..387884acef0 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -3,9 +3,17 @@ max_line_length = 120
 ignore = E201
 
 [tool:pytest]
-addopts = -p no:warnings --tb=short
+# By default, tests marked as slow will be deselected.
+# To run all tests, use -m "slow and not slow".
+# To run only slow tests, use -m "slow".
+addopts = -m "not slow" -p no:warnings --tb=short --strict-markers
 norecursedirs = tests_perf
 testpaths = tests
+markers =
+    slow: marks tests as slow (deselect with '-m "not slow"')
+    multi_gpu: marks tests that require a specified number of GPUs
+    # Added due to -p no:warnings to avoid errors with --strict-markers
+    filterwarnings: mark to filter warnings during tests
 
 [versioneer]
 VCS = git


Test patch:
diff --git a/tests/test_mathematical.py b/tests/test_mathematical.py
index 428b408fce3..966d30a1149 100644
--- a/tests/test_mathematical.py
+++ b/tests/test_mathematical.py
@@ -813,16 +813,6 @@ def test_op_with_scalar(array, val, func, data_type, val_type):
             pytest.skip(
                 "(0j ** 0) is different: (NaN + NaNj) in dpnp and (1 + 0j) in numpy"
             )
-        # TODO: Remove when #1378 (dpctl) is solved and 2024.1 is released (coverage is failing otherwise)
-        elif (
-            is_cpu_device()
-            and dpnp_a.dtype == dpnp.complex128
-            and dpnp_a.size >= 8
-            and not dpnp.all(dpnp_a)
-        ):
-            pytest.skip(
-                "[..., 0j ** val] is different for x.size >= 8: [..., NaN + NaNj] in dpnp and [..., 0 + 0j] in numpy"
-            )
 
     if func == "subtract" and val_type == bool and data_type == dpnp.bool:
         with pytest.raises(TypeError):
@@ -1287,19 +1277,6 @@ def test_power(array, val, data_type, val_type):
     dpnp_a = dpnp.array(array, dtype=data_type)
     val_ = val_type(val)
 
-    # TODO: Remove when #1378 (dpctl) is solved and 2024.1 is released (coverage is failing otherwise)
-    if (
-        is_cpu_device()
-        and (
-            dpnp.complex128 in (data_type, val_type)
-            or dpnp.complex64 in (data_type, val_type)
-        )
-        and dpnp_a.size >= 8
-    ):
-        pytest.skip(
-            "[..., 0j ** val] is different for x.size >= 8: [..., NaN + NaNj] in dpnp and [..., 0 + 0j] in numpy"
-        )
-
     result = dpnp.power(dpnp_a, val_)
     expected = numpy.power(np_a, val_)
     assert_allclose(expected, result, rtol=1e-6)
@@ -2647,7 +2624,7 @@ def test_matmul_out_0D(self, out_shape):
         assert result is dpnp_out
         assert_dtype_allclose(result, expected)
 
-    @pytest.mark.skipif(is_cpu_device(), reason="large size")
+    @testing.slow
     @pytest.mark.parametrize(
         "shape",
         [
diff --git a/tests/third_party/cupy/math_tests/test_sumprod.py b/tests/third_party/cupy/math_tests/test_sumprod.py
index e68342995e9..18a74a76330 100644
--- a/tests/third_party/cupy/math_tests/test_sumprod.py
+++ b/tests/third_party/cupy/math_tests/test_sumprod.py
@@ -8,7 +8,6 @@
 from tests.helper import (
     has_support_aspect16,
     has_support_aspect64,
-    is_win_platform,
 )
 from tests.third_party.cupy import testing