1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
from __future__ import annotations
import pytest
from prompt_toolkit.styles import AdjustBrightnessStyleTransformation, Attrs
@pytest.fixture
def default_attrs():
return Attrs(
color="",
bgcolor="",
bold=False,
underline=False,
strike=False,
italic=False,
blink=False,
reverse=False,
hidden=False,
)
def test_adjust_brightness_style_transformation(default_attrs):
tr = AdjustBrightnessStyleTransformation(0.5, 1.0)
attrs = tr.transform_attrs(default_attrs._replace(color="ff0000"))
assert attrs.color == "ff7f7f"
attrs = tr.transform_attrs(default_attrs._replace(color="00ffaa"))
assert attrs.color == "7fffd4"
# When a background color is given, nothing should change.
attrs = tr.transform_attrs(default_attrs._replace(color="00ffaa", bgcolor="white"))
assert attrs.color == "00ffaa"
# Test ansi colors.
attrs = tr.transform_attrs(default_attrs._replace(color="ansiblue"))
assert attrs.color == "6666ff"
# Test 'ansidefault'. This shouldn't change.
attrs = tr.transform_attrs(default_attrs._replace(color="ansidefault"))
assert attrs.color == "ansidefault"
# When 0 and 1 are given, don't do any style transformation.
tr2 = AdjustBrightnessStyleTransformation(0, 1)
attrs = tr2.transform_attrs(default_attrs._replace(color="ansiblue"))
assert attrs.color == "ansiblue"
attrs = tr2.transform_attrs(default_attrs._replace(color="00ffaa"))
assert attrs.color == "00ffaa"
|