12345678910111213141516171819202122232425262728293031323334353637383940 |
- #!/usr/bin/env python3
- #
- # mmgen = Multi-Mode GENerator, command-line Bitcoin cold storage solution
- # Copyright (C)2013-2022 The MMGen Project <mmgen@tuta.io>
- """
- colortest.py: test color handling for the MMGen suite
- """
- import include.tests_header
- from include.common import *
- from mmgen.color import *
- from mmgen.color import _colors
- def test_color():
- init_color()
- gmsg("Parsed terminfo 'colors' values:")
- for t,c in (('rxvt',8),('xterm',8),('rxvt-unicode',88),('screen-256color',256),('xterm-256color',256)):
- ret = get_terminfo_colors(t)
- if ret == None:
- set_vt100()
- ymsg(f'Warning: unable to get info for terminal {t!r}')
- continue
- msg(f'{t}: {ret}')
- assert c == ret, f"'colors' value for terminal {t} ({ret}) does not match expected value of {c}"
- ret = get_terminfo_colors()
- msg(f'This terminal ({os.getenv("TERM")}): {ret}')
- set_vt100()
- gmsg("Terminal display:")
- for desc,n in (('auto','auto'),('8-color',8),('256-color',256),('off',0)):
- init_color(num_colors=n)
- msg('{:9}: {}'.format(
- desc,
- ' '.join(globals()[c](c) for c in sorted(_colors)) ))
- test_color()
|