# Path: yaspin/constants.py
# COLOR_MAP = {
#     # name: type
#     "blink": "attrs",
#     "bold": "attrs",
#     "concealed": "attrs",
#     "dark": "attrs",
#     "reverse": "attrs",
#     "underline": "attrs",
#     "blue": "color",
#     "cyan": "color",
#     "green": "color",
#     "magenta": "color",
#     "red": "color",
#     "white": "color",
#     "yellow": "color",
#     "on_blue": "on_color",
#     "on_cyan": "on_color",
#     "on_green": "on_color",
#     "on_grey": "on_color",
#     "on_magenta": "on_color",
#     "on_red": "on_color",
#     "on_white": "on_color",
#     "on_yellow": "on_color",
# }
# 
# Path: yaspin/signal_handlers.py
# def default_handler(signum, frame, spinner):  # pylint: disable=unused-argument
#     """Signal handler, used to gracefully shut down the ``spinner`` instance
#     when specified signal is received by the process running the ``spinner``.
# 
#     ``signum`` and ``frame`` are mandatory arguments. Check ``signal.signal``
#     function for more details.
#     """
#     spinner.fail()
#     spinner.stop()
#     sys.exit(0)
# 
# def fancy_handler(signum, frame, spinner):  # pylint: disable=unused-argument
#     """Signal handler, used to gracefully shut down the ``spinner`` instance
#     when specified signal is received by the process running the ``spinner``.
# 
#     ``signum`` and ``frame`` are mandatory arguments. Check ``signal.signal``
#     function for more details.
#     """
#     spinner.red.fail("✘")
#     spinner.stop()
#     sys.exit(0)


import signal
import sys
import pytest
from yaspin.constants import COLOR_MAP
from yaspin.signal_handlers import default_handler, fancy_handler
        (["Dark"], ValueError()),
        (["bold", "bar"], ValueError()),
    ],
)
def attrs_test_cases(request):
    return request.param


@pytest.fixture(
    scope="session",
    ids=color_id_func,
    params=sorted([k for k, v in COLOR_MAP.items() if v == "color"]),
)
def supported_colors(request):
    return request.param


@pytest.fixture(
    scope="session",
    ids=color_id_func,
    params=sorted([k for k, v in COLOR_MAP.items() if v == "on_color"]),
)
def supported_highlights(request):
    return request.param


@pytest.fixture(
    scope="session",
    ids=attrs_id_func,
    params=sorted(

# Path: yaspin/constants.py
# COLOR_MAP = {
#     # name: type
#     "blink": "attrs",
#     "bold": "attrs",
#     "concealed": "attrs",
#     "dark": "attrs",
#     "reverse": "attrs",
#     "underline": "attrs",
#     "blue": "color",
#     "cyan": "color",
#     "green": "color",
#     "magenta": "color",
#     "red": "color",
#     "white": "color",
#     "yellow": "color",
#     "on_blue": "on_color",
#     "on_cyan": "on_color",
#     "on_green": "on_color",
#     "on_grey": "on_color",
#     "on_magenta": "on_color",
#     "on_red": "on_color",
#     "on_white": "on_color",
#     "on_yellow": "on_color",
# }
# 
# Path: yaspin/signal_handlers.py
# def default_handler(signum, frame, spinner):  # pylint: disable=unused-argument
#     """Signal handler, used to gracefully shut down the ``spinner`` instance
#     when specified signal is received by the process running the ``spinner``.
# 
#     ``signum`` and ``frame`` are mandatory arguments. Check ``signal.signal``
#     function for more details.
#     """
#     spinner.fail()
#     spinner.stop()
#     sys.exit(0)
# 
# def fancy_handler(signum, frame, spinner):  # pylint: disable=unused-argument
#     """Signal handler, used to gracefully shut down the ``spinner`` instance
#     when specified signal is received by the process running the ``spinner``.
# 
#     ``signum`` and ``frame`` are mandatory arguments. Check ``signal.signal``
#     function for more details.
#     """
#     spinner.red.fail("✘")
#     spinner.stop()
#     sys.exit(0)


# Path: tests/conftest.py
import signal
import sys
import pytest
from yaspin.constants import COLOR_MAP
from yaspin.signal_handlers import default_handler, fancy_handler

        (["Dark"], ValueError()),
        (["bold", "bar"], ValueError()),
    ],
)
def attrs_test_cases(request):
    return request.param


@pytest.fixture(
    scope="session",
    ids=color_id_func,
    params=sorted([k for k, v in COLOR_MAP.items() if v == "color"]),
)
def supported_colors(request):
    return request.param


@pytest.fixture(
    scope="session",
    ids=color_id_func,
    params=sorted([k for k, v in COLOR_MAP.items() if v == "on_color"]),
)
def supported_highlights(request):
    return request.param


@pytest.fixture(
    scope="session",
    ids=attrs_id_func,
    params=sorted(

        [[k] for k, v in COLOR_MAP.items() if v == "attrs"]