Exemple #1
0
    def test_deploy_all(self):
        def validate_update(req):
            self.assert_('node2' in req.get_full_url())
            self.assertEquals(req.get_method(), 'POST')
            return 200, {'id': 'node2', 'status': 'ACTIVE'}

        responses = iter([
            lambda req: (200, [
                {
                    'id': 'node1',
                    'status': 'ACTIVE'
                },
                {
                    'id': 'node2',
                    'status': 'PENDING'
                },
            ]),
            validate_update,
        ])

        def mock_open(req):
            response = responses.next()
            code, info = response(req)
            body = StringIO(dumps(info))
            return urllib2.addinfourl(body, {}, req.get_full_url(), code)

        with patch(console, 'urlopen', mock_open):
            parser = SubCommandParser([console.NodeConsole()])
            parser.run("node deploy --all".split())
Exemple #2
0
def main(argv=sys.argv[1:]):
    logger.configure(log_to_console=True, level=logger.DEBUG,
                     lunr_log_level=logger.DEBUG, capture_stdio=False)

    # Create the top-level parser
    parser = SubCommandParser([
        TypeConsole(), NodeConsole(), AccountConsole(), VolumeConsole(),
        BackupConsole(), ExportConsole(), ToolConsole(),
    ], desc=__doc__.strip())
    # execute the command requested
    try:
        return parser.run(argv)
    except HTTPClientError, e:
        print str(e)
        return 1
Exemple #3
0
def main(argv=sys.argv[1:]):
    logger.configure(log_to_console=True, level=logger.DEBUG,
                     lunr_log_level=logger.DEBUG, capture_stdio=False)

    # Create the top-level parser
    parser = SubCommandParser([VolumeConsole(), ExportConsole(),
                              BackupConsole(), ToolsConsole()],
                              desc=__doc__.strip())
    # execute the command requested
    try:
        return parser.run(argv)
    except StorageError, e:
        if parser.command.verbose:
            raise
        return '%s: %s' % (e.__class__.__name__, e)
Exemple #4
0
def main(argv=sys.argv[1:]):
    logger.configure(log_to_console=True,
                     level=logger.DEBUG,
                     lunr_log_level=logger.DEBUG,
                     capture_stdio=False)

    # Create the top-level parser
    parser = SubCommandParser(
        [VolumeConsole(),
         ExportConsole(),
         BackupConsole(),
         ToolsConsole()],
        desc=__doc__.strip())
    # execute the command requested
    try:
        return parser.run(argv)
    except StorageError, e:
        if parser.command.verbose:
            raise
        return '%s: %s' % (e.__class__.__name__, e)
Exemple #5
0
class TestSubCommands(TestCase):

    def setUp(self):
        self.parser = SubCommandParser([Api()])

    def test_opt_decorator(self):
        result = self.parser.run("api create derrick".split())
        self.assertEquals(result, ('derrick', None))

        result = self.parser.run("api create derrick "
                                 "--last-name wippler".split())
        self.assertEquals(result, ('derrick', 'wippler'))

    def test_extra_arguments(self):
        result = self.parser.run("api arguments derrick --extra1 extra1"
                                 " --extra2 extra2".split())
        self.assertEquals(result, ('derrick', 'extra1', 'extra2'))

    def test_underscore_command(self):
        result = self.parser.run("api underscore-command".split())
        self.assertEquals(result, None)

        result = self.parser.run("api underscore-command --under-score "
                                 "lovesCamelCaseInstead".split())
        self.assertEquals(result, 'lovesCamelCaseInstead')

    def test_noargs(self):
        result = self.parser.run('api list'.split())
        self.assertEquals(result, "listing")
Exemple #6
0
class TestSubCommands(TestCase):
    def setUp(self):
        self.parser = SubCommandParser([Api()])

    def test_opt_decorator(self):
        result = self.parser.run("api create derrick".split())
        self.assertEquals(result, ('derrick', None))

        result = self.parser.run("api create derrick "
                                 "--last-name wippler".split())
        self.assertEquals(result, ('derrick', 'wippler'))

    def test_extra_arguments(self):
        result = self.parser.run("api arguments derrick --extra1 extra1"
                                 " --extra2 extra2".split())
        self.assertEquals(result, ('derrick', 'extra1', 'extra2'))

    def test_underscore_command(self):
        result = self.parser.run("api underscore-command".split())
        self.assertEquals(result, None)

        result = self.parser.run("api underscore-command --under-score "
                                 "lovesCamelCaseInstead".split())
        self.assertEquals(result, 'lovesCamelCaseInstead')

    def test_noargs(self):
        result = self.parser.run('api list'.split())
        self.assertEquals(result, "listing")
Exemple #7
0
    def test_deploy_all(self):
        def validate_update(req):
            self.assert_('node2' in req.get_full_url())
            self.assertEquals(req.get_method(), 'POST')
            return 200, {'id': 'node2', 'status': 'ACTIVE'}

        responses = iter([
            lambda req: (200, [
                {'id': 'node1', 'status': 'ACTIVE'},
                {'id': 'node2', 'status': 'PENDING'},
            ]),
            validate_update,
        ])

        def mock_open(req):
            response = responses.next()
            code, info = response(req)
            body = StringIO(dumps(info))
            return urllib2.addinfourl(body, {}, req.get_full_url(), code)

        with patch(console, 'urlopen', mock_open):
            parser = SubCommandParser([console.NodeConsole()])
            parser.run("node deploy --all".split())
Exemple #8
0
 def setUp(self):
     self.parser = SubCommandParser([Api()])
Exemple #9
0
 def setUp(self):
     self.parser = SubCommandParser([Api()])