Centralize mono/nuget skip predicate in conftest.py

Co-authored-by: oscarsj <1410188+oscarsj@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-02-17 17:21:50 +00:00
parent 9efe112026
commit 004ebd386c
5 changed files with 28 additions and 38 deletions

View File

@@ -0,0 +1,20 @@
import runs_on
import pytest
def _supports_mono_nuget():
"""
Helper function to determine if the current platform supports Mono and nuget.
Returns True if running on Linux or on macOS x86_64 (excluding macos-15 and macos-26).
macOS ARM runners (macos-15 and macos-26) are excluded due to issues with Mono and nuget.
"""
return (
runs_on.linux
or (
runs_on.macos
and runs_on.x86_64
and not runs_on.macos_15
and not runs_on.macos_26
)
)

View File

@@ -1,15 +1,9 @@
import runs_on
import pytest
import os
from conftest import _supports_mono_nuget
# Skipping the test on the ARM runners, macos-15 and macos-26, as we're running
# into trouble with Mono and nuget.
@pytest.mark.only_if(
runs_on.linux
or (runs_on.macos and runs_on.x86_64
and not runs_on.macos_15 and not runs_on.macos_26)
)
@pytest.mark.only_if(_supports_mono_nuget())
def test(codeql, csharp):
os.environ["CODEQL_EXTRACTOR_CSHARP_BUILDLESS_DOTNET_FRAMEWORK_REFERENCES"] = (
"/non-existent-path"

View File

@@ -1,15 +1,9 @@
import os
import runs_on
import pytest
from conftest import _supports_mono_nuget
# Skipping the test on the ARM runners, macos-15 and macos-26, as we're running
# into trouble with Mono and nuget.
@pytest.mark.only_if(
runs_on.linux
or (runs_on.macos and runs_on.x86_64
and not runs_on.macos_15 and not runs_on.macos_26)
)
@pytest.mark.only_if(_supports_mono_nuget())
def test(codeql, csharp):
# making sure we're not doing any fallback restore:
os.environ["CODEQL_EXTRACTOR_CSHARP_BUILDLESS_NUGET_FEEDS_CHECK_FALLBACK_TIMEOUT"] = "1"

View File

@@ -1,19 +1,7 @@
import runs_on
import pytest
from conftest import _supports_mono_nuget
# Skipping the test on the ARM runners, macos-15 and macos-26, as we're running
# into trouble with Mono and nuget.
@pytest.mark.only_if(
runs_on.linux
or (
runs_on.macos
and runs_on.x86_64
and not (
runs_on.macos_15
or runs_on.macos_26
)
)
)
@pytest.mark.only_if(_supports_mono_nuget())
def test(codeql, csharp):
codeql.database.create(build_mode="none")

View File

@@ -1,13 +1,7 @@
import runs_on
import pytest
from conftest import _supports_mono_nuget
# Skipping the test on the ARM runners, macos-15 and macos-26, as we're running
# into trouble with Mono and nuget.
@pytest.mark.only_if(
runs_on.linux
or (runs_on.macos and runs_on.x86_64
and not runs_on.macos_15 and not runs_on.macos_26)
)
@pytest.mark.only_if(_supports_mono_nuget())
def test(codeql, csharp):
codeql.database.create(source_root="proj", build_mode="none")