示例#1
0
def test_VsftpdConfigParser_only_comments():
    parser = VsftpdConfigParser('# foo\n\n#bar\n')
    assert isinstance(parser.parsed_config, dict)
    assert len(parser.parsed_config) == 0

    parser = VsftpdConfigParser('#anonymous_enable=yes\n')
    assert isinstance(parser.parsed_config, dict)
    assert len(parser.parsed_config) == 0
示例#2
0
def test_VsftpdConfigParser_invalid_syntax():
    with pytest.raises(ParsingError):
        VsftpdConfigParser('unknown_option=foo')
    with pytest.raises(ParsingError):
        VsftpdConfigParser('anonymous_enable=non-boolean')
    with pytest.raises(ParsingError):
        VsftpdConfigParser(' # comment with whitespace before the # character')
    with pytest.raises(ParsingError):
        VsftpdConfigParser('anonymous_enable')
示例#3
0
def test_VsftpdConfigParser_multiple_options():
    content = '# foo\n\nanonymous_enable=no\nbanned_email_file=/foo/bar\n# bar\nmax_login_fails=3\n'
    parser = VsftpdConfigParser(content)

    assert len(parser.parsed_config) == 3
    assert parser.parsed_config['anonymous_enable'] is False
    assert parser.parsed_config['banned_email_file'] == '/foo/bar'
    assert parser.parsed_config['max_login_fails'] == 3
示例#4
0
def test_VsftpdConfigParser_one_option():
    parser = VsftpdConfigParser('anonymous_enable=yes\n')
    assert len(parser.parsed_config) == 1
    assert parser.parsed_config['anonymous_enable'] is True
示例#5
0
def test_VsftpdConfigParser_empty_config():
    parser = VsftpdConfigParser('')
    assert isinstance(parser.parsed_config, dict)
    assert len(parser.parsed_config) == 0