1from __future__ import unicode_literals
2
3from prompt_toolkit.input import DummyInput
4from prompt_toolkit.output import DummyOutput
5
6from .application import Application
7
8__all__ = [
9    'DummyApplication',
10]
11
12
13class DummyApplication(Application):
14    """
15    When no :class:`.Application` is running,
16    :func:`.get_app` will run an instance of this :class:`.DummyApplication` instead.
17    """
18    def __init__(self):
19        super(DummyApplication, self).__init__(output=DummyOutput(), input=DummyInput())
20
21    def run(self):
22        raise NotImplementedError('A DummyApplication is not supposed to run.')
23
24    def run_async(self):
25        raise NotImplementedError('A DummyApplication is not supposed to run.')
26
27    def run_system_command(self):
28        raise NotImplementedError
29
30    def suspend_to_background(self):
31        raise NotImplementedError
32