def __gen_data_sources(self, scenario):
    elements = []
    for source in scenario.get_data_sources():
        source_path = source['path']
        delimiter = source.get('delimiter')
        if has_variable_pattern(source_path):
            msg = "Path to CSV contains JMeter variable/function, can't check for file existence: %s"
            self.log.warning(msg, source_path)
            if (not delimiter):
                delimiter = ','
                self.log.warning("Can't detect CSV dialect, default delimiter will be '%s'", delimiter)
        else:
            source_path = self.executor.engine.find_file(source_path)
            if (not os.path.isfile(source_path)):
                raise TaurusConfigError(('data-sources path not found: %s' % source_path))
            if (not delimiter):
                delimiter = guess_delimiter(source_path)
        if source.get('random-order'):
            config = JMX._get_csv_config_random(source_path, delimiter, source.get('loop', True), source.get('variable-names', ''))
        else:
            config = JMX._get_csv_config(source_path, delimiter, source.get('loop', True), source.get('variable-names', ''), source.get('quoted', False))
        elements.append(config)
        elements.append(etree.Element('hashTree'))
    return elements
def __gen_data_sources(self, scenario):
    elements = []
    for source in scenario.get_data_sources():
        source_path = source['path']
        delimiter = source.get('delimiter')
        if has_variable_pattern(source_path):
            msg = "Path to CSV contains JMeter variable/function, can't check for file existence: %s"
            self.log.warning(msg, source_path)
            if (not delimiter):
                delimiter = ','
                self.log.warning("Can't detect CSV dialect, default delimiter will be '%s'", delimiter)
        else:
            source_path = self.executor.engine.find_file(source_path)
            if (not os.path.isfile(source_path)):
                raise TaurusConfigError(('data-sources path not found: %s' % source_path))
            if (not delimiter):
                delimiter = guess_delimiter(source_path)
        if source.get('random-order'):
            config = JMX._get_csv_config_random(source_path, delimiter, source.get('loop', True), source.get('variable-names', ))
        else:
            config = JMX._get_csv_config(source_path, delimiter, source.get('loop', True), source.get('variable-names', ), source.get('quoted', False))
        elements.append(config)
        elements.append(etree.Element('hashTree'))
    return elements