Ejemplo n.º 1
0
def test_conn_errors(mocker):
    mocker.patch('ldap2pg.script.dictConfig', autospec=True)
    mocker.patch('ldap2pg.script.Configuration', autospec=True)
    mocker.patch('ldap2pg.script.SyncManager', autospec=True)
    clc = mocker.patch('ldap2pg.script.ldap.connect')
    PSQL = mocker.patch('ldap2pg.script.PSQL', autospec=True)

    from ldap2pg.script import (
        wrapped_main,
        ConfigurationError,
        ldap,
        psycopg2,
    )

    clc.side_effect = ldap.LDAPError("pouet")
    with pytest.raises(ConfigurationError):
        wrapped_main()
    clc.side_effect = None

    psql = PSQL.return_value
    psql.return_value = mocker.MagicMock()
    psql_ = psql.return_value.__enter__.return_value
    psql_.side_effect = psycopg2.OperationalError()
    with pytest.raises(ConfigurationError):
        wrapped_main()
Ejemplo n.º 2
0
def test_wrapped_main(mocker):
    mocker.patch('ldap2pg.script.logging.config.dictConfig', autospec=True)
    c = mocker.patch('ldap2pg.script.Configuration', autospec=True)
    clc = mocker.patch('ldap2pg.script.create_ldap_connection')
    cpc = mocker.patch('ldap2pg.script.create_pg_connection')
    rm = mocker.patch('ldap2pg.script.RoleManager', autospec=True)

    from ldap2pg.script import wrapped_main

    wrapped_main()

    assert c.called is True
    assert clc.called is True
    assert cpc.called is True
    assert rm.called is True
Ejemplo n.º 3
0
def test_wrapped_main(mocker):
    mocker.patch('ldap2pg.script.dictConfig', autospec=True)
    clc = mocker.patch('ldap2pg.script.ldap.connect')
    RM = mocker.patch('ldap2pg.script.SyncManager', autospec=True)
    rm = RM.return_value
    rm.inspect.return_value = [mocker.Mock()] * 5
    rm.sync.return_value = 0

    from ldap2pg.script import wrapped_main

    config = mocker.MagicMock(name='config')
    config.get.return_value = True
    wrapped_main(config=config)

    config.get.return_value = False
    wrapped_main(config=config)

    assert clc.called is True
    assert rm.inspect.called is True
    assert rm.sync.called is True
Ejemplo n.º 4
0
def test_conn_errors(mocker):
    mocker.patch('ldap2pg.script.logging.config.dictConfig', autospec=True)
    mocker.patch('ldap2pg.script.Configuration', autospec=True)
    clc = mocker.patch('ldap2pg.script.create_ldap_connection')
    cpc = mocker.patch('ldap2pg.script.create_pg_connection')

    from ldap2pg.script import (
        wrapped_main,
        ConfigurationError,
        ldap3,
        psycopg2,
    )

    clc.side_effect = ldap3.core.exceptions.LDAPExceptionError("pouet")
    with pytest.raises(ConfigurationError):
        wrapped_main()

    clc.side_effect = None
    cpc.side_effect = psycopg2.OperationalError()
    with pytest.raises(ConfigurationError):
        wrapped_main()
Ejemplo n.º 5
0
def test_wrapped_main(mocker):
    from ldap2pg.utils import Timer
    mocker.patch('ldap2pg.script.dictConfig', autospec=True)
    PSQL = mocker.patch('ldap2pg.script.PSQL', autospec=True)
    PSQL.return_value.timer = Timer()
    clc = mocker.patch('ldap2pg.script.ldap.connect')
    SM = mocker.patch('ldap2pg.script.SyncManager', autospec=True)
    manager = SM.return_value
    manager.sync.return_value = 0

    from ldap2pg.script import wrapped_main

    config = mocker.MagicMock(name='config')
    # Dry run
    config.get.return_value = True
    wrapped_main(config=config)

    # Real mode
    config.get.return_value = False
    PSQL.return_value.return_value = mocker.MagicMock(name='psql')
    wrapped_main(config=config)

    assert clc.called is True
    assert manager.sync.called is True

    # No LDAP
    clc.reset_mock()
    config.has_ldap_query.return_value = []
    wrapped_main(config=config)

    assert clc.called is False
Ejemplo n.º 6
0
def test_conn_errors(mocker):
    mocker.patch('ldap2pg.script.dictConfig', autospec=True)
    mocker.patch('ldap2pg.script.Configuration', autospec=True)
    SyncManager = mocker.patch('ldap2pg.script.SyncManager', autospec=True)
    SyncManager.return_value.inspect.return_value = [mocker.Mock()] * 3
    clc = mocker.patch('ldap2pg.script.ldap.connect')

    from ldap2pg.script import (
        wrapped_main,
        ConfigurationError,
        ldap,
        psycopg2,
    )

    clc.side_effect = ldap.LDAPError("pouet")
    with pytest.raises(ConfigurationError):
        wrapped_main()

    clc.side_effect = None
    manager = SyncManager.return_value
    manager.inspect.side_effect = psycopg2.OperationalError()
    with pytest.raises(ConfigurationError):
        wrapped_main()