Pytest

Important

For these helpers to work, you need to install extra_platforms’s additional dependencies from the pytest extra group:

$ pip install extra_platforms[pytest]

Usage

  • @skip_<id> — Skips the test when running on that platform/architecture/CI system

  • @unless_<id> — Skips the test unless running on that platform/architecture/CI system

Skip a test on Windows:

import pytest
from extra_platforms.pytest import skip_windows


@skip_windows
def test_unix_only():
    # This test will be skipped on Windows
    pass

Run a test only on Linux:

import pytest
from extra_platforms.pytest import unless_linux


@unless_linux
def test_linux_only():
    # This test will be skipped unless running on Linux
    pass

Skip a test on specific architectures:

import pytest
from extra_platforms.pytest import skip_aarch64


@skip_aarch64
def test_not_on_arm64():
    # This test will be skipped on ARM64 (AArch64)
    pass

Skip a test in CI environments:

import pytest
from extra_platforms.pytest import skip_github_ci


@skip_github_ci
def test_not_in_github_actions():
    # This test will be skipped when running in GitHub Actions
    pass

All decorators

Skip decorator

Unless decorator

Icon

Associated symbol

skip_aarch64()

unless_aarch64()

📱

AARCH64

skip_aix()

unless_aix()

AIX

skip_all_architectures()

unless_any_architecture()

🏛️

ALL_ARCHITECTURES

skip_all_arm()

unless_any_arm()

📱

ALL_ARM

skip_all_ci()

unless_any_ci()

ALL_CI

skip_all_mips()

unless_any_mips()

🔲

ALL_MIPS

skip_all_platforms()

unless_any_platform()

⚙️

ALL_PLATFORMS

skip_all_sparc()

unless_any_sparc()

☀️

ALL_SPARC

skip_all_traits()

unless_any_trait()

ALL_TRAITS

skip_all_windows()

unless_any_windows()

🪟

ALL_WINDOWS

skip_altlinux()

unless_altlinux()

🐧

ALTLINUX

skip_amzn()

unless_amzn()

AMZN

skip_android()

unless_android()

🤖

ANDROID

skip_arch()

unless_arch()

🎗️

ARCH

skip_arch_32_bit()

unless_arch_32_bit()

³²

ARCH_32_BIT

skip_arch_64_bit()

unless_arch_64_bit()

⁶⁴

ARCH_64_BIT

skip_arm()

unless_arm()

📱

ARM

skip_armv5tel()

unless_armv5tel()

📱

ARMV5TEL

skip_armv6l()

unless_armv6l()

📱

ARMV6L

skip_armv7l()

unless_armv7l()

📱

ARMV7L

skip_armv8l()

unless_armv8l()

📱

ARMV8L

skip_azure_pipelines()

unless_azure_pipelines()

AZURE_PIPELINES

skip_bamboo()

unless_bamboo()

BAMBOO

skip_bsd()

unless_bsd()

🅱️+

BSD

skip_bsd_not_macos()

unless_bsd_not_macos()

🅱️

BSD_WITHOUT_MACOS

skip_buildkite()

unless_buildkite()

🪁

BUILDKITE

skip_buildroot()

unless_buildroot()

⛑️

BUILDROOT

skip_cachyos()

unless_cachyos()

CACHYOS

skip_centos()

unless_centos()

💠

CENTOS

skip_circle_ci()

unless_circle_ci()

CIRCLE_CI

skip_cirrus_ci()

unless_cirrus_ci()

CIRRUS_CI

skip_cloudlinux()

unless_cloudlinux()

CLOUDLINUX

skip_codebuild()

unless_codebuild()

CODEBUILD

skip_cygwin()

unless_cygwin()

Ͼ

CYGWIN

skip_debian()

unless_debian()

🌀

DEBIAN

skip_dragonfly_bsd()

unless_dragonfly_bsd()

🪰

DRAGONFLY_BSD

skip_exherbo()

unless_exherbo()

🐽

EXHERBO

skip_fedora()

unless_fedora()

🎩

FEDORA

skip_freebsd()

unless_freebsd()

😈

FREEBSD

skip_gentoo()

unless_gentoo()

🗜️

GENTOO

skip_github_ci()

unless_github_ci()

🐙

GITHUB_CI

skip_gitlab_ci()

unless_gitlab_ci()

🦊

GITLAB_CI

skip_guix()

unless_guix()

🐃

GUIX

skip_haiku()

unless_haiku()

🍂

HAIKU

skip_heroku_ci()

unless_heroku_ci()

HEROKU_CI

skip_hurd()

unless_hurd()

🐃

HURD

skip_i386()

unless_i386()

𝗶

I386

skip_i586()

unless_i586()

𝗶

I586

skip_i686()

unless_i686()

𝗶

I686

skip_ibm_mainframe()

unless_ibm_mainframe()

🏢

IBM_MAINFRAME

skip_ibm_powerkvm()

unless_ibm_powerkvm()

🤹

IBM_POWERKVM

skip_illumos()

unless_illumos()

🔥

ILLUMOS

skip_kvmibm()

unless_kvmibm()

🤹

KVMIBM

skip_linux()

unless_linux()

🐧

LINUX

skip_linux_layers()

unless_linux_layers()

LINUX_LAYERS

skip_linux_like()

unless_linux_like()

🐧+

LINUX_LIKE

skip_linuxmint()

unless_linuxmint()

🌿

LINUXMINT

skip_loongarch()

unless_loongarch()

🐉

LOONGARCH

skip_loongarch64()

unless_loongarch64()

🐉

LOONGARCH64

skip_macos()

unless_macos()

🍎

MACOS

skip_mageia()

unless_mageia()

MAGEIA

skip_mandriva()

unless_mandriva()

💫

MANDRIVA

skip_midnightbsd()

unless_midnightbsd()

🌘

MIDNIGHTBSD

skip_mips()

unless_mips()

🔲

MIPS

skip_mips64()

unless_mips64()

🔲

MIPS64

skip_mips64el()

unless_mips64el()

🔲

MIPS64EL

skip_mipsel()

unless_mipsel()

🔲

MIPSEL

skip_netbsd()

unless_netbsd()

🚩

NETBSD

skip_nobara()

unless_nobara()

NOBARA

