node: Allow showing non-lowercase fields (#957)

This commit is contained in:
Marc Abramowitz
2017-04-12 12:13:51 -07:00
committed by tamarrow
parent cbcc2fe36d
commit 9f20ab9a78
2 changed files with 12 additions and 1 deletions

View File

@@ -894,7 +894,7 @@ def node_table(nodes, field_names=()):
heading, field_name = field_name.split(':', 1)
else:
heading = field_name
fields[heading.upper()] = _dotted_itemgetter(field_name.lower())
fields[heading.upper()] = _dotted_itemgetter(field_name)
sortby = list(fields.keys())[0]
tb = table(fields, nodes, sortby=sortby)

View File

@@ -57,6 +57,17 @@ def test_node_table_field_option():
assert lines[0].split() == ['HOSTNAME', 'IP', 'ID', 'TYPE', 'DISK_USED']
def test_node_table_uppercase_field_option():
returncode, stdout, stderr = exec_command(
['dcos', 'node', '--field=TASK_RUNNING'])
assert returncode == 0
assert stderr == b''
lines = stdout.decode('utf-8').splitlines()
assert len(lines) > 2
assert lines[0].split() == ['HOSTNAME', 'IP', 'ID', 'TYPE', 'TASK_RUNNING']
def test_node_log_empty():
stderr = b"You must choose one of --leader or --mesos-id.\n"
assert_command(['dcos', 'node', 'log'], returncode=1, stderr=stderr)