Coverage for appr/commands/login.py : 27%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
super(LoginCmd, self).__init__(options) self.registry_host = options.registry_host self.signup = options.signup self.password = options.password self.email = options.email self.user = options.user self.status = None self.ssl_verify = options.cacert or not options.insecure
def _add_arguments(cls, parser): cls._add_registryhost_arg(parser) parser.add_argument("-s", "--signup", action='store_true', default=False, help="Create a new account and login") parser.add_argument("-u", "--user", nargs="?", default=None, help="username") parser.add_argument("-p", "--password", nargs="?", default=None, help="password") parser.add_argument("-e", "--email", nargs="?", default=None, help="email for signup")
client = self.RegistryClient(self.registry_host, requests_verify=self.ssl_verify) if self.user is not None: user = self.user else: user = input("Username: ") if self.password is not None: p1 = self.password else: p1 = getpass.getpass()
if self.signup: if self.password is not None: p2 = p1 else: p2 = getpass.getpass('Password confirmation: ') if self.email is not None: email = self.email else: email = input("Email: ") if p1 != p2: raise argparse.ArgumentError("password", message="Error: password mismatch") client.signup(user, p1, p2, email) self.status = "Registration complete" else: client.login(user, p1) self.status = "Login succeeded"
return {"user": self.user, "status": self.status, "host": self.registry_host}
return " >>> %s" % self.status |