def test_get_ansi_color(self, _): """Very basic test cases for `get_ansi_color` static method""" self.assertEqual( Distributions.get_ansi_color(), '33;1', ) self.assertIsNone(Distributions.get_ansi_color())
def __init__(self, **kwargs): # Fetches passed arguments. self._format_to_json = kwargs.get('format_to_json') # type: int try: # If set, force the distribution to `preferred_distribution` argument. self._distribution = Distributions(kwargs.get('preferred_distribution')) except ValueError: # If not (or unknown), run distribution detection. self._distribution = Distributions.run_detection() # Retrieve distribution's logo module before copying and DRY-ing its attributes. logo_module = lazy_load_logo_module(self._distribution.value) self._logo, self._colors = logo_module.LOGO.copy(), logo_module.COLORS.copy() # If `os-release`'s `ANSI_COLOR` option is set, honor it. ansi_color = Distributions.get_ansi_color() if ansi_color and Configuration().get('honor_ansi_color'): # Replace each Archey integrated colors by `ANSI_COLOR`. self._colors = len(self._colors) * [Colors.escape_code_from_attrs(ansi_color)] # Each entry will be added to this list self._entries = [] # Each class output will be added in the list below afterwards self._results = []
def __init__(self, **kwargs): # Fetches passed arguments. self._format_to_json = kwargs.get('format_to_json') try: # If set, force the distribution to `preferred_distribution` argument. self._distribution = Distributions( kwargs.get('preferred_distribution')) except ValueError: # If not (or unknown), run distribution detection. self._distribution = Distributions.run_detection() # Fetch the colors palette related to this distribution. self._colors_palette = COLORS_DICT[self._distribution] # If `os-release`'s `ANSI_COLOR` option is set, honor it. ansi_color = Distributions.get_ansi_color() if ansi_color and Configuration().get( 'colors_palette')['honor_ansi_color']: # Replace each Archey integrated colors by `ANSI_COLOR`. self._colors_palette = len(self._colors_palette) * \ [Colors.escape_code_from_attrs(ansi_color)] # Each entry will be added to this list self._entries = [] # Each class output will be added in the list below afterwards self._results = []
def __init__(self, **kwargs): # Fetches passed arguments. self._format_to_json = kwargs.get('format_to_json') preferred_logo_style = (kwargs.get('preferred_logo_style') or '').upper() try: # If set, force the distribution to `preferred_distribution` argument. self._distribution = Distributions( kwargs.get('preferred_distribution')) except ValueError: # If not (or unknown), run distribution detection. self._distribution = Distributions.get_local() # Retrieve distribution's logo module before copying and DRY-ing its attributes. logo_module = lazy_load_logo_module(self._distribution.value) # If set and available, fetch an alternative logo style from module. if preferred_logo_style and hasattr(logo_module, f"LOGO_{preferred_logo_style}"): self._logo = getattr(logo_module, f"LOGO_{preferred_logo_style}").copy() self._colors = getattr(logo_module, f"COLORS_{preferred_logo_style}").copy() else: self._logo, self._colors = logo_module.LOGO.copy( ), logo_module.COLORS.copy() configuration = Configuration() # If `os-release`'s `ANSI_COLOR` option is set, honor it. ansi_color = Distributions.get_ansi_color() if ansi_color and configuration.get("honor_ansi_color"): # Replace each Archey integrated colors by `ANSI_COLOR`. self._colors = len( self._colors) * [Colors.escape_code_from_attrs(ansi_color)] entries_color = configuration.get("entries_color") self._entries_color = (Colors.escape_code_from_attrs(entries_color) if entries_color else self._colors[0]) # Each entry will be added to this list self._entries = [] # Each class output will be added in the list below afterwards self._results = []