示例#1
0
def test_named_resources():
    exposed = [
        getattr(resources, name) for name in dir(resources)
        if name.startswith("RESOURCES")
    ]

    for resource_name in exposed:
        assert resources.exists(resource_name)
        assert resources.isdir(resource_name)
        assert resources.listdir(resource_name)
示例#2
0
        key, value = item.split("=")

        match = variable_expansion_pattern.match(value)
        if match:
            varname, default_value = match.groups()
            value = devel_environ.get(varname, default_value)
        container_environ[key] = value

    return container_environ


@pytest.mark.parametrize(
    "configfile",
    [
        str(n)
        for n in resources.listdir(CONFIG_DIR) if n.endswith(("yaml", "yml"))
    ],
)
def test_config_files(configfile, container_environ, capsys):
    parser = setup_parser(argparse.ArgumentParser("test-parser"))

    with mock.patch("os.environ", container_environ):
        cmd = ["-c", configfile]
        try:
            config = parse(cmd, parser)

        except SystemExit as err:
            pytest.fail(capsys.readouterr().err)

        for key, value in config.items():
            assert value != "None", "Use instead Null in {} for {}".format(
示例#3
0
    completed_process = subprocess.run(
        "simcore-service-storage --help".split(), **COMMON_KWARGS)

    print(completed_process.stdout)
    assert completed_process.returncode == os.EX_OK
    assert "Usage: simcore-service-storage [OPTIONS]" in completed_process.stdout


def test_cli_check_config_dumps_json(project_env_devel_environment):
    completed_process = subprocess.run(
        "simcore-service-storage --check-config".split(), **COMMON_KWARGS)

    print(completed_process.stdout)
    assert completed_process.returncode == os.EX_OK
    assert json.loads(completed_process.stdout), "Can load output as json"


@pytest.mark.parametrize("config_name", resources.listdir("data"))
def test_cli_config_with_environs(config_name, project_env_devel_environment):

    config_path = Path(resources.get_path("data")) / config_name

    completed_process = subprocess.run(
        "simcore-service-storage  --check-config --config".split() +
        [config_path], **COMMON_KWARGS)

    print(completed_process.stdout)
    print(completed_process.stderr, file=sys.stderr)
    assert completed_process.returncode == os.EX_OK
    config = json.loads(completed_process.stdout)