def load_plugins():
    # This function is a little wacky, doesn't seem like we SHOULD have to do all this just to get the behavior we want.
    # The idea will be to check out the directory contents and pick up any files that seem to match what python knows how to
    # import.

    # To properly load the module, we'll need to identify what type it is by the file extension
    suffix_map = {}
    for suffix in imp.get_suffixes():
        suffix_map[suffix[0]] = suffix

    plugin_directories = [DEFAULT_PLUGIN_PATH]
    if 'TESTIFY_PLUGIN_PATH' in os.environ:
        plugin_directories += os.environ['TESTIFY_PLUGIN_PATH'].split(':')

    plugin_modules = []
    for plugin_path in plugin_directories:
        for file_name in os.listdir(plugin_path):

            # For any file that we know how to load, try to import it
            if any(file_name.endswith('.py') and not file_name.startswith('.') for suffix in suffix_map.keys()):
                full_file_path = os.path.join(plugin_path, file_name)
                mod_name, suffix = os.path.splitext(file_name)
                # Need some unlikely-to-clash unique-ish module name
                mod_name = '_testify_plugin__' + mod_name

                try:
                    plugin_modules.append(
                        imp.load_source(mod_name, full_file_path),
                    )
                except TypeError:
                    continue
                except ImportError as e:
                    print("Failed to import plugin %s: %r" % (full_file_path, e), file=sys.stderr)
    return plugin_modules
Return a single header by name
dataset/ETHPy150Open Yelp/Testify/testify/test_program.py/load_plugins--crossover with--dataset/ETHPy150Open flaviogrossi/sockjs-cyclone/sockjs/cyclone/conn.py/ConnectionInfo.get_header