skip_openbsd()

unless_openbsd()

🐡

OPENBSD

skip_opensuse()

unless_opensuse()

🦎

OPENSUSE

skip_oracle()

unless_oracle()

🦴

ORACLE

skip_other_posix()

unless_other_posix()

🅟

OTHER_POSIX

skip_parallels()

unless_parallels()

PARALLELS

skip_pidora()

unless_pidora()

🍓

PIDORA

skip_powerpc()

unless_powerpc()

POWERPC

skip_ppc()

unless_ppc()

PPC

skip_ppc64()

unless_ppc64()

PPC64

skip_ppc64le()

unless_ppc64le()

PPC64LE

skip_raspbian()

unless_raspbian()

🍓

RASPBIAN

skip_rhel()

unless_rhel()

🎩

RHEL

skip_riscv()

unless_riscv()

RISCV

skip_riscv32()

unless_riscv32()

RISCV32

skip_riscv64()

unless_riscv64()

RISCV64

skip_rocky()

unless_rocky()

⛰️

ROCKY

skip_s390x()

unless_s390x()

🏢

S390X

skip_scientific()

unless_scientific()

⚛️

SCIENTIFIC

skip_slackware()

unless_slackware()

🚬

SLACKWARE

skip_sles()

unless_sles()

🦎

SLES

skip_solaris()

unless_solaris()

🌞

SOLARIS

skip_sparc()

unless_sparc()

☀️

SPARC

skip_sparc64()

unless_sparc64()

☀️

SPARC64

skip_sunos()

unless_sunos()

☀️

SUNOS

skip_system_v()

unless_system_v()

𝐕

SYSTEM_V

skip_teamcity()

unless_teamcity()

🏙️

TEAMCITY

skip_travis_ci()

unless_travis_ci()

👷

TRAVIS_CI

skip_tumbleweed()

unless_tumbleweed()

TUMBLEWEED

skip_tuxedo()

unless_tuxedo()

🤵

TUXEDO

skip_ubuntu()

unless_ubuntu()

🎯

UBUNTU

skip_ultramarine()

unless_ultramarine()

🌊

ULTRAMARINE

skip_unix()

unless_unix()

UNIX

skip_unix_layers()

unless_unix_layers()

UNIX_LAYERS

skip_unix_not_macos()

unless_unix_not_macos()

UNIX_WITHOUT_MACOS

skip_unknown()

unless_unknown()

UNKNOWN

skip_unknown_architecture()

unless_unknown_architecture()

UNKNOWN_ARCHITECTURE

skip_unknown_ci()

unless_unknown_ci()

UNKNOWN_CI

skip_unknown_platform()

unless_unknown_platform()

UNKNOWN_PLATFORM

skip_wasm32()

unless_wasm32()

🌐

WASM32

skip_wasm64()

unless_wasm64()

🌐

WASM64

skip_webassembly()

unless_webassembly()

🌐

WEBASSEMBLY

skip_windows()

unless_windows()

🪟

WINDOWS

skip_wsl1()

unless_wsl1()

WSL1

skip_wsl2()

unless_wsl2()

WSL2

skip_x86()

unless_x86()

𝘅

X86

skip_x86_64()

unless_x86_64()

🖥️

X86_64

skip_xenserver()

unless_xenserver()

XENSERVER

Decorator reference

Skip decorators

@extra_platforms.pytest.skip_aarch64(*args, **kwargs)

Skip test if current environment is AARCH64 (i.e., when is_aarch64() returns True).

@extra_platforms.pytest.skip_aix(*args, **kwargs)

Skip test if current environment is AIX (i.e., when is_aix() returns True).

@extra_platforms.pytest.skip_all_architectures(*args, **kwargs)

Skip test if current environment matches any member of the ALL_ARCHITECTURES group (i.e., when is_any_architecture() returns True).

@extra_platforms.pytest.skip_all_arm(*args, **kwargs)

Skip test if current environment matches any member of the ALL_ARM group (i.e., when is_any_arm() returns True).

@extra_platforms.pytest.skip_all_ci(*args, **kwargs)

Skip test if current environment matches any member of the ALL_CI group (i.e., when is_any_ci() returns True).

@extra_platforms.pytest.skip_all_mips(*args, **kwargs)

Skip test if current environment matches any member of the ALL_MIPS group (i.e., when is_any_mips() returns True).

@extra_platforms.pytest.skip_all_platforms(*args, **kwargs)

Skip test if current environment matches any member of the ALL_PLATFORMS group (i.e., when is_any_platform() returns True).

@extra_platforms.pytest.skip_all_sparc(*args, **kwargs)

Skip test if current environment matches any member of the ALL_SPARC group (i.e., when is_any_sparc() returns True).

@extra_platforms.pytest.skip_all_traits(*args, **kwargs)

Skip test if current environment matches any member of the ALL_TRAITS group (i.e., when is_any_trait() returns True).

@extra_platforms.pytest.skip_all_windows(*args, **kwargs)

Skip test if current environment matches any member of the ALL_WINDOWS group (i.e., when is_any_windows() returns True).

@extra_platforms.pytest.skip_altlinux(*args, **kwargs)

Skip test if current environment is ALTLINUX (i.e., when is_altlinux() returns True).

@extra_platforms.pytest.skip_amzn(*args, **kwargs)

Skip test if current environment is AMZN (i.e., when is_amzn() returns True).

@extra_platforms.pytest.skip_android(*args, **kwargs)

Skip test if current environment is ANDROID (i.e., when is_android() returns True).

@extra_platforms.pytest.skip_arch(*args, **kwargs)

Skip test if current environment is ARCH (i.e., when is_arch() returns True).

@extra_platforms.pytest.skip_arch_32_bit(*args, **kwargs)

Skip test if current environment matches any member of the ARCH_32_BIT group (i.e., when is_arch_32_bit() returns True).

@extra_platforms.pytest.skip_arch_64_bit(*args, **kwargs)

Skip test if current environment matches any member of the ARCH_64_BIT group (i.e., when is_arch_64_bit() returns True).

@extra_platforms.pytest.skip_arm(*args, **kwargs)

Skip test if current environment is ARM (i.e., when is_arm() returns True).

@extra_platforms.pytest.skip_armv5tel(*args, **kwargs)

