Beispiel #1
0
def testrender_node__cycle_point():
    """It renders cycle points."""
    assert render_node(
        None,
        {'id': 'myid'},
        'cycle_point'
    ) == 'myid'
Beispiel #2
0
def testrender_node__task__running():
    """It renders running tasks."""
    child = Mock()
    child.get_value = lambda: {'data': {
        'startedTime': get_current_time_string(),
        'state': 'running'
    }}
    node = Mock()
    node.get_child_node = lambda _: child
    assert render_node(
        node,
        {
            'name': 'foo',
            'state': 'running',
            'isHeld': False,
            'isQueued': False,
            'task': {'meanElapsedTime': 100}
        },
        'task'
    ) == [
        TASK_ICONS['running'],
        ' ',
        ('job_running', JOB_ICON),
        ' ',
        'foo'
    ]
Beispiel #3
0
def testrender_node__job():
    """It renders job nodes."""
    assert render_node(
        None,
        {'state': 'succeeded', 'submitNum': 1},
        'job'
    ) == [
        '#01 ',
        [('job_succeeded', JOB_ICON)]
    ]
Beispiel #4
0
def testrender_node__job_info():
    """It renders job information nodes."""
    assert render_node(
        None,
        {'a': 1, 'b': 2},
        'job_info'
    ) == [
        'a  1\n',
        'b  2'
    ]
Beispiel #5
0
def testrender_node__family():
    """It renders families."""
    assert render_node(
        None, {
            'state': 'succeeded',
            'isHeld': False,
            'isQueued': False,
            'isRunahead': False,
            'id': 'myid'
        }, 'family') == [[TASK_ICONS['succeeded']], ' ', 'myid']
Beispiel #6
0
def testrender_node__task__succeeded():
    """It renders tasks."""
    node = Mock()
    node.get_child_node = lambda _: None
    assert render_node(
        node, {
            'name': 'foo',
            'state': 'succeeded',
            'isHeld': False,
            'isQueued': False,
            'isRunahead': False
        }, 'task') == [TASK_ICONS['succeeded'], ' ', 'foo']
Beispiel #7
0
    def get_display_text(self):
        """Compute the text to display for a given node.

        Returns:
            (object) - Text content for the urwid.Text widget,
            may be a string, tuple or list, see urwid docs.

        """
        node = self.get_node()
        value = node.get_value()
        data = value['data']
        type_ = value['type_']
        return render_node(node, data, type_)