Exemplo n.º 1
0
def test_lm_errors(dummy_site):
    s = dummy_site(lambda x: ['cmd=' + x], '2.8.0')
    lm = ListMembers('group')

    with pytest.raises(InvalidGroupError):
        lm.execute_on(s)

    s = dummy_site(lambda x: [], '2.8.0')
    with pytest.raises(InvalidGroupError):
        lm.execute_on(s)
Exemplo n.º 2
0
def test_lm_execute(dummy_site):
    s = dummy_site(lambda x: ['id\t', x + '\tn\tf\te'], '2.8.0')
    cmd = ListMembers('somegroup', '--recursive').execute_on(s)
    assert len(cmd) == 1
    assert cmd[0]['id'] == 'ls-members --recursive somegroup'
    cmd = ListMembers('somegroup')
    lm = cmd.execute_on(s)
    assert len(lm) == 1
    assert lm[0]['id'] == 'ls-members  somegroup'
    s = dummy_site(lambda x: ['id\t' + x], '2.8.0')
    r = cmd.execute_on(s)
    assert r == []
Exemplo n.º 3
0
def test_lm_iter(dummy_site):
    result = ['id\tusername\tfull name\temail',
              '100000\tjim\tJim Bob\[email protected]',
              '100001\tjohnny\tJohn Smith\tn/a']
    s = dummy_site(lambda _: result, '2.8.0')
    lm = ListMembers('somegroup')
    r = lm.execute_on(s)
    assert len(r) == len(result) - 1
    assert all([isinstance(d, dict) for d in r])
    assert r[0] == {'id': '100000',
                    'username': '******',
                    'fullname': 'Jim Bob',
                    'email': '*****@*****.**'}
    assert r[1]['id'] == '100001'
Exemplo n.º 4
0
def test_lm_iter(dummy_site):
    result = [
        'id\tusername\tfull name\temail',
        '100000\tjim\tJim Bob\[email protected]',
        '100001\tjohnny\tJohn Smith\tn/a'
    ]
    s = dummy_site(lambda _: result, '2.8.0')
    lm = ListMembers('somegroup')
    r = lm.execute_on(s)
    assert len(r) == len(result) - 1
    assert all([isinstance(d, dict) for d in r])
    assert r[0] == {
        'id': '100000',
        'username': '******',
        'fullname': 'Jim Bob',
        'email': '*****@*****.**'
    }
    assert r[1]['id'] == '100001'
Exemplo n.º 5
0
def test_lm_not_supported_option(dummy_site, monkeypatch):

    s = dummy_site(lambda x: [x], '2.4.7')
    lp = ListMembers('group')

    with pytest.raises(NotImplementedError):
        lp.execute_on(s)

    opts = OptionSet(Option.flag('new', spec='>=2.9'))
    s = dummy_site(lambda x: x, '2.8.0')

    monkeypatch.setattr(ListMembers, '_ListMembers__options', opts)
    lm = ListMembers('p', '--new')

    with pytest.raises(NotImplementedError):
        lm.execute_on(s)
Exemplo n.º 6
0
def test_lm_errors(dummy_site):
    s = dummy_site(lambda x: ['cmd=' + x], '2.8.0')
    lm = ListMembers('group')

    with pytest.raises(InvalidGroupError):
        lm.execute_on(s)

    s = dummy_site(lambda x: [], '2.8.0')
    with pytest.raises(InvalidGroupError):
        lm.execute_on(s)
Exemplo n.º 7
0
def test_lm_execute(dummy_site):
    s = dummy_site(lambda x: ['id\t', x + '\tn\tf\te'], '2.8.0')
    cmd = ListMembers('somegroup', '--recursive').execute_on(s)
    assert len(cmd) == 1
    assert cmd[0]['id'] == 'ls-members --recursive somegroup'
    cmd = ListMembers('somegroup')
    lm = cmd.execute_on(s)
    assert len(lm) == 1
    assert lm[0]['id'] == 'ls-members  somegroup'
    s = dummy_site(lambda x: ['id\t' + x], '2.8.0')
    r = cmd.execute_on(s)
    assert r == []
Exemplo n.º 8
0
def test_lm_not_supported_option(dummy_site, monkeypatch):

    s = dummy_site(lambda x: [x], '2.4.7')
    lp = ListMembers('group')

    with pytest.raises(NotImplementedError):
        lp.execute_on(s)

    opts = OptionSet(Option.flag('new', spec='>=2.9'))
    s = dummy_site(lambda x: x, '2.8.0')

    monkeypatch.setattr(ListMembers, '_ListMembers__options', opts)
    lm = ListMembers('p', '--new')

    with pytest.raises(NotImplementedError):
        lm.execute_on(s)
Exemplo n.º 9
0
def test_lm_init():
    with pytest.raises(ValueError):
        ListMembers('')

    with pytest.raises(AttributeError):
        ListMembers(dict())
Exemplo n.º 10
0
def test_lm_not_supported(dummy_site):
    s = dummy_site(lambda x: [x], '2.0.0')
    lp = ListMembers('group')

    with pytest.raises(NotImplementedError):
        lp.execute_on(s)
Exemplo n.º 11
0
def test_lm_not_supported(dummy_site):
    s = dummy_site(lambda x: [x], '2.0.0')
    lp = ListMembers('group')

    with pytest.raises(NotImplementedError):
        lp.execute_on(s)