Skip test if current environment is ARMV5TEL (i.e., when is_armv5tel() returns True).

@extra_platforms.pytest.skip_armv6l(*args, **kwargs)

Skip test if current environment is ARMV6L (i.e., when is_armv6l() returns True).

@extra_platforms.pytest.skip_armv7l(*args, **kwargs)

Skip test if current environment is ARMV7L (i.e., when is_armv7l() returns True).

@extra_platforms.pytest.skip_armv8l(*args, **kwargs)

Skip test if current environment is ARMV8L (i.e., when is_armv8l() returns True).

@extra_platforms.pytest.skip_azure_pipelines(*args, **kwargs)

Skip test if current environment is AZURE_PIPELINES (i.e., when is_azure_pipelines() returns True).

@extra_platforms.pytest.skip_bamboo(*args, **kwargs)

Skip test if current environment is BAMBOO (i.e., when is_bamboo() returns True).

@extra_platforms.pytest.skip_bsd(*args, **kwargs)

Skip test if current environment matches any member of the BSD group (i.e., when is_bsd() returns True).

@extra_platforms.pytest.skip_bsd_not_macos(*args, **kwargs)

Skip test if current environment matches any member of the BSD_WITHOUT_MACOS group (i.e., when is_bsd_not_macos() returns True).

@extra_platforms.pytest.skip_buildkite(*args, **kwargs)

Skip test if current environment is BUILDKITE (i.e., when is_buildkite() returns True).

@extra_platforms.pytest.skip_buildroot(*args, **kwargs)

Skip test if current environment is BUILDROOT (i.e., when is_buildroot() returns True).

@extra_platforms.pytest.skip_cachyos(*args, **kwargs)

Skip test if current environment is CACHYOS (i.e., when is_cachyos() returns True).

@extra_platforms.pytest.skip_centos(*args, **kwargs)

Skip test if current environment is CENTOS (i.e., when is_centos() returns True).

@extra_platforms.pytest.skip_circle_ci(*args, **kwargs)

Skip test if current environment is CIRCLE_CI (i.e., when is_circle_ci() returns True).

@extra_platforms.pytest.skip_cirrus_ci(*args, **kwargs)

Skip test if current environment is CIRRUS_CI (i.e., when is_cirrus_ci() returns True).

@extra_platforms.pytest.skip_cloudlinux(*args, **kwargs)

Skip test if current environment is CLOUDLINUX (i.e., when is_cloudlinux() returns True).

@extra_platforms.pytest.skip_codebuild(*args, **kwargs)

Skip test if current environment is CODEBUILD (i.e., when is_codebuild() returns True).

@extra_platforms.pytest.skip_cygwin(*args, **kwargs)

Skip test if current environment is CYGWIN (i.e., when is_cygwin() returns True).

@extra_platforms.pytest.skip_debian(*args, **kwargs)

Skip test if current environment is DEBIAN (i.e., when is_debian() returns True).

@extra_platforms.pytest.skip_dragonfly_bsd(*args, **kwargs)

Skip test if current environment is DRAGONFLY_BSD (i.e., when is_dragonfly_bsd() returns True).

@extra_platforms.pytest.skip_exherbo(*args, **kwargs)

Skip test if current environment is EXHERBO (i.e., when is_exherbo() returns True).

@extra_platforms.pytest.skip_fedora(*args, **kwargs)

Skip test if current environment is FEDORA (i.e., when is_fedora() returns True).

@extra_platforms.pytest.skip_freebsd(*args, **kwargs)

Skip test if current environment is FREEBSD (i.e., when is_freebsd() returns True).

@extra_platforms.pytest.skip_gentoo(*args, **kwargs)

Skip test if current environment is GENTOO (i.e., when is_gentoo() returns True).

@extra_platforms.pytest.skip_github_ci(*args, **kwargs)

Skip test if current environment is GITHUB_CI (i.e., when is_github_ci() returns True).

@extra_platforms.pytest.skip_gitlab_ci(*args, **kwargs)

Skip test if current environment is GITLAB_CI (i.e., when is_gitlab_ci() returns True).

@extra_platforms.pytest.skip_guix(*args, **kwargs)

Skip test if current environment is GUIX (i.e., when is_guix() returns True).

@extra_platforms.pytest.skip_haiku(*args, **kwargs)

Skip test if current environment is HAIKU (i.e., when is_haiku() returns True).

@extra_platforms.pytest.skip_heroku_ci(*args, **kwargs)

Skip test if current environment is HEROKU_CI (i.e., when is_heroku_ci() returns True).

@extra_platforms.pytest.skip_hurd(*args, **kwargs)

Skip test if current environment is HURD (i.e., when is_hurd() returns True).

@extra_platforms.pytest.skip_i386(*args, **kwargs)

Skip test if current environment is I386 (i.e., when is_i386() returns True).

@extra_platforms.pytest.skip_i586(*args, **kwargs)

Skip test if current environment is I586 (i.e., when is_i586() returns True).

@extra_platforms.pytest.skip_i686(*args, **kwargs)

Skip test if current environment is I686 (i.e., when is_i686() returns True).

@extra_platforms.pytest.skip_ibm_mainframe(*args, **kwargs)

Skip test if current environment matches any member of the IBM_MAINFRAME group (i.e., when is_ibm_mainframe() returns True).

@extra_platforms.pytest.skip_ibm_powerkvm(*args, **kwargs)

Skip test if current environment is IBM_POWERKVM (i.e., when is_ibm_powerkvm() returns True).

@extra_platforms.pytest.skip_illumos(*args, **kwargs)

Skip test if current environment is ILLUMOS (i.e., when is_illumos() returns True).

@extra_platforms.pytest.skip_kvmibm(*args, **kwargs)

Skip test if current environment is KVMIBM (i.e., when is_kvmibm() returns True).

@extra_platforms.pytest.skip_linux(*args, **kwargs)

Skip test if current environment matches any member of the LINUX group (i.e., when is_linux() returns True).

@extra_platforms.pytest.skip_linux_layers(*args, **kwargs)

Skip test if current environment matches any member of the LINUX_LAYERS group (i.e., when is_linux_layers() returns True).

@extra_platforms.pytest.skip_linux_like(*args, **kwargs)

