def unzip_files(self, file_name):
        unzip_command = 'unzip -j {0}'.format(file_name)
        self.send_cmd(unzip_command, delay=10)

        show_files_command = 'ls -al'
        self.send_cmd(show_files_command)
        self.send_cmd('echo status_code:$?')
        output = PExpectWrapper.get_lines(self.cli,
                                          terminating_value='status_code:0')

        source_files_re = '([a-z-_0-9.]*\.qcow2)'
        source_files = []
        for output_line in output:
            source_file = re_search(source_files_re, output_line)
            if source_file and source_file.group(1):
                if source_file.group(1) in source_files:
                    continue

                source_files.append(source_file.group(1))

        return source_files
    def get_current_config_values(self, command_line, expected_value='xpath'):
        """
        Since the json doesn't return default values (SWALL-5184)
        Assumes the key and value are separate with white space
        Assumes path in xpath is forward slash separated
        Last string (closest to vale) is used as key when returning data i.e.
        '/devices/cms-device-adv:advanced-settings/sflow/counter-record-interval 1000' as:
        {'counter-record-interval':1000}
        :return:
        """
        command_line += SHOW_DEFAULT_XPATH
        self.send_cmd(command_line, expected_value=expected_value)
        all_data = PExpectWrapper.get_lines(self.cli, terminating_value='[ok]')

        result_data = {}
        for data in all_data:
            keys, value = data.split(' ')
            key = keys.split('/')
            key = key[len(key) - 1]
            result_data[key] = value

        return result_data