def test_with_header_empty_input(self): helper = ucr.find_response_helper('svc_detailed') res = helper(' ', dict(delim=',', with_header=True)) self.assertEqual(0, len(res.as_list)) helper = ucr.find_response_helper('svc_detailed') res = helper('', dict(delim=',', with_header=True)) self.assertEqual(0, len(res.as_list))
def parse_Response(self, parent): # 'Response' is always the first child or does not appear. # if parent is Commands, then pass the Commands name into # find_response_helper(), to deal with commands with special output for nd0 in parent: if nd0.tag == 'Response': if parent.tag == 'Command': return find_response_helper(nd0.get('type', None), parent.get('name', None)) else: return find_response_helper(nd0.get('type', None), nd0.get('param', None)) break
def test_svcinfo_lsclusterip(self): helper = ucr.find_response_helper('svc_grouped_detail_or_concise') res = helper(RESP_svcinfo_lsclusterip, dict(delim=',')) self.assertEqual(4, len(res.as_list)) expect_ = [('IP_address', '9.119.41.132'), ('IP_address_6', ''), ('cluster_id', '000002006700D9FC'), ('cluster_name', 'CIMV7000'), ('gateway', '9.119.41.1'), ('gateway_6', ''), ('location', 'local'), ('port_id', '1'), ('prefix_6', ''), ('subnet_mask', '255.255.255.0')] self.assertEqual(expect_, sorted(res.as_list[0].items())) res = helper(RESP_svcinfo_lsclusterip_id, dict(delim=',')) self.assertEqual(2, len(res.as_list)) expect_ = [('IP_address', '9.119.41.132'), ('IP_address_6', ''), ('cluster_id', '000002006700D9FC'), ('cluster_name', 'CIMV7000'), ('gateway', '9.119.41.1'), ('gateway_6', ''), ('location', 'local'), ('port_id', '1'), ('prefix_6', ''), ('subnet_mask', '255.255.255.0')] self.assertEqual(expect_, sorted(res.as_list[0].items())) expect_ = [('IP_address', ''), ('IP_address_6', ''), ('cluster_id', '000002006700D9FC'), ('cluster_name', 'CIMV7000'), ('gateway', ''), ('gateway_6', ''), ('location', 'local'), ('port_id', '2'), ('prefix_6', ''), ('subnet_mask', '')] self.assertEqual(expect_, sorted(res.as_list[1].items()))
def test_svcinfo_lshbaportcandidate(self): helper = ucr.find_response_helper('svc_concise') res = helper(RESP_svcinfo_lshbaportcandidate, dict(delim=',')) self.assertEqual(3, len(list(res))) self.assertEqual([('id', '50050768014043E4')], sorted(list(res)[0].items())) self.assertEqual([('id', '5005076802301806')], sorted(list(res)[1].items())) self.assertEqual([('id', '500507680140436C')], sorted(list(res)[2].items()))
def test_svctask_mkvdisk_err(self): helper = ucr.find_response_helper('svc_status') try: helper(('I have error.\n%s 4 xy -5 xy 6\n' % ucs.TAG_ERR, RESP_svctask_mkvdisk_err), dict(error_tag=ucs.TAG_ERR)) except ucr.CLIFailureError as ex: expect_ = r'CLI failure. Return code is 4 -5 6. Error message ' \ r'is "CMMVC6432E The command failed because the ' \ r'specified managed disk group does not exist."' self.assertEqual(expect_, ex.my_message) return self.assertTrue(False, 'No exception raised.')
def test_svcinfo_lscluster_id(self): helper = ucr.find_response_helper('svc_normal') res = helper(RESP_svcinfo_lscluster_id, dict(delim=',')) self.assertEqual(1, len(res.as_list)) expect_ = [('FC_port_speed', '2Gb'), ('auth_service_cert_set', 'no'), ('auth_service_configured', 'no'), ('auth_service_enabled', 'no'), ('auth_service_pwd_set', 'no'), ('auth_service_type', 'tip'), ('auth_service_url', ''), ('auth_service_user_name', ''), ('bandwidth', ''), ('cluster_isns_IP_address', ''), ('cluster_locale', 'en_US'), ('cluster_ntp_IP_address', ''), ('code_level', '6.3.0.0 (build 52.5.1106290000)'), ('console_IP', '9.119.41.132:443'), ('email_contact', ''), ('email_contact2', ''), ('email_contact2_alternate', ''), ('email_contact2_primary', ''), ('email_contact_alternate', ''), ('email_contact_location', ''), ('email_contact_primary', ''), ('email_reply', ''), ('email_state', 'stopped'), ('gm_inter_cluster_delay_simulation', '0'), ('gm_intra_cluster_delay_simulation', '0'), ('gm_link_tolerance', '300'), ('gm_max_host_delay', '5'), ('has_nas_key', 'no'), ('id', '000002006700D9FC'), ('id_alias', '000002006700D9FC'), ('inventory_mail_interval', '0'), ('iscsi_auth_method', 'none'), ('iscsi_chap_secret', ''), ('layer', 'controller'), ('location', 'local'), ('name', 'CIMV7000'), ('partnership', ''), ('relationship_bandwidth_limit', '25'), ('required_memory', '0'), ('space_allocated_to_vdisks', '246.81GB'), ('space_in_mdisk_grps', '2.2TB'), ('statistics_frequency', '15'), ('statistics_status', 'on'), ('tier', ['generic_ssd', 'generic_hdd']), ('tier_capacity', ['0.00MB', '2.20TB']), ('tier_free_capacity', ['0.00MB', '1.95TB']), ('time_zone', '522 UTC'), ('total_allocated_extent_capacity', '247.03GB'), ('total_free_space', '2.0TB'), ('total_mdisk_capacity', '2.3TB'), ('total_overallocation', '10'), ('total_used_capacity', '241.68GB'), ('total_vdisk_capacity', '251.62GB'), ('total_vdiskcopy_capacity', '251.62GB')] self.assertEqual(expect_, sorted(res.as_list[0].items())) self.assertEqual( expect_, sorted( res.as_dict('code_level') ['6.3.0.0 (build 52.5.1106290000)'].items())) self.assertEqual(['generic_ssd', 'generic_hdd'], res.as_dict('id')['000002006700D9FC']['tier'])
def test_svcinfo_lsnodevpd_id(self): helper = ucr.find_response_helper('svc_nested_fields') res = helper(RESP_svcinfo_lsnodevpd_id, dict(delim=',')) self.assertEqual(22, len(res.as_list)) self.assertEqual(sorted([('id', '1')]), sorted(res.as_list[0].items())) self.assertEqual('', res.as_list[1]['system board: 23 fields']) self.assertEqual('85Y5899', res.as_list[1].part_number) self.assertEqual('Processor 1', res.as_list[2].processor_location) self.assertEqual('e4:1f:13:74:06:1e', res.as_list[-1].MAC_address) self.assertEqual('RCK0949138G004D', res.as_single_element.system_serial_number) self.assertEqual(sorted([('id', '1')]), sorted(res.as_list[0].items()))
def test_with_header(self): helper = ucr.find_response_helper('svc_detailed') res = helper(RESP_svcinfo_lscurrentuser, dict(delim=',', with_header=True)) self.assertEqual(1, len(res.as_list)) self.assertEqual([('name', 'role'), ('superuser', 'SecurityAdmin')], sorted(res.as_list[0].items())) res = helper(RESP_svcinfo_lscurrentuser, dict(delim=',', with_header=False)) self.assertEqual(1, len(res.as_list)) self.assertEqual([('name', 'superuser'), ('role', 'SecurityAdmin')], sorted(res.as_list[0].items()))
def test_svcinfo_lsroute(self): helper = ucr.find_response_helper('svc_custom', 'lsroute') res = helper(RESP_svcinfo_lsroute) self.assertEqual(7, len(res.as_list)) expect_ = [('Destination', '9.119.41.0'), ('Flags', 'U'), ('Gateway', '0.0.0.0'), ('Genmask', '255.255.255.0'), ('Iface', 'eth0'), ('Metric', '0'), ('Ref', '0'), ('Use', '0')] self.assertEqual(expect_, sorted(res.as_list[0].items())) expect_ = [('Destination', 'ff00::/8'), ('Flags', 'U'), ('Iface', 'eth0'), ('Metric', '256'), ('Next_Hop', '::'), ('Ref', '0'), ('Use', '0')] self.assertEqual(expect_, sorted(res.as_list[6].items()))
def test_svcinfo_lsvdisk(self): helper = ucr.find_response_helper('svc_normal') res = helper(RESP_svcinfo_lsvdisk, dict(delim=',')) self.assertEqual(4, len(res.as_list)) self.assertEqual('0', res.as_list[0].id) self.assertEqual('io_grp0', res.as_list[0].IO_group_name) self.assertEqual('2', res.as_list[2].id) self.assertEqual('40.00GB', res.as_list[2].capacity) self.assertEqual('', res.as_list[2].FC_name) self.assertEqual('3', res.as_list[3].id) self.assertEqual('forvcplugintest', res.as_list[3].mdisk_grp_name) self.assertEqual('offline', res.as_dict('id')['1'].status) self.assertEqual('striped', res.as_dict('id')['1'].type) self.assertEqual('empty', res.as_dict('id')['1'].fast_write_state)
def test_svcinfo_lssevdiskcopy(self): helper = ucr.find_response_helper('svc_concise', param='copy') res = helper(RESP_svcinfo_lssevdiskcopy, dict(delim=',')) self.assertEqual(11, len(res.as_list)) expect_ = [('autoexpand', 'on'), ('capacity', '1.00GB'), ('compressed_copy', 'no'), ('copy_id', '0'), ('free_capacity', '527.97MB'), ('grainsize', '32'), ('mdisk_grp_id', '0'), ('mdisk_grp_name', 'waynestudy720'), ('overallocation', '193'), ('real_capacity', '528.38MB'), ('se_copy', 'yes'), ('used_capacity', '0.41MB'), ('vdisk_id', '13'), ('vdisk_name', 'wayneTest12'), ('warning', '0')] self.assertEqual(len(expect_), len(sorted(res.as_list[0].items()))) self.assertEqual(expect_, sorted(res.as_list[0].items())) self.assertEqual('13', res.as_list[0].vdisk_id) self.assertEqual('no', res.as_list[0].compressed_copy)
def test_svcinfo_lscluster(self): helper = ucr.find_response_helper('svc_normal') res = helper(RESP_svcinfo_lscluster, dict(delim=',')) self.assertEqual(2, len(res.as_list)) expect_ = [('bandwidth', ''), ('id', '000002006700D9FC'), ('id_alias', '000002006700D9FC'), ('location', 'local'), ('name', 'CIMV7000'), ('partnership', '')] self.assertEqual(expect_, sorted(res.as_list[0].items())) self.assertEqual(expect_, sorted( res.as_dict('id')['000002006700D9FC'].items())) expect_ = [('bandwidth', '20'), ('id', '000002006500C4FC'), ('id_alias', '000002006500C4FC'), ('location', 'remote'), ('name', 'CIMFVTV7000'), ('partnership', 'fully_configured')] self.assertEqual(expect_, sorted(res.as_list[1].items())) self.assertEqual(expect_, sorted( res.as_dict('id')['000002006500C4FC'].items()))
def test_svcinfo_lsvdisk_id(self): helper = ucr.find_response_helper('svc_normal') res = helper(RESP_svcinfo_lsvdisk_id, dict(delim=',')) self.assertEqual(2, len(res.as_list)) one_ = res.as_single_element expect_ = [('FC_id', '0'), ('FC_name', 'fcmap0'), ('IO_group_id', '0'), ('IO_group_name', 'io_grp0'), ('RC_id', '0'), ('RC_name', 'rcrel8'), ('autoexpand', ''), ('cache', 'readwrite'), ('capacity', '100.00MB'), ('compressed_copy', 'no'), ('compressed_copy_count', '0'), ('copy_count', '1'), ('copy_id', '0'), ('easy_tier', 'on'), ('easy_tier_status', 'inactive'), ('fast_write_state', 'empty'), ('fc_map_count', '1'), ('filesystem', ''), ('formatted', 'no'), ('free_capacity', '0.00MB'), ('grainsize', ''), ('id', '0'), ('mdisk_grp_id', '5'), ('mdisk_grp_name', 'mdiskgrp2'), ('mdisk_id', ''), ('mdisk_name', ''), ('name', 'vdisk0'), ('overallocation', '100'), ('preferred_node_id', '2'), ('primary', 'yes'), ('real_capacity', '100.00MB'), ('se_copy', 'no'), ('se_copy_count', '0'), ('status', 'online'), ('sync', 'yes'), ('sync_rate', '50'), ('throttling', '0'), ('tier', ['generic_ssd', 'generic_hdd']), ('tier_capacity', ['0.00MB', '100.00MB']), ('type', 'striped'), ('udid', ''), ('used_capacity', '100.00MB'), ('vdisk_UID', '60050768019C0367F000000000000023'), ('warning', '')] # self.assertEquals(len(expect_), len(sorted(res.as_list[0].items()))) self.assertEqual(len(expect_), len(one_)) self.assertEqual(expect_, sorted(one_.items())) self.assertEqual('0', one_.id) self.assertEqual('5', one_.mdisk_grp_id) self.assertEqual('mdiskgrp2', one_.mdisk_grp_name) self.assertEqual(['generic_ssd', 'generic_hdd'], one_.tier) self.assertEqual('0', res.as_list[0].id) self.assertEqual('0', res.as_list[1].copy_id)
def test_svcinfo_lssevdiskcopy_id_copy(self): helper = ucr.find_response_helper('svc_concise', param='copy') res = helper(RESP_svcinfo_lssevdiskcopy_id_copy, dict(delim=',')) self.assertEqual(1, len(res.as_list)) expect_ = [('autoexpand', 'on'), ('capacity', '1.00GB'), ('compressed_copy', 'no'), ('copy_id', '0'), ('easy_tier', 'on'), ('easy_tier_status', 'inactive'), ('fast_write_state', 'empty'), ('free_capacity', '527.97MB'), ('grainsize', '32'), ('mdisk_grp_id', '0'), ('mdisk_grp_name', 'waynestudy720'), ('mdisk_id', ''), ('mdisk_name', ''), ('overallocation', '193'), ('primary', 'yes'), ('real_capacity', '528.38MB'), ('se_copy', 'yes'), ('status', 'online'), ('sync', 'yes'), ('tier', ['generic_ssd', 'generic_hdd']), ('tier_capacity', ['0.00MB', '528.38MB']), ('type', 'striped'), ('used_capacity', '0.41MB'), ('vdisk_id', '15'), ('vdisk_name', 'vdisk3'), ('warning', '80')] self.assertEqual(len(expect_), len(sorted(res.as_list[0].items()))) self.assertEqual(expect_, sorted(res.as_list[0].items())) self.assertEqual('15', res.as_list[0].vdisk_id) self.assertEqual('no', res.as_list[0].compressed_copy) self.assertEqual(['0.00MB', '528.38MB'], res.as_list[0].tier_capacity)
def test_svctask_mkvdisk(self): helper = ucr.find_response_helper('svc_status') res = helper(RESP_svctask_mkvdisk) self.assertEqual(0, len(res.as_list))
def test_lshost(self): helper = ucr.find_response_helper('svc_normal')
def test_lsrcrelationship(self): helper = ucr.find_response_helper('svc_normal')
def test_lsmdiskgrp(self): helper = ucr.find_response_helper('svc_normal')
def test_svcinfo_lssoftwareupgradestatus(self): helper = ucr.find_response_helper('svc_detailed') res = helper(RESP_svcinfo_lssoftwareupgradestatus) self.assertEqual(1, len(res.as_list)) self.assertEqual([('status', 'inactive')], sorted(res.as_list[0].items()))
def test_svcinfo_nothing(self): helper = ucr.find_response_helper('svc') res = helper(RESP_svcinfo_nothing) self.assertEqual(0, len(res.as_list))