Skip test if current environment matches any member of the LINUX_LIKE group (i.e., when is_linux_like() returns True).

@extra_platforms.pytest.skip_linuxmint(*args, **kwargs)

Skip test if current environment is LINUXMINT (i.e., when is_linuxmint() returns True).

@extra_platforms.pytest.skip_loongarch(*args, **kwargs)

Skip test if current environment matches any member of the LOONGARCH group (i.e., when is_loongarch() returns True).

@extra_platforms.pytest.skip_loongarch64(*args, **kwargs)

Skip test if current environment is LOONGARCH64 (i.e., when is_loongarch64() returns True).

@extra_platforms.pytest.skip_macos(*args, **kwargs)

Skip test if current environment is MACOS (i.e., when is_macos() returns True).

@extra_platforms.pytest.skip_mageia(*args, **kwargs)

Skip test if current environment is MAGEIA (i.e., when is_mageia() returns True).

@extra_platforms.pytest.skip_mandriva(*args, **kwargs)

Skip test if current environment is MANDRIVA (i.e., when is_mandriva() returns True).

@extra_platforms.pytest.skip_midnightbsd(*args, **kwargs)

Skip test if current environment is MIDNIGHTBSD (i.e., when is_midnightbsd() returns True).

@extra_platforms.pytest.skip_mips(*args, **kwargs)

Skip test if current environment is MIPS (i.e., when is_mips() returns True).

@extra_platforms.pytest.skip_mips64(*args, **kwargs)

Skip test if current environment is MIPS64 (i.e., when is_mips64() returns True).

@extra_platforms.pytest.skip_mips64el(*args, **kwargs)

Skip test if current environment is MIPS64EL (i.e., when is_mips64el() returns True).

@extra_platforms.pytest.skip_mipsel(*args, **kwargs)

Skip test if current environment is MIPSEL (i.e., when is_mipsel() returns True).

@extra_platforms.pytest.skip_netbsd(*args, **kwargs)

Skip test if current environment is NETBSD (i.e., when is_netbsd() returns True).

@extra_platforms.pytest.skip_nobara(*args, **kwargs)

Skip test if current environment is NOBARA (i.e., when is_nobara() returns True).

@extra_platforms.pytest.skip_openbsd(*args, **kwargs)

Skip test if current environment is OPENBSD (i.e., when is_openbsd() returns True).

@extra_platforms.pytest.skip_opensuse(*args, **kwargs)

Skip test if current environment is OPENSUSE (i.e., when is_opensuse() returns True).

@extra_platforms.pytest.skip_oracle(*args, **kwargs)

Skip test if current environment is ORACLE (i.e., when is_oracle() returns True).

@extra_platforms.pytest.skip_other_posix(*args, **kwargs)

Skip test if current environment matches any member of the OTHER_POSIX group (i.e., when is_other_posix() returns True).

@extra_platforms.pytest.skip_parallels(*args, **kwargs)

Skip test if current environment is PARALLELS (i.e., when is_parallels() returns True).

@extra_platforms.pytest.skip_pidora(*args, **kwargs)

Skip test if current environment is PIDORA (i.e., when is_pidora() returns True).

@extra_platforms.pytest.skip_powerpc(*args, **kwargs)

Skip test if current environment matches any member of the POWERPC group (i.e., when is_powerpc() returns True).

@extra_platforms.pytest.skip_ppc(*args, **kwargs)

Skip test if current environment is PPC (i.e., when is_ppc() returns True).

@extra_platforms.pytest.skip_ppc64(*args, **kwargs)

Skip test if current environment is PPC64 (i.e., when is_ppc64() returns True).

@extra_platforms.pytest.skip_ppc64le(*args, **kwargs)

Skip test if current environment is PPC64LE (i.e., when is_ppc64le() returns True).

@extra_platforms.pytest.skip_raspbian(*args, **kwargs)

Skip test if current environment is RASPBIAN (i.e., when is_raspbian() returns True).

@extra_platforms.pytest.skip_rhel(*args, **kwargs)

Skip test if current environment is RHEL (i.e., when is_rhel() returns True).

@extra_platforms.pytest.skip_riscv(*args, **kwargs)

Skip test if current environment matches any member of the RISCV group (i.e., when is_riscv() returns True).

@extra_platforms.pytest.skip_riscv32(*args, **kwargs)

Skip test if current environment is RISCV32 (i.e., when is_riscv32() returns True).

@extra_platforms.pytest.skip_riscv64(*args, **kwargs)

Skip test if current environment is RISCV64 (i.e., when is_riscv64() returns True).

@extra_platforms.pytest.skip_rocky(*args, **kwargs)

Skip test if current environment is ROCKY (i.e., when is_rocky() returns True).

@extra_platforms.pytest.skip_s390x(*args, **kwargs)

Skip test if current environment is S390X (i.e., when is_s390x() returns True).

@extra_platforms.pytest.skip_scientific(*args, **kwargs)

Skip test if current environment is SCIENTIFIC (i.e., when is_scientific() returns True).

@extra_platforms.pytest.skip_slackware(*args, **kwargs)

Skip test if current environment is SLACKWARE (i.e., when is_slackware() returns True).

@extra_platforms.pytest.skip_sles(*args, **kwargs)

Skip test if current environment is SLES (i.e., when is_sles() returns True).

@extra_platforms.pytest.skip_solaris(*args, **kwargs)

Skip test if current environment is SOLARIS (i.e., when is_solaris() returns True).

@extra_platforms.pytest.skip_sparc(*args, **kwargs)

Skip test if current environment is SPARC (i.e., when is_sparc() returns True).

@extra_platforms.pytest.skip_sparc64(*args, **kwargs)

Skip test if current environment is SPARC64 (i.e., when is_sparc64() returns True).

@extra_platforms.pytest.skip_sunos(*args, **kwargs)

Skip test if current environment is SUNOS (i.e., when is_sunos() returns True).

@extra_platforms.pytest.skip_system_v(*args, **kwargs)

Skip test if current environment matches any member of the SYSTEM_V group (i.e., when is_system_v() returns True).

@extra_platforms.pytest.skip_teamcity(*args, **kwargs)

