mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Tests for the automount plugin
This commit is contained in:
parent
e8adb59fd4
commit
d10a5131f8
184
tests/test_xmlrpc/test_automount_plugin.py
Normal file
184
tests/test_xmlrpc/test_automount_plugin.py
Normal file
@ -0,0 +1,184 @@
|
||||
# Authors:
|
||||
# Rob Crittenden <rcritten@redhat.com>
|
||||
#
|
||||
# Copyright (C) 2008 Red Hat
|
||||
# see file 'COPYING' for use and warranty information
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; version 2 only
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
"""
|
||||
Test the `ipalib/plugins/f_automount' module.
|
||||
"""
|
||||
|
||||
import sys
|
||||
from xmlrpc_test import XMLRPC_test
|
||||
from ipalib import api
|
||||
from ipalib import errors
|
||||
from ipalib.cli import CLI
|
||||
|
||||
try:
|
||||
api.finalize()
|
||||
except StandardError:
|
||||
pass
|
||||
|
||||
class test_Service(XMLRPC_test):
|
||||
"""
|
||||
Test the `f_automount` plugin.
|
||||
"""
|
||||
mapname='testmap'
|
||||
keyname='testkey'
|
||||
keyname2='secondkey'
|
||||
description='description of map'
|
||||
info='ro'
|
||||
map_kw={'automountmapname': mapname, 'description': description}
|
||||
key_kw={'automountmapname': mapname, 'automountkey': keyname, 'automountinformation': info}
|
||||
key_kw2={'automountmapname': mapname, 'automountkey': keyname2, 'automountinformation': info}
|
||||
|
||||
def test_add_1map(self):
|
||||
"""
|
||||
Test adding a map `xmlrpc.automount_addmap` method.
|
||||
"""
|
||||
res = api.Command['automount_addmap'](**self.map_kw)
|
||||
assert res
|
||||
assert res.get('automountmapname','') == self.mapname
|
||||
|
||||
def test_add_2key(self):
|
||||
"""
|
||||
Test adding a key using `xmlrpc.automount_addkey` method.
|
||||
"""
|
||||
res = api.Command['automount_addkey'](**self.key_kw2)
|
||||
assert res
|
||||
assert res.get('automountkey','') == self.keyname2
|
||||
|
||||
def test_add_3key(self):
|
||||
"""
|
||||
Test adding a key using `xmlrpc.automount_addkey` method.
|
||||
"""
|
||||
res = api.Command['automount_addkey'](**self.key_kw)
|
||||
assert res
|
||||
assert res.get('automountkey','') == self.keyname
|
||||
|
||||
def test_add_4key(self):
|
||||
"""
|
||||
Test adding a duplicate key using `xmlrpc.automount_addkey` method.
|
||||
"""
|
||||
try:
|
||||
res = api.Command['automount_addkey'](**self.key_kw)
|
||||
except errors.DuplicateEntry:
|
||||
pass
|
||||
else:
|
||||
assert False
|
||||
|
||||
def test_doshowmap(self):
|
||||
"""
|
||||
Test the `xmlrpc.automount_showmap` method.
|
||||
"""
|
||||
res = api.Command['automount_showmap'](self.mapname)
|
||||
assert res
|
||||
assert res.get('automountmapname','') == self.mapname
|
||||
|
||||
def test_findmap(self):
|
||||
"""
|
||||
Test the `xmlrpc.automount_findmap` method.
|
||||
"""
|
||||
res = api.Command['automount_findmap'](self.mapname)
|
||||
assert res
|
||||
assert len(res) == 2
|
||||
assert res[1].get('automountmapname','') == self.mapname
|
||||
|
||||
def test_doshowkey(self):
|
||||
"""
|
||||
Test the `xmlrpc.automount_showkey` method.
|
||||
"""
|
||||
showkey_kw={'automountmapname': self.mapname, 'automountkey': self.keyname}
|
||||
res = api.Command['automount_showkey'](**showkey_kw)
|
||||
assert res
|
||||
assert res.get('automountkey','') == self.keyname
|
||||
assert res.get('automountinformation','') == self.info
|
||||
|
||||
def test_findkey(self):
|
||||
"""
|
||||
Test the `xmlrpc.automount_findkey` method.
|
||||
"""
|
||||
res = api.Command['automount_findkey'](self.keyname)
|
||||
assert res
|
||||
assert len(res) == 2
|
||||
assert res[1].get('automountkey','') == self.keyname
|
||||
assert res[1].get('automountinformation','') == self.info
|
||||
|
||||
def test_modkey(self):
|
||||
"""
|
||||
Test the `xmlrpc.automount_modkey` method.
|
||||
"""
|
||||
self.key_kw['automountinformation'] = 'rw'
|
||||
self.key_kw['description'] = 'new description'
|
||||
res = api.Command['automount_modkey'](**self.key_kw)
|
||||
assert res
|
||||
assert res.get('automountkey','') == self.keyname
|
||||
assert res.get('automountinformation','') == 'rw'
|
||||
assert res.get('description','') == 'new description'
|
||||
|
||||
def test_modmap(self):
|
||||
"""
|
||||
Test the `xmlrpc.automount_modmap` method.
|
||||
"""
|
||||
self.map_kw['description'] = 'new description'
|
||||
res = api.Command['automount_modmap'](**self.map_kw)
|
||||
assert res
|
||||
assert res.get('automountmapname','') == self.mapname
|
||||
assert res.get('description','') == 'new description'
|
||||
|
||||
def test_remove1key(self):
|
||||
"""
|
||||
Test the `xmlrpc.automount_delkey` method.
|
||||
"""
|
||||
delkey_kw={'automountmapname': self.mapname, 'automountkey': self.keyname}
|
||||
res = api.Command['automount_delkey'](**delkey_kw)
|
||||
assert res == True
|
||||
|
||||
# Verify that it is gone
|
||||
try:
|
||||
res = api.Command['automount_showkey'](**delkey_kw)
|
||||
except errors.NotFound:
|
||||
pass
|
||||
else:
|
||||
assert False
|
||||
|
||||
def test_remove2map(self):
|
||||
"""
|
||||
Test the `xmlrpc.automount_delmap` method.
|
||||
"""
|
||||
res = api.Command['automount_delmap'](self.mapname)
|
||||
assert res == True
|
||||
|
||||
# Verify that it is gone
|
||||
try:
|
||||
res = api.Command['automount_showmap'](self.mapname)
|
||||
except errors.NotFound:
|
||||
pass
|
||||
else:
|
||||
assert False
|
||||
|
||||
def test_remove3map(self):
|
||||
"""
|
||||
Test that the `xmlrpc.automount_delmap` method removes all keys
|
||||
"""
|
||||
# Verify that the second key we added is gone
|
||||
key_kw={'automountmapname': self.mapname, 'automountkey': self.keyname2}
|
||||
try:
|
||||
res = api.Command['automount_showkey'](**key_kw)
|
||||
except errors.NotFound:
|
||||
pass
|
||||
else:
|
||||
assert False
|
Loading…
Reference in New Issue
Block a user