def test_catlessPassword(self): 'Saving and loading password without category' tree = self.pdb.getTree() pwd = FigaroPassword(title='CLHost', password='******') tree.addNode(pwd) self.pdb.save(fname='fpm.saved') self.pdb = PDBFigaro() self.pdb.open(self.password, fname='fpm.saved') tlnodes = self.pdb.getTree().getNodes() self.assertEqual(len(tlnodes), 1) self.assertEqual(tlnodes[0].title, 'CLHost') self.assertEqual(tlnodes[0]['password'], 'CLPass') self.assertEqual(tlnodes[0]['url'], '')
def openDatabase(self): self.pdb = PDBFigaro( filename=expanduser(self.conf.options['fpm-database'])) dlg = LoginDialog(pdb=self.pdb) password = dlg['password'] try: res = dlg.run() if res != Gtk.ResponseType.OK: print("Good bye.") sys.exit(1) except DatabaseNotExist: dlg.destroyDialog() newpass = self.createNewDatabase() if newpass is None: sys.exit(1) self.pdb.open(newpass)
def test_tooLongPassword(self): pwd = FigaroPassword() longpswd = "1234567890" * 3 self.assertRaises(FigaroPasswordTooLongError, pwd.__setitem__, 'password', longpswd) self.assertRaises(FigaroPasswordTooLongError, pwd.update, {'password': longpswd}) pwd.store_long_password = 1 pwd['title'] = "Long password" pwd['password'] = longpswd self.pdb.getTree()['Test'].addNode(pwd) self.pdb.save(fname="fpm.saved") self.pdb = PDBFigaro() self.pdb.open(self.password, fname='fpm.saved') saved_pwd = self.pdb.getTree()['Test'].locate('Long password')[0] self.assertEqual(saved_pwd['password'], longpswd)
def openDatabase(self): ''' Open database amd prompt for password if nesessary ''' self.pdb = PDBFigaro( filename=expanduser(self.conf.options['fpm-database'])) password = "" print "Ked Password Manager (version %s)" % __version__ while 1: try: self.pdb.open(password) break except WrongPassword: if password: print "Error! Wrong password." else: print "Provide password to access the database (Ctrl-C to exit)" password = getpass("Password: "******"Password accepted." print
def setUp(self): self.pdb = PDBFigaro() self.pdb.open(self.password, fname='test/fpm.sample')
def test_unrotate(self): pdb = PDBFigaro() unrotated = pdb._unrotate('FIGARO\x00\xe3') self.assertEqual(unrotated, 'FIGARO')
def setUp(self): pdb = PDBFigaro() pdb.open(self.password, fname='test/fpm.sample') pdb.save(fname="fpm.saved") self.pdb = PDBFigaro() self.pdb.open(self.password, fname='fpm.saved')
#! /usr/bin/python2 from kedpm.plugins.pdb_figaro import PDBFigaro, FigaroPassword import getpass import sys import os import json f = os.path.join(os.environ["HOME"],".fpm/fpm") if len(sys.argv) > 1: f = sys.argv[1] db = PDBFigaro(filename=f) pw = getpass.getpass('Please give password : '******'title']] = { 'user': n['user'], 'password' : n['password'], 'url' : n['url'], 'notes' : n['notes']} branches = t.getBranches() folders = {}