Skip test if current environment is TEAMCITY (i.e., when is_teamcity() returns True).

@extra_platforms.pytest.skip_travis_ci(*args, **kwargs)

Skip test if current environment is TRAVIS_CI (i.e., when is_travis_ci() returns True).

@extra_platforms.pytest.skip_tumbleweed(*args, **kwargs)

Skip test if current environment is TUMBLEWEED (i.e., when is_tumbleweed() returns True).

@extra_platforms.pytest.skip_tuxedo(*args, **kwargs)

Skip test if current environment is TUXEDO (i.e., when is_tuxedo() returns True).

@extra_platforms.pytest.skip_ubuntu(*args, **kwargs)

Skip test if current environment is UBUNTU (i.e., when is_ubuntu() returns True).

@extra_platforms.pytest.skip_ultramarine(*args, **kwargs)

Skip test if current environment is ULTRAMARINE (i.e., when is_ultramarine() returns True).

@extra_platforms.pytest.skip_unix(*args, **kwargs)

Skip test if current environment matches any member of the UNIX group (i.e., when is_unix() returns True).

@extra_platforms.pytest.skip_unix_layers(*args, **kwargs)

Skip test if current environment matches any member of the UNIX_LAYERS group (i.e., when is_unix_layers() returns True).

@extra_platforms.pytest.skip_unix_not_macos(*args, **kwargs)

Skip test if current environment matches any member of the UNIX_WITHOUT_MACOS group (i.e., when is_unix_not_macos() returns True).

@extra_platforms.pytest.skip_unknown(*args, **kwargs)

Skip test if current environment matches any member of the UNKNOWN group (i.e., when is_unknown() returns True).

@extra_platforms.pytest.skip_unknown_architecture(*args, **kwargs)

Skip test if current environment is UNKNOWN_ARCHITECTURE (i.e., when is_unknown_architecture() returns True).

@extra_platforms.pytest.skip_unknown_ci(*args, **kwargs)

Skip test if current environment is UNKNOWN_CI (i.e., when is_unknown_ci() returns True).

@extra_platforms.pytest.skip_unknown_platform(*args, **kwargs)

Skip test if current environment is UNKNOWN_PLATFORM (i.e., when is_unknown_platform() returns True).

@extra_platforms.pytest.skip_wasm32(*args, **kwargs)

Skip test if current environment is WASM32 (i.e., when is_wasm32() returns True).

@extra_platforms.pytest.skip_wasm64(*args, **kwargs)

Skip test if current environment is WASM64 (i.e., when is_wasm64() returns True).

@extra_platforms.pytest.skip_webassembly(*args, **kwargs)

Skip test if current environment matches any member of the WEBASSEMBLY group (i.e., when is_webassembly() returns True).

@extra_platforms.pytest.skip_windows(*args, **kwargs)

Skip test if current environment is WINDOWS (i.e., when is_windows() returns True).

@extra_platforms.pytest.skip_wsl1(*args, **kwargs)

Skip test if current environment is WSL1 (i.e., when is_wsl1() returns True).

@extra_platforms.pytest.skip_wsl2(*args, **kwargs)

Skip test if current environment is WSL2 (i.e., when is_wsl2() returns True).

@extra_platforms.pytest.skip_x86(*args, **kwargs)

Skip test if current environment matches any member of the X86 group (i.e., when is_x86() returns True).

@extra_platforms.pytest.skip_x86_64(*args, **kwargs)

Skip test if current environment is X86_64 (i.e., when is_x86_64() returns True).

@extra_platforms.pytest.skip_xenserver(*args, **kwargs)

Skip test if current environment is XENSERVER (i.e., when is_xenserver() returns True).

Unless decorators

@extra_platforms.pytest.unless_aarch64(*args, **kwargs)

Run test only if current environment is AARCH64 (i.e., when is_aarch64() returns True). Skip otherwise.

@extra_platforms.pytest.unless_aix(*args, **kwargs)

Run test only if current environment is AIX (i.e., when is_aix() returns True). Skip otherwise.

@extra_platforms.pytest.unless_any_architecture(*args, **kwargs)

Run test only if current environment matches any member of the ALL_ARCHITECTURES group (i.e., when is_any_architecture() returns True). Skip otherwise.

@extra_platforms.pytest.unless_any_arm(*args, **kwargs)

Run test only if current environment matches any member of the ALL_ARM group (i.e., when is_any_arm() returns True). Skip otherwise.

@extra_platforms.pytest.unless_any_ci(*args, **kwargs)

Run test only if current environment matches any member of the ALL_CI group (i.e., when is_any_ci() returns True). Skip otherwise.

@extra_platforms.pytest.unless_any_mips(*args, **kwargs)

Run test only if current environment matches any member of the ALL_MIPS group (i.e., when is_any_mips() returns True). Skip otherwise.

@extra_platforms.pytest.unless_any_platform(*args, **kwargs)

Run test only if current environment matches any member of the ALL_PLATFORMS group (i.e., when is_any_platform() returns True). Skip otherwise.

@extra_platforms.pytest.unless_any_sparc(*args, **kwargs)

Run test only if current environment matches any member of the ALL_SPARC group (i.e., when is_any_sparc() returns True). Skip otherwise.

@extra_platforms.pytest.unless_any_trait(*args, **kwargs)

Run test only if current environment matches any member of the ALL_TRAITS group (i.e., when is_any_trait() returns True). Skip otherwise.

@extra_platforms.pytest.unless_any_windows(*args, **kwargs)

Run test only if current environment matches any member of the ALL_WINDOWS group (i.e., when is_any_windows() returns True). Skip otherwise.

@extra_platforms.pytest.unless_altlinux(*args, **kwargs)

Run test only if current environment is ALTLINUX (i.e., when is_altlinux() returns True). Skip otherwise.

@extra_platforms.pytest.unless_amzn(*args, **kwargs)

Run test only if current environment is AMZN (i.e., when is_amzn() returns True). Skip otherwise.

@extra_platforms.pytest.unless_android(*args, **kwargs)

Run test only if current environment is ANDROID (i.e., when is_android() returns True). Skip otherwise.

@extra_platforms.pytest.unless_arch(*args, **kwargs)

Run test only if current environment is ARCH (i.e., when is_arch() returns True). Skip otherwise.

