def test_update_success(self): """Test a successful update of a password""" ret = True try: with patch_args(subparser_name='update', identity='r3', nopassphrase='true', pwname='gentest'): with mock.patch.object(builtins, 'input', lambda _: 'y'): with mock.patch.object(getpass, 'getpass', lambda _: 'y'): update.Update(cli.Cli()) except DecryptionError: ret = False self.assertTrue(ret)
def __init__(self): #################################################################### """Intialization function for class. Register all subcommands""" #################################################################### # Hash of registered subparser actions, mapping string to actual subparser self.actions = {} home = path.expanduser("~") defaultrc = None for file in [".pkpassrc", ".pkpassrc.yml", ".pkpassrc.yaml"]: if path.isfile(path.join(home, file)): defaultrc = path.join(home, file) if not defaultrc: defaultrc = path.join(home, ".pkpassrc") self.parser = ArgumentParser(description="Public Key Password Manager") self.parser.set_default_subparser = set_default_subparser self.parser.add_argument( "--config", type=str, help= "Path to a PKPass configuration file. Defaults to '~/.pkpassrc{,.yml,.yaml}'", default=defaultrc, ) self.parser.add_argument("--debug", action="store_true", help="Errors are more verbose") self.subparsers = self.parser.add_subparsers(help="sub-commands", dest="subparser_name") card.Card(self) clip.Clip(self) create.Create(self) delete.Delete(self) distribute.Distribute(self) export.Export(self) generate.Generate(self) pkimport.Import(self) info.Info(self) pklist.List(self) listrecipients.Listrecipients(self) modify.Modify(self) recover.Recover(self) rename.Rename(self) show.Show(self) populate.Populate(self) update.Update(self) verifyinstall.VerifyInstall(self)
def __init__(self, args, recipients_database): #################################################################### Cmd.__init__(self) # Hash of registered subparser actions, mapping string to actual subparser self.actions = {} self.parser = argparse.ArgumentParser( description='Public Key Password Manager') home = os.path.expanduser("~") self.parser.add_argument( '--config', type=str, help= "Path to a PKPass configuration file. Defaults to '~/.pkpassrc'", default=os.path.join(home, '.pkpassrc')) self.subparsers = self.parser.add_subparsers(help='sub-commands', dest='subparser_name') self.recipients_database = recipients_database self.parser.error = pkparse_error card.Card(self) clip.Clip(self) create.Create(self) delete.Delete(self) distribute.Distribute(self) export.Export(self) generate.Generate(self) pkimport.Import(self) pklist.List(self) listrecipients.Listrecipients(self) recover.Recover(self) rename.Rename(self) show.Show(self) update.Update(self) # Hold onto args passed on the command line self.pre_args = args # manually remove interpreter from command line so that argparse doesn't try to use it sys.argv.remove('interpreter') # change our cwd so users can tab complete self._change_pwstore() # We basically need to grab the first argument and ditch it self.parsedargs = {}
def __init__(self): """ Intialization function for class. Register all subcommands """ #################################################################### # Hash of registered subparser actions, mapping string to actual subparser self.actions = {} home = os.path.expanduser("~") self.parser = argparse.ArgumentParser( description='Public Key Password Manager') self.parser.set_default_subparser = util.set_default_subparser self.parser.add_argument( '--config', type=str, help= "Path to a PKPass configuration file. Defaults to '~/.pkpassrc'", default=os.path.join(home, '.pkpassrc')) self.parser.add_argument('--version', action='store_true', help='Show the version of PkPass and exit') self.subparsers = self.parser.add_subparsers(help='sub-commands', dest='subparser_name') card.Card(self) clip.Clip(self) create.Create(self) delete.Delete(self) distribute.Distribute(self) export.Export(self) generate.Generate(self) pkimport.Import(self) interpreter.Interpreter(self) pklist.List(self) listrecipients.Listrecipients(self) recover.Recover(self) rename.Rename(self) show.Show(self) update.Update(self) self.parser.set_default_subparser(self.parser, name='interpreter') self.parsedargs = self.parser.parse_args() if 'version' in self.parsedargs and self.parsedargs.version: print(util.show_version()) else: self.actions[self.parsedargs.subparser_name].run(self.parsedargs)
def __init__(self): """ Intialization function for class. Register all subcommands """ #################################################################### # Hash of registered subparser actions, mapping string to actual subparser self.actions = {} home = path.expanduser("~") self.parser = ArgumentParser(description='Public Key Password Manager') self.parser.set_default_subparser = util.set_default_subparser self.parser.add_argument( '--config', type=str, help= "Path to a PKPass configuration file. Defaults to '~/.pkpassrc'", default=path.join(home, '.pkpassrc')) self.parser.add_argument('--debug', action='store_true', help="Errors are more verbose") self.subparsers = self.parser.add_subparsers(help='sub-commands', dest='subparser_name') card.Card(self) clip.Clip(self) create.Create(self) delete.Delete(self) distribute.Distribute(self) export.Export(self) generate.Generate(self) pkimport.Import(self) info.Info(self) pklist.List(self) listrecipients.Listrecipients(self) modify.Modify(self) recover.Recover(self) rename.Rename(self) show.Show(self) update.Update(self) verifyinstall.VerifyInstall(self)