def test_attach_parser_sets_optional_params(self, param_name):
     """Optional params are accepted by attach_parser."""
     parser = attach_parser()
     arg = '--%s' % param_name
     value = 'val%s' % param_name
     with mock.patch('sys.argv', ['attach', arg, value]):
         args = parser.parse_args()
     assert value == getattr(args, param_name)
 def test_attach_parser_requires_positional_token(self, capsys):
     """Token is required"""
     parser = attach_parser()
     with mock.patch("sys.argv", ["attach"]):
         with pytest.raises(SystemExit):
             parser.parse_args()
     _out, err = capsys.readouterr()
     assert "the following arguments are required: token" in err
Exemplo n.º 3
0
    def test_attach_parser_creates_a_parser_when_not_provided(self):
        """Create a named parser configured for 'attach'."""
        m_parser = attach_parser(mock.Mock())
        assert "ua attach <token> [flags]" == m_parser.usage
        assert "attach" == m_parser.prog
        assert "Flags" == m_parser._optionals.title

        full_parser = get_parser()
        with mock.patch("sys.argv", ["ua", "attach", "token"]):
            args = full_parser.parse_args()
        assert "token" == args.token
    def test_attach_parser_creates_a_parser_when_not_provided(self):
        """Create a named parser configured for 'attach'."""
        parser = attach_parser()

        assert "ubuntu-advantage attach [token] [flags]" == parser.usage
        descr = ("Attach this machine to an existing Ubuntu Advantage support"
                 " subscription")
        assert descr == parser.description
        assert "attach" == parser.prog
        assert "Flags" == parser._optionals.title

        with mock.patch("sys.argv", ["attach", "token"]):
            args = parser.parse_args()
        assert "token" == args.token
    def test_attach_parser_creates_a_parser_when_not_provided(self):
        """Create a named parser configured for 'attach' on no arguments."""
        parser = attach_parser()

        assert 'ubuntu-advantage attach [token] [flags]' == parser.usage
        descr = ('Attach this machine to an existing Ubuntu Advantage support'
                 ' subscription')
        assert descr == parser.description
        assert 'attach' == parser.prog
        assert 'Flags' == parser._optionals.title

        with mock.patch('sys.argv', ['attach']):
            args = parser.parse_args()
        assert None is args.password
        assert None is args.token
        assert None is args.email
        assert None is args.otp
 def test_attach_parser_help_points_to_ua_contract_dashboard_url(self):
     """Contracts' dashboard URL is referenced by ua attach --help."""
     parser = attach_parser()
     with mock.patch('sys.stdout', new_callable=StringIO) as m_stdout:
         parser.print_help()
     assert UA_DASHBOARD_URL in m_stdout.getvalue()
 def test_attach_parser_accepts_positional_token(self):
     """Token positional param is accepted by attach_parser."""
     parser = attach_parser()
     with mock.patch('sys.argv', ['attach', 'tokenval']):
         args = parser.parse_args()
     assert 'tokenval' == args.token
Exemplo n.º 8
0
 def test_attach_parser_optionals_title(self):
     parser = attach_parser(mock.Mock())
     assert "Flags" == parser._optionals.title
Exemplo n.º 9
0
 def test_attach_parser_prog(self):
     parser = attach_parser(mock.Mock())
     assert "attach" == parser.prog
Exemplo n.º 10
0
 def test_attach_parser_usage(self):
     parser = attach_parser(mock.Mock())
     assert "ua attach <token> [flags]" == parser.usage
Exemplo n.º 11
0
 def test_attach_parser_prog(self, _m_resources):
     parser = attach_parser(mock.Mock())
     assert "attach" == parser.prog
 def test_attach_parser_defaults_to_auto_enable(self):
     parser = attach_parser()
     with mock.patch("sys.argv", ["attach", "token"]):
         args = parser.parse_args()
     assert args.auto_enable
 def test_attach_parser_accepts_and_stores_no_auto_enable(self):
     parser = attach_parser()
     with mock.patch("sys.argv", ["attach", "--no-auto-enable", "token"]):
         args = parser.parse_args()
     assert not args.auto_enable
 def test_attach_parser_help_points_to_ua_contract_dashboard_url(
         self, capsys):
     """Contracts' dashboard URL is referenced by ua attach --help."""
     parser = attach_parser()
     parser.print_help()
     assert UA_AUTH_TOKEN_URL in capsys.readouterr()[0]