def test_out_list_valid_array_complex(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out( CommandResultItem([{ 'active': True, 'id': '783yesdf' }, { 'active': False, 'id': '3hjnme32' }, { 'active': False, 'id': '23hiujbs' }])) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""Active : True Id : 783yesdf Active : False Id : 3hjnme32 Active : False Id : 23hiujbs """))
def test_out_list_valid_caps(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out(CommandResultItem({'active': True, 'TESTStuff': 'blah'})) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """Test Stuff : blah Active : True """))
def test_out_json_byte_empty(self): output_producer = OutputProducer(formatter=format_json, file=self.io) output_producer.out(CommandResultItem({'active': True, 'contents': b''})) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """{ "active": true, "contents": "" } """))
def test_out_list_valid_none_val(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out(CommandResultItem({'active': None, 'id': '0b1f6472'})) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """Active : None Id : 0b1f6472 """))
def test_out_table_list_of_lists(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = [['a', 'b'], ['c', 'd']] output_producer.out(CommandResultItem(obj)) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """Column1 Column2 --------- --------- a b c d """))
def test_out_table(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = OrderedDict() obj['active'] = True obj['val'] = '0b1f6472' output_producer.out(CommandResultItem(obj)) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """ Active Val -------- -------- 1 0b1f6472 """))
def test_out_table_no_query_no_transformer_order(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = {'name': 'qwerty', 'val': '0b1f6472qwerty', 'active': True, 'sub': '0b1f6472'} result_item = CommandResultItem(obj, table_transformer=None, is_query_active=False) output_producer.out(result_item) # Should be alphabetical order as no table transformer and query is not active. self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """ Active Name Sub Val -------- ------ -------- -------------- 1 qwerty 0b1f6472 0b1f6472qwerty """))
def test_out_table_list_of_lists(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = [['a', 'b'], ['c', 'd']] output_producer.out(CommandResultItem(obj)) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""Column1 Column2 --------- --------- a b c d """))
def test_out_table(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = OrderedDict() obj['active'] = True obj['val'] = '0b1f6472' output_producer.out(CommandResultItem(obj)) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines(""" Active Val -------- -------- 1 0b1f6472 """))
def test_out_json_from_ordered_dict(self): """ The JSON output when the input is OrderedDict should be serialized to JSON """ output_producer = OutputProducer(formatter=format_json, file=self.io) output_producer.out(CommandResultItem(OrderedDict({'active': True, 'id': '0b1f6472'}))) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """{ "active": true, "id": "0b1f6472" } """))
def test_out_table_complex_obj(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = OrderedDict() obj['name'] = 'qwerty' obj['val'] = '0b1f6472qwerty' obj['sub'] = {'1'} result_item = CommandResultItem(obj) output_producer.out(result_item) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """Name Val ------ -------------- qwerty 0b1f6472qwerty """))
def test_out_list_valid_none_val(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out( CommandResultItem({ 'active': None, 'id': '0b1f6472' })) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""Active : None Id : 0b1f6472 """))
def test_out_list_valid_caps(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out( CommandResultItem({ 'active': True, 'TESTStuff': 'blah' })) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""Test Stuff : blah Active : True """))
def test_out_table_complex_obj(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = OrderedDict() obj['name'] = 'qwerty' obj['val'] = '0b1f6472qwerty' obj['sub'] = {'1'} result_item = CommandResultItem(obj) output_producer.out(result_item) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""Name Val ------ -------------- qwerty 0b1f6472qwerty """))
def test_out_list_valid_str_array(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out(CommandResultItem(['location', 'id', 'host', 'server'])) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """location id host server """))
def test_out_json_byte_empty(self): output_producer = OutputProducer(formatter=format_json, file=self.io) output_producer.out( CommandResultItem({ 'active': True, 'contents': b'' })) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""{ "active": true, "contents": "" } """))
def test_out_list_valid_complex_array(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out(CommandResultItem({'active': True, 'id': '0b1f6472', 'myarray': ['1', '2', '3', '4']})) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """Active : True Id : 0b1f6472 Myarray : 1 2 3 4 """))
def test_out_table_no_query_yes_transformer_order(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = {'name': 'qwerty', 'val': '0b1f6472qwerty', 'active': True, 'sub': '0b1f6472'} def transformer(r): return OrderedDict([('Name', r['name']), ('Val', r['val']), ('Active', r['active']), ('Sub', r['sub'])]) result_item = CommandResultItem(obj, table_transformer=transformer, is_query_active=False) output_producer.out(result_item) # Should be table transformer order self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """Name Val Active Sub ------ -------------- -------- -------- qwerty 0b1f6472qwerty 1 0b1f6472 """))
def test_out_list_valid_str_array(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out( CommandResultItem(['location', 'id', 'host', 'server'])) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""location id host server """))
def test_out_json_from_ordered_dict(self): """ The JSON output when the input is OrderedDict should be serialized to JSON """ output_producer = OutputProducer(formatter=format_json, file=self.io) output_producer.out( CommandResultItem(OrderedDict({ 'active': True, 'id': '0b1f6472' }))) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""{ "active": true, "id": "0b1f6472" } """))
def test_out_list_valid_array_complex(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out(CommandResultItem([ {'active': True, 'id': '783yesdf'}, {'active': False, 'id': '3hjnme32'}, {'active': False, 'id': '23hiujbs'}])) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines( """Active : True Id : 783yesdf Active : False Id : 3hjnme32 Active : False Id : 23hiujbs """))
def test_out_table_no_query_no_transformer_order(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = { 'name': 'qwerty', 'val': '0b1f6472qwerty', 'active': True, 'sub': '0b1f6472' } result_item = CommandResultItem(obj, table_transformer=None, is_query_active=False) output_producer.out(result_item) # Should be alphabetical order as no table transformer and query is not active. self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines(""" Active Name Sub Val -------- ------ -------- -------------- 1 qwerty 0b1f6472 0b1f6472qwerty """))
def test_out_list_valid_complex_array(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out( CommandResultItem({ 'active': True, 'id': '0b1f6472', 'myarray': ['1', '2', '3', '4'] })) self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""Active : True Id : 0b1f6472 Myarray : 1 2 3 4 """))
def test_out_table_no_query_yes_transformer_order(self): output_producer = OutputProducer(formatter=format_table, file=self.io) obj = { 'name': 'qwerty', 'val': '0b1f6472qwerty', 'active': True, 'sub': '0b1f6472' } def transformer(r): return OrderedDict([('Name', r['name']), ('Val', r['val']), ('Active', r['active']), ('Sub', r['sub'])]) result_item = CommandResultItem(obj, table_transformer=transformer, is_query_active=False) output_producer.out(result_item) # Should be table transformer order self.assertEqual( util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""Name Val Active Sub ------ -------------- -------- -------- qwerty 0b1f6472qwerty 1 0b1f6472 """))
def test_out_boolean_valid(self): output_producer = OutputProducer(formatter=format_list, file=self.io) output_producer.out(CommandResultItem(True)) self.assertEqual(util.normalize_newlines(self.io.getvalue()), util.normalize_newlines("""True\n\n\n"""))