def test_automatic_spinner(self): """ Test :func:`humanfriendly.AutomaticSpinner`. There's not a lot to test about the :class:`.AutomaticSpinner` class, but by at least running it here we are assured that the code functions on all supported Python versions. :class:`.AutomaticSpinner` is built on top of the :class:`.Spinner` class so at least we also have the tests for the :class:`.Spinner` class to back us up. """ with humanfriendly.AutomaticSpinner('test spinner'): time.sleep(1)
def _wait(label='Waiting', seconds=10, timer=False): """ Suspend execution for given number of seconds while showing a spinner. Args: label (str): The label for the spinner (default: Waiting). seconds (float): Seconds to delay execution (default: 10). timer (bool): Show the elapsed time (default: False). """ with humanfriendly.AutomaticSpinner(label, show_time=timer) as spinner: time.sleep(seconds)
def defineWord(self, word): with humanfriendly.AutomaticSpinner("Loading, this can take awhile for the first time, but repeating the command again will be considerably faster..."): try: blob = Word(word) defs = blob.definitions s = "" if len(defs) > 0: for item in defs[0:4]: s += item.capitalize()+".\n" return s else: return "No result found." except RuntimeError: blob = Word(word) defs = blob.definitions s = "" if len(defs) > 0: for item in defs[0:4]: s += item.capitalize()+".\n" return s else: return "No result found."