@extra_platforms.pytest.unless_arch_32_bit(*args, **kwargs)

Run test only if current environment matches any member of the ARCH_32_BIT group (i.e., when is_arch_32_bit() returns True). Skip otherwise.

@extra_platforms.pytest.unless_arch_64_bit(*args, **kwargs)

Run test only if current environment matches any member of the ARCH_64_BIT group (i.e., when is_arch_64_bit() returns True). Skip otherwise.

@extra_platforms.pytest.unless_arm(*args, **kwargs)

Run test only if current environment is ARM (i.e., when is_arm() returns True). Skip otherwise.

@extra_platforms.pytest.unless_armv5tel(*args, **kwargs)

Run test only if current environment is ARMV5TEL (i.e., when is_armv5tel() returns True). Skip otherwise.

@extra_platforms.pytest.unless_armv6l(*args, **kwargs)

Run test only if current environment is ARMV6L (i.e., when is_armv6l() returns True). Skip otherwise.

@extra_platforms.pytest.unless_armv7l(*args, **kwargs)

Run test only if current environment is ARMV7L (i.e., when is_armv7l() returns True). Skip otherwise.

@extra_platforms.pytest.unless_armv8l(*args, **kwargs)

Run test only if current environment is ARMV8L (i.e., when is_armv8l() returns True). Skip otherwise.

@extra_platforms.pytest.unless_azure_pipelines(*args, **kwargs)

Run test only if current environment is AZURE_PIPELINES (i.e., when is_azure_pipelines() returns True). Skip otherwise.

@extra_platforms.pytest.unless_bamboo(*args, **kwargs)

Run test only if current environment is BAMBOO (i.e., when is_bamboo() returns True). Skip otherwise.

@extra_platforms.pytest.unless_bsd(*args, **kwargs)

Run test only if current environment matches any member of the BSD group (i.e., when is_bsd() returns True). Skip otherwise.

@extra_platforms.pytest.unless_bsd_not_macos(*args, **kwargs)

Run test only if current environment matches any member of the BSD_WITHOUT_MACOS group (i.e., when is_bsd_not_macos() returns True). Skip otherwise.

@extra_platforms.pytest.unless_buildkite(*args, **kwargs)

Run test only if current environment is BUILDKITE (i.e., when is_buildkite() returns True). Skip otherwise.

@extra_platforms.pytest.unless_buildroot(*args, **kwargs)

Run test only if current environment is BUILDROOT (i.e., when is_buildroot() returns True). Skip otherwise.

@extra_platforms.pytest.unless_cachyos(*args, **kwargs)

Run test only if current environment is CACHYOS (i.e., when is_cachyos() returns True). Skip otherwise.

@extra_platforms.pytest.unless_centos(*args, **kwargs)

Run test only if current environment is CENTOS (i.e., when is_centos() returns True). Skip otherwise.

@extra_platforms.pytest.unless_circle_ci(*args, **kwargs)

Run test only if current environment is CIRCLE_CI (i.e., when is_circle_ci() returns True). Skip otherwise.

@extra_platforms.pytest.unless_cirrus_ci(*args, **kwargs)

Run test only if current environment is CIRRUS_CI (i.e., when is_cirrus_ci() returns True). Skip otherwise.

@extra_platforms.pytest.unless_cloudlinux(*args, **kwargs)

Run test only if current environment is CLOUDLINUX (i.e., when is_cloudlinux() returns True). Skip otherwise.

@extra_platforms.pytest.unless_codebuild(*args, **kwargs)

Run test only if current environment is CODEBUILD (i.e., when is_codebuild() returns True). Skip otherwise.

@extra_platforms.pytest.unless_cygwin(*args, **kwargs)

Run test only if current environment is CYGWIN (i.e., when is_cygwin() returns True). Skip otherwise.

@extra_platforms.pytest.unless_debian(*args, **kwargs)

Run test only if current environment is DEBIAN (i.e., when is_debian() returns True). Skip otherwise.

@extra_platforms.pytest.unless_dragonfly_bsd(*args, **kwargs)

Run test only if current environment is DRAGONFLY_BSD (i.e., when is_dragonfly_bsd() returns True). Skip otherwise.

@extra_platforms.pytest.unless_exherbo(*args, **kwargs)

Run test only if current environment is EXHERBO (i.e., when is_exherbo() returns True). Skip otherwise.

@extra_platforms.pytest.unless_fedora(*args, **kwargs)

Run test only if current environment is FEDORA (i.e., when is_fedora() returns True). Skip otherwise.

@extra_platforms.pytest.unless_freebsd(*args, **kwargs)

Run test only if current environment is FREEBSD (i.e., when is_freebsd() returns True). Skip otherwise.

@extra_platforms.pytest.unless_gentoo(*args, **kwargs)

Run test only if current environment is GENTOO (i.e., when is_gentoo() returns True). Skip otherwise.

@extra_platforms.pytest.unless_github_ci(*args, **kwargs)

Run test only if current environment is GITHUB_CI (i.e., when is_github_ci() returns True). Skip otherwise.

@extra_platforms.pytest.unless_gitlab_ci(*args, **kwargs)

Run test only if current environment is GITLAB_CI (i.e., when is_gitlab_ci() returns True). Skip otherwise.

@extra_platforms.pytest.unless_guix(*args, **kwargs)

Run test only if current environment is GUIX (i.e., when is_guix() returns True). Skip otherwise.

@extra_platforms.pytest.unless_haiku(*args, **kwargs)

Run test only if current environment is HAIKU (i.e., when is_haiku() returns True). Skip otherwise.

@extra_platforms.pytest.unless_heroku_ci(*args, **kwargs)

Run test only if current environment is HEROKU_CI (i.e., when is_heroku_ci() returns True). Skip otherwise.

@extra_platforms.pytest.unless_hurd(*args, **kwargs)

Run test only if current environment is HURD (i.e., when is_hurd() returns True). Skip otherwise.

@extra_platforms.pytest.unless_i386(*args, **kwargs)

Run test only if current environment is I386 (i.e., when is_i386() returns True). Skip otherwise.

@extra_platforms.pytest.unless_i586(*args, **kwargs)

Run test only if current environment is I586 (i.e., when is_i586() returns True). Skip otherwise.

