Esempio n. 1
0
    def testUsage(self):
        # default
        parser = ParseArguments()
        with stdout_replaced() as out:
            parser.print_help()
            s = out.getvalue()
            self.assertEqual(['Usage: _alltests.py [options]', ''],
                             s.splitlines()[:2])

        # explicit default: "%prog [options]"
        usage = "%prog [options]"
        parser = ParseArguments(usage=usage)
        with stdout_replaced() as out:
            parser.print_help()
            s = out.getvalue()
            self.assertEqual(['Usage: _alltests.py [options]', ''],
                             s.splitlines()[:2])

        # decidedly different
        usage = "|before| %prog [options] [more-stuff]"
        parser = ParseArguments(usage=usage)
        with stdout_replaced() as out:
            parser.print_help()
            s = out.getvalue()
            self.assertEqual(
                ['Usage: |before| _alltests.py [options] [more-stuff]', ''],
                s.splitlines()[:2])
Esempio n. 2
0
 def testMetaVars(self):
     parser = ParseArguments()
     parser.addOption('', '--option')
     parser.addOption('', '--defaultValue', default='default')
     parser.addOption('', '--noneValue', default=None)
     parser.addOption('', '--port', help='Port', type='int')
     parser.addOption('',
                      '--otherPort',
                      help='Port',
                      type='int',
                      default=10000)
     parser.addOption('',
                      '--quiet',
                      action='store_false',
                      default=True,
                      dest='verbose')
     with stdout_replaced() as out:
         parser.print_help()
         self.assertTrue("--option=<string>" in out.getvalue(),
                         out.getvalue())
         self.assertTrue("--defaultValue='default'" in out.getvalue(),
                         out.getvalue())
         self.assertTrue("--noneValue=<string>" in out.getvalue(),
                         out.getvalue())
         self.assertTrue("--port=<int>" in out.getvalue(), out.getvalue())
         self.assertTrue("--otherPort=10000" in out.getvalue(),
                         out.getvalue())
Esempio n. 3
0
 def testEpilog(self):
     epilog = 'And this is how they lived happily ever after.'
     parser = ParseArguments(epilog=epilog)
     parser.addOption('', '--option')
     with stdout_replaced() as out:
         parser.print_help()
         s = out.getvalue()
         self.assertTrue(
             s.endswith('--option=<string>  \n\n{}\n'.format(epilog)), s)
Esempio n. 4
0
def main():
    parser = ParseArguments()
    parser.addOption('', '--port', type='int', mandatory=True)
    parser.addOption('', '--solrPort', type='int', mandatory=True)
    options, arguments = parser.parse()

    reactor = Reactor()
    server = createServer(reactor, **vars(options))
    list(compose(server.once.observer_init()))
    reactor.loop()
Esempio n. 5
0
 def testMandatoryKey(self):
     parser = ParseArguments()
     parser.addOption('', '--name', help='Naam', mandatory=True)
     parser.addOption('', '--port', help='Port', type='int', mandatory=True)
     argv = ['script', '--name', 'TestServer', '--port', '1234']
     options, arguments = parser.parse(argv)
     self.assertEqual(1234, options.port)
     self.assertEqual('TestServer', options.name)
     argv = ['script', '--port', '1234']
     self.assertRaises(ValueError, parser._parse, argv)
 def testError(self):
     parser = ParseArguments()
     parser.addOption('', '--option')
     with stderr_replaced() as err:
         try:
             parser.error('error msg.')
             self.fail()
         except SystemExit, e:
             self.assertEquals(2, e.code)
         lines = err.getvalue().split('\n')
Esempio n. 7
0
    def testDefaultValueInHelp(self):
        parser = ParseArguments()
        parser.addOption('',
                         '--option',
                         help='Option with a default value of {default}',
                         default=42)

        with stdout_replaced() as out:
            parser.print_help()
            self.assertTrue(
                "Option with a default value of 42" in out.getvalue(),
                out.getvalue())
Esempio n. 8
0
 def testDescription(self):
     description = "Very nice program."
     parser = ParseArguments(description=description)
     parser.addOption('', '--option')
     with stdout_replaced() as out:
         parser.print_help()
         s = out.getvalue()
         self.assertEqual([
             'Usage: _alltests.py [options]', '', description, '',
             'Options:'
         ],
                          s.splitlines()[:5])
Esempio n. 9
0
 def testAdditionalOptions_optional(self):
     argv = ['script', '--name', 'TestServer']
     parser = ParseArguments()
     parser.addOption('', '--name', help='Naam', mandatory=True)
     parser.addOption('', '--port', help='Port', type='int')
     parser.addOption('',
                      '--withDefault',
                      help='Default',
                      default="default",
                      type='str')
     options, arguments = parser.parse(argv)
     self.assertEqual('TestServer', options.name)
     self.assertEqual(None, options.port)
     self.assertEqual('default', options.withDefault)
Esempio n. 10
0
    def testError(self):
        parser = ParseArguments()
        parser.addOption('', '--option')
        with stderr_replaced() as err:
            try:
                parser.error('error msg.')
                self.fail()
            except SystemExit as e:
                self.assertEqual(2, e.code)
            lines = err.getvalue().split('\n')

        self.assertEqual(4, len(lines))
        self.assertTrue(lines[0].startswith('Usage: '))
        self.assertEqual('', lines[1])
        self.assertTrue(lines[2].endswith(': error: error msg.'))
        self.assertEqual('', lines[3])