File: test_nis.py

package info (click to toggle)
python2.5 2.5.5-11
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 56,224 kB
  • ctags: 97,603
  • sloc: ansic: 355,108; python: 321,195; sh: 27,074; asm: 6,567; makefile: 4,375; lisp: 3,696; perl: 3,674; xml: 894; objc: 756; sed: 2
file content (39 lines) | stat: -rw-r--r-- 997 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from test.test_support import verbose, TestFailed, TestSkipped
import nis

print 'nis.maps()'
try:
    maps = nis.maps()
except nis.error, msg:
    # 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
    raise TestSkipped, msg

try:
    # On some systems, this map is only accessible to the
    # super user
    maps.remove("passwd.adjunct.byname")
except ValueError:
    pass

done = 0
for nismap in maps:
    if verbose:
        print nismap
    mapping = nis.cat(nismap)
    for k, v in mapping.items():
        if verbose:
            print '    ', k, v
        if not k:
            continue
        if nis.match(k, nismap) != v:
            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
    if done:
        break