rich/tests/test_emoji.py

38 lines
949 B
Python
Raw Normal View History

2019-12-11 19:03:55 +00:00
import pytest
from rich.emoji import Emoji, NoEmoji
2020-07-16 16:24:16 +00:00
from .render import render
2020-04-02 15:59:44 +00:00
2019-12-11 19:03:55 +00:00
def test_no_emoji():
with pytest.raises(NoEmoji):
Emoji("ambivalent_bunny")
def test_str_repr():
assert str(Emoji("pile_of_poo")) == "💩"
assert repr(Emoji("pile_of_poo")) == "<emoji 'pile_of_poo'>"
def test_replace():
assert Emoji.replace("my code is :pile_of_poo:") == "my code is 💩"
2019-12-24 13:43:55 +00:00
2020-04-02 15:59:44 +00:00
def test_render():
render_result = render(Emoji("pile_of_poo"))
assert render_result == "💩"
2021-07-12 18:09:08 +00:00
def test_variant():
print(repr(Emoji.replace(":warning:")))
assert Emoji.replace(":warning:") == ""
assert Emoji.replace(":warning-text:") == "" + "\uFE0E"
assert Emoji.replace(":warning-emoji:") == "" + "\uFE0F"
assert Emoji.replace(":warning-foo:") == ":warning-foo:"
def test_variant_non_default():
render_result = render(Emoji("warning", variant="emoji"))
assert render_result == "" + "\uFE0F"