2002-07-23 16:04:11 -03:00
|
|
|
from test.test_support import verbose, TestFailed, TestSkipped
|
1996-12-10 21:01:38 -04:00
|
|
|
import nis
|
|
|
|
|
1996-12-23 19:39:42 -04:00
|
|
|
print 'nis.maps()'
|
1997-05-15 15:27:49 -03:00
|
|
|
try:
|
|
|
|
maps = nis.maps()
|
|
|
|
except nis.error, msg:
|
1999-01-28 00:54:33 -04:00
|
|
|
# NIS is probably not active, so this test isn't useful
|
|
|
|
if verbose:
|
|
|
|
raise TestFailed, msg
|
|
|
|
# only do this if running under the regression suite
|
2000-08-04 10:34:43 -03:00
|
|
|
raise TestSkipped, msg
|
1997-05-15 15:27:49 -03:00
|
|
|
|
2006-10-22 10:46:23 -03:00
|
|
|
try:
|
|
|
|
# On some systems, this map is only accessible to the
|
|
|
|
# super user
|
|
|
|
maps.remove("passwd.adjunct.byname")
|
|
|
|
except ValueError:
|
|
|
|
pass
|
|
|
|
|
1996-12-11 12:28:30 -04:00
|
|
|
done = 0
|
|
|
|
for nismap in maps:
|
|
|
|
if verbose:
|
1998-03-26 15:42:58 -04:00
|
|
|
print nismap
|
1996-12-11 12:28:30 -04:00
|
|
|
mapping = nis.cat(nismap)
|
|
|
|
for k, v in mapping.items():
|
1998-03-26 15:42:58 -04:00
|
|
|
if verbose:
|
|
|
|
print ' ', k, v
|
|
|
|
if not k:
|
|
|
|
continue
|
2000-12-12 19:11:42 -04:00
|
|
|
if nis.match(k, nismap) != v:
|
1998-03-26 15:42:58 -04:00
|
|
|
print "NIS match failed for key `%s' in map `%s'" % (k, nismap)
|
|
|
|
else:
|
|
|
|
# just test the one key, otherwise this test could take a
|
|
|
|
# very long time
|
|
|
|
done = 1
|
|
|
|
break
|
1996-12-11 12:28:30 -04:00
|
|
|
if done:
|
1998-03-26 15:42:58 -04:00
|
|
|
break
|