@extra_platforms.pytest.unless_i686(*args, **kwargs)

Run test only if current environment is I686 (i.e., when is_i686() returns True). Skip otherwise.

@extra_platforms.pytest.unless_ibm_mainframe(*args, **kwargs)

Run test only if current environment matches any member of the IBM_MAINFRAME group (i.e., when is_ibm_mainframe() returns True). Skip otherwise.

@extra_platforms.pytest.unless_ibm_powerkvm(*args, **kwargs)

Run test only if current environment is IBM_POWERKVM (i.e., when is_ibm_powerkvm() returns True). Skip otherwise.

@extra_platforms.pytest.unless_illumos(*args, **kwargs)

Run test only if current environment is ILLUMOS (i.e., when is_illumos() returns True). Skip otherwise.

@extra_platforms.pytest.unless_kvmibm(*args, **kwargs)

Run test only if current environment is KVMIBM (i.e., when is_kvmibm() returns True). Skip otherwise.

@extra_platforms.pytest.unless_linux(*args, **kwargs)

Run test only if current environment matches any member of the LINUX group (i.e., when is_linux() returns True). Skip otherwise.

@extra_platforms.pytest.unless_linux_layers(*args, **kwargs)

Run test only if current environment matches any member of the LINUX_LAYERS group (i.e., when is_linux_layers() returns True). Skip otherwise.

@extra_platforms.pytest.unless_linux_like(*args, **kwargs)

Run test only if current environment matches any member of the LINUX_LIKE group (i.e., when is_linux_like() returns True). Skip otherwise.

@extra_platforms.pytest.unless_linuxmint(*args, **kwargs)

Run test only if current environment is LINUXMINT (i.e., when is_linuxmint() returns True). Skip otherwise.

@extra_platforms.pytest.unless_loongarch(*args, **kwargs)

Run test only if current environment matches any member of the LOONGARCH group (i.e., when is_loongarch() returns True). Skip otherwise.

@extra_platforms.pytest.unless_loongarch64(*args, **kwargs)

Run test only if current environment is LOONGARCH64 (i.e., when is_loongarch64() returns True). Skip otherwise.

@extra_platforms.pytest.unless_macos(*args, **kwargs)

Run test only if current environment is MACOS (i.e., when is_macos() returns True). Skip otherwise.

@extra_platforms.pytest.unless_mageia(*args, **kwargs)

Run test only if current environment is MAGEIA (i.e., when is_mageia() returns True). Skip otherwise.

@extra_platforms.pytest.unless_mandriva(*args, **kwargs)

Run test only if current environment is MANDRIVA (i.e., when is_mandriva() returns True). Skip otherwise.

@extra_platforms.pytest.unless_midnightbsd(*args, **kwargs)

Run test only if current environment is MIDNIGHTBSD (i.e., when is_midnightbsd() returns True). Skip otherwise.

@extra_platforms.pytest.unless_mips(*args, **kwargs)

Run test only if current environment is MIPS (i.e., when is_mips() returns True). Skip otherwise.

@extra_platforms.pytest.unless_mips64(*args, **kwargs)

Run test only if current environment is MIPS64 (i.e., when is_mips64() returns True). Skip otherwise.

@extra_platforms.pytest.unless_mips64el(*args, **kwargs)

Run test only if current environment is MIPS64EL (i.e., when is_mips64el() returns True). Skip otherwise.

@extra_platforms.pytest.unless_mipsel(*args, **kwargs)

Run test only if current environment is MIPSEL (i.e., when is_mipsel() returns True). Skip otherwise.

@extra_platforms.pytest.unless_netbsd(*args, **kwargs)

Run test only if current environment is NETBSD (i.e., when is_netbsd() returns True). Skip otherwise.

@extra_platforms.pytest.unless_nobara(*args, **kwargs)

Run test only if current environment is NOBARA (i.e., when is_nobara() returns True). Skip otherwise.

@extra_platforms.pytest.unless_openbsd(*args, **kwargs)

Run test only if current environment is OPENBSD (i.e., when is_openbsd() returns True). Skip otherwise.

@extra_platforms.pytest.unless_opensuse(*args, **kwargs)

Run test only if current environment is OPENSUSE (i.e., when is_opensuse() returns True). Skip otherwise.

@extra_platforms.pytest.unless_oracle(*args, **kwargs)

Run test only if current environment is ORACLE (i.e., when is_oracle() returns True). Skip otherwise.

@extra_platforms.pytest.unless_other_posix(*args, **kwargs)

Run test only if current environment matches any member of the OTHER_POSIX group (i.e., when is_other_posix() returns True). Skip otherwise.

@extra_platforms.pytest.unless_parallels(*args, **kwargs)

Run test only if current environment is PARALLELS (i.e., when is_parallels() returns True). Skip otherwise.

@extra_platforms.pytest.unless_pidora(*args, **kwargs)

Run test only if current environment is PIDORA (i.e., when is_pidora() returns True). Skip otherwise.

@extra_platforms.pytest.unless_powerpc(*args, **kwargs)

Run test only if current environment matches any member of the POWERPC group (i.e., when is_powerpc() returns True). Skip otherwise.

@extra_platforms.pytest.unless_ppc(*args, **kwargs)

Run test only if current environment is PPC (i.e., when is_ppc() returns True). Skip otherwise.

@extra_platforms.pytest.unless_ppc64(*args, **kwargs)

Run test only if current environment is PPC64 (i.e., when is_ppc64() returns True). Skip otherwise.

@extra_platforms.pytest.unless_ppc64le(*args, **kwargs)

Run test only if current environment is PPC64LE (i.e., when is_ppc64le() returns True). Skip otherwise.

@extra_platforms.pytest.unless_raspbian(*args, **kwargs)

Run test only if current environment is RASPBIAN (i.e., when is_raspbian() returns True). Skip otherwise.

@extra_platforms.pytest.unless_rhel(*args, **kwargs)

Run test only if current environment is RHEL (i.e., when is_rhel() returns True). Skip otherwise.

@extra_platforms.pytest.unless_riscv(*args, **kwargs)

Run test only if current environment matches any member of the RISCV group (i.e., when is_riscv() returns True). Skip otherwise.

@extra_platforms.pytest.unless_riscv32(*args, **kwargs)

Run test only if current environment is RISCV32 (i.e., when is_riscv32() returns True). Skip otherwise.

@extra_platforms.pytest.unless_riscv64(*args, **kwargs)

Run test only if current environment is RISCV64 (i.e., when is_riscv64() returns True). Skip otherwise.

@extra_platforms.pytest.unless_rocky(*args, **kwargs)

Run test only if current environment is ROCKY (i.e., when is_rocky() returns True). Skip otherwise.

@extra_platforms.pytest.unless_s390x(*args, **kwargs)

Run test only if current environment is S390X (i.e., when is_s390x() returns True). Skip otherwise.

@extra_platforms.pytest.unless_scientific(*args, **kwargs)

Run test only if current environment is SCIENTIFIC (i.e., when is_scientific() returns True). Skip otherwise.

@extra_platforms.pytest.unless_slackware(*args, **kwargs)

Run test only if current environment is SLACKWARE (i.e., when is_slackware() returns True). Skip otherwise.

@extra_platforms.pytest.unless_sles(*args, **kwargs)

Run test only if current environment is SLES (i.e., when is_sles() returns True). Skip otherwise.

@extra_platforms.pytest.unless_solaris(*args, **kwargs)

Run test only if current environment is SOLARIS (i.e., when is_solaris() returns True). Skip otherwise.

@extra_platforms.pytest.unless_sparc(*args, **kwargs)

Run test only if current environment is SPARC (i.e., when is_sparc() returns True). Skip otherwise.

@extra_platforms.pytest.unless_sparc64(*args, **kwargs)

Run test only if current environment is SPARC64 (i.e., when is_sparc64() returns True). Skip otherwise.

@extra_platforms.pytest.unless_sunos(*args, **kwargs)

Run test only if current environment is SUNOS (i.e., when is_sunos() returns True). Skip otherwise.

@extra_platforms.pytest.unless_system_v(*args, **kwargs)

Run test only if current environment matches any member of the SYSTEM_V group (i.e., when is_system_v() returns True). Skip otherwise.

@extra_platforms.pytest.unless_teamcity(*args, **kwargs)

Run test only if current environment is TEAMCITY (i.e., when is_teamcity() returns True). Skip otherwise.

@extra_platforms.pytest.unless_travis_ci(*args, **kwargs)

Run test only if current environment is TRAVIS_CI (i.e., when is_travis_ci() returns True). Skip otherwise.

@extra_platforms.pytest.unless_tumbleweed(*args, **kwargs)

Run test only if current environment is TUMBLEWEED (i.e., when is_tumbleweed() returns True). Skip otherwise.

@extra_platforms.pytest.unless_tuxedo(*args, **kwargs)

Run test only if current environment is TUXEDO (i.e., when is_tuxedo() returns True). Skip otherwise.

@extra_platforms.pytest.unless_ubuntu(*args, **kwargs)

Run test only if current environment is UBUNTU (i.e., when is_ubuntu() returns True). Skip otherwise.

@extra_platforms.pytest.unless_ultramarine(*args, **kwargs)

Run test only if current environment is ULTRAMARINE (i.e., when is_ultramarine() returns True). Skip otherwise.

@extra_platforms.pytest.unless_unix(*args, **kwargs)

Run test only if current environment matches any member of the UNIX group (i.e., when is_unix() returns True). Skip otherwise.

@extra_platforms.pytest.unless_unix_layers(*args, **kwargs)

Run test only if current environment matches any member of the UNIX_LAYERS group (i.e., when is_unix_layers() returns True). Skip otherwise.

@extra_platforms.pytest.unless_unix_not_macos(*args, **kwargs)

Run test only if current environment matches any member of the UNIX_WITHOUT_MACOS group (i.e., when is_unix_not_macos() returns True). Skip otherwise.

@extra_platforms.pytest.unless_unknown(*args, **kwargs)

Run test only if current environment matches any member of the UNKNOWN group (i.e., when is_unknown() returns True). Skip otherwise.

@extra_platforms.pytest.unless_unknown_architecture(*args, **kwargs)

Run test only if current environment is UNKNOWN_ARCHITECTURE (i.e., when is_unknown_architecture() returns True). Skip otherwise.

@extra_platforms.pytest.unless_unknown_ci(*args, **kwargs)

Run test only if current environment is UNKNOWN_CI (i.e., when is_unknown_ci() returns True). Skip otherwise.

@extra_platforms.pytest.unless_unknown_platform(*args, **kwargs)

Run test only if current environment is UNKNOWN_PLATFORM (i.e., when is_unknown_platform() returns True). Skip otherwise.

@extra_platforms.pytest.unless_wasm32(*args, **kwargs)

Run test only if current environment is WASM32 (i.e., when is_wasm32() returns True). Skip otherwise.

@extra_platforms.pytest.unless_wasm64(*args, **kwargs)

Run test only if current environment is WASM64 (i.e., when is_wasm64() returns True). Skip otherwise.

@extra_platforms.pytest.unless_webassembly(*args, **kwargs)

Run test only if current environment matches any member of the WEBASSEMBLY group (i.e., when is_webassembly() returns True). Skip otherwise.

@extra_platforms.pytest.unless_windows(*args, **kwargs)

Run test only if current environment is WINDOWS (i.e., when is_windows() returns True). Skip otherwise.

@extra_platforms.pytest.unless_wsl1(*args, **kwargs)

Run test only if current environment is WSL1 (i.e., when is_wsl1() returns True). Skip otherwise.

@extra_platforms.pytest.unless_wsl2(*args, **kwargs)

Run test only if current environment is WSL2 (i.e., when is_wsl2() returns True). Skip otherwise.

@extra_platforms.pytest.unless_x86(*args, **kwargs)

Run test only if current environment matches any member of the X86 group (i.e., when is_x86() returns True). Skip otherwise.

@extra_platforms.pytest.unless_x86_64(*args, **kwargs)

Run test only if current environment is X86_64 (i.e., when is_x86_64() returns True). Skip otherwise.

@extra_platforms.pytest.unless_xenserver(*args, **kwargs)

Run test only if current environment is XENSERVER (i.e., when is_xenserver() returns True). Skip otherwise.