suou/tests/test_color.py

37 lines
1.5 KiB
Python
Raw Normal View History

2025-11-10 17:18:13 +01:00
import unittest
from suou import RGBColor, chalk
from suou.color import OKLCHColor
2025-11-10 17:18:13 +01:00
class TestColor(unittest.TestCase):
def setUp(self) -> None:
...
def tearDown(self) -> None:
...
def test_chalk_colors(self):
strg = "The quick brown fox jumps over the lazy dog"
self.assertEqual(f'\x1b[31m{strg}\x1b[39m', chalk.red(strg))
self.assertEqual(f'\x1b[32m{strg}\x1b[39m', chalk.green(strg))
self.assertEqual(f'\x1b[34m{strg}\x1b[39m', chalk.blue(strg))
self.assertEqual(f'\x1b[36m{strg}\x1b[39m', chalk.cyan(strg))
self.assertEqual(f'\x1b[33m{strg}\x1b[39m', chalk.yellow(strg))
self.assertEqual(f'\x1b[35m{strg}\x1b[39m', chalk.purple(strg))
def test_chalk_bold(self):
strg = "The quick brown fox jumps over the lazy dog"
self.assertEqual(f'\x1b[1m{strg}\x1b[22m', chalk.bold(strg))
self.assertEqual(f'\x1b[2m{strg}\x1b[22m', chalk.faint(strg))
self.assertEqual(f'\x1b[1m\x1b[33m{strg}\x1b[39m\x1b[22m', chalk.bold.yellow(strg))
def test_oklch_to_rgb(self):
self.assertEqual(OKLCHColor(0.628, 0.2577, 29.23).to_rgb(), RGBColor(255, 0, 0))
self.assertEqual(OKLCHColor(0.7653, 0.1306, 194.77).to_rgb(), RGBColor(0, 204, 204))
self.assertEqual(OKLCHColor(0.5932, 0., 0.).to_rgb(), RGBColor(126, 126, 126))
def test_rgb_to_oklch(self):
self.assertEqual(RGBColor(222, 62, 45).to_oklch(), OKLCHColor(0.6,0.2, 30.))
self.assertEqual(RGBColor(156, 123, 49).to_oklch(), OKLCHColor(.6, .1, 85.))