コード例 #1
0
def test_stunnel_cafile_configuration_in_option(mocker):
    options = {'cafile': CAFILE}
    efs_config = {}

    mocker.patch('os.path.exists', return_value=True)

    mount_efs.add_stunnel_ca_options(efs_config, _get_config(), options)

    assert CAFILE == efs_config.get('CAfile')
コード例 #2
0
def test_stunnel_cafile_not_configured(mocker):
    options = {}
    efs_config = {}

    mocker.patch('os.path.exists', return_value=True)

    mount_efs.add_stunnel_ca_options(efs_config, _get_config(), options,
                                     DEFAULT_REGION)

    assert mount_efs.DEFAULT_STUNNEL_CAFILE == efs_config.get('CAfile')
コード例 #3
0
def test_stunnel_cafile_configuration_in_option(mocker):
    options = {"cafile": CAFILE}
    efs_config = {}

    mocker.patch("os.path.exists", return_value=True)

    mount_efs.add_stunnel_ca_options(efs_config, _get_config(), options,
                                     DEFAULT_REGION)

    assert CAFILE == efs_config.get("CAfile")
コード例 #4
0
def test_use_missing_cafile(capsys):
    options = {'cafile': '/missing1'}
    efs_config = {}

    with pytest.raises(SystemExit) as ex:
        mount_efs.add_stunnel_ca_options(efs_config, _get_config(), options)

    assert 0 != ex.value.code

    out, err = capsys.readouterr()
    assert 'Failed to find certificate authority file for verification' in err
コード例 #5
0
def test_use_missing_cafile(capsys):
    efs_config = {}
    stunnel_cafile = '/missing1'

    with pytest.raises(SystemExit) as ex:
        mount_efs.add_stunnel_ca_options(efs_config, stunnel_cafile)

    assert 0 != ex.value.code

    out, err = capsys.readouterr()
    assert 'Failed to find the EFS certificate authority file for verification' in err
コード例 #6
0
def test_use_missing_cafile(capsys):
    options = {"cafile": "/missing1"}
    efs_config = {}

    with pytest.raises(SystemExit) as ex:
        mount_efs.add_stunnel_ca_options(efs_config, _get_config(), options,
                                         DEFAULT_REGION)

    assert 0 != ex.value.code

    out, err = capsys.readouterr()
    assert "Failed to find certificate authority file for verification" in err
コード例 #7
0
def test_stunnel_cafile_configuration_in_config(mocker):
    options = {}
    efs_config = {}

    config = _get_config()
    config.set(mount_efs.CONFIG_SECTION, 'stunnel_cafile', CAFILE)

    mocker.patch('os.path.exists', return_value=True)

    mount_efs.add_stunnel_ca_options(efs_config, config, options)

    assert CAFILE == efs_config.get('CAfile')
コード例 #8
0
def test_stunnel_cafile_configuration_in_config(mocker):
    options = {}
    efs_config = {}

    config = _get_config()
    config.set(mount_efs.CONFIG_SECTION, "stunnel_cafile", CAFILE)

    mocker.patch("os.path.exists", return_value=True)

    mount_efs.add_stunnel_ca_options(efs_config, config, options,
                                     DEFAULT_REGION)

    assert CAFILE == efs_config.get("CAfile")
コード例 #9
0
def test_use_default_cafile_exists(tmpdir):
    efs_config = {}
    ca_file = str(create_temp_file(tmpdir))
    default_stunnel_cafile_paths = [
        '/missing1',
        ca_file,
        '/missing2',
    ]

    mount_efs.add_stunnel_ca_options(efs_config, {},
                                     default_stunnel_cafile_paths)

    assert ca_file == efs_config.get('CAfile')
    assert 'CApath' not in efs_config
コード例 #10
0
def test_use_default_cafile_missing(capsys):
    efs_config = {}
    default_stunnel_cafile_paths = [
        '/missing1',
        '/missing2',
    ]

    with pytest.raises(SystemExit) as ex:
        mount_efs.add_stunnel_ca_options(efs_config, {},
                                         default_stunnel_cafile_paths)

    assert 0 != ex.value.code

    out, err = capsys.readouterr()
    assert 'Failed to find a certificate authority file for verification' in err
コード例 #11
0
def test_stunnel_cafile_configured_in_mount_region_section(mocker):
    options = {}
    efs_config = {}

    config = _get_config()
    config.set(mount_efs.CONFIG_SECTION, 'stunnel_cafile', CAFILE)
    config_section = '%s.%s' % (mount_efs.CONFIG_SECTION, ISOLATED_REGION)
    config.add_section(config_section)
    config.set(config_section, 'stunnel_cafile',
               ISOLATED_REGION_STUNNEL_CAFILE)

    mocker.patch('os.path.exists', return_value=True)

    mount_efs.add_stunnel_ca_options(efs_config, config, options,
                                     ISOLATED_REGION)

    assert ISOLATED_REGION_STUNNEL_CAFILE == efs_config.get('CAfile')