torture_tdb.py

来自「samba最新软件」· Python 代码 · 共 91 行

PY
91
字号
#!/usr/bin/pythonimport sys, osimport Tdbdef fail(msg):    print 'FAILED:', msg    sys.exit(1)tdb_file = '/tmp/torture_tdb.tdb'# Create temporary tdb filet = Tdb.Tdb(tdb_file, flags = Tdb.CLEAR_IF_FIRST)# Check non-existent key throws KeyError exceptiontry:    t['__none__']except KeyError:    passelse:    fail('non-existent key did not throw KeyError')# Check storing keyt['bar'] = '1234'if t['bar'] != '1234':    fail('store key failed')# Check key existsif not t.has_key('bar'):    fail('has_key() failed for existing key')if t.has_key('__none__'):    fail('has_key() succeeded for non-existent key')# Delete keytry:    del(t['__none__'])except KeyError:    passelse:    fail('delete of non-existent key did not throw KeyError')del t['bar']if t.has_key('bar'):    fail('delete of existing key did not delete key')# Clear all keyst.clear()if len(t) != 0:    fail('clear failed to remove all keys')# Other dict functionst['a'] = '1't['ab'] = '12't['abc'] = '123'if len(t) != 3:    fail('len method produced wrong value')keys = t.keys()values = t.values()items = t.items()if set(keys) != set(['a', 'ab', 'abc']):    fail('keys method produced wrong values')if set(values) != set(['1', '12', '123']):    fail('values method produced wrong values')if set(items) != set([('a', '1'), ('ab', '12'), ('abc', '123')]):    fail('values method produced wrong values')t.close()# Re-open read-onlyt = Tdb.Tdb(tdb_file, open_flags = os.O_RDONLY)t.keys()t.close()# Clean upos.unlink(tdb_file)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?