示例#1
0
 def testShellAlias(self):
     """This actually just test that subprocess.call is called.
     """
     alias = Alias.create_alias('count', '!pubs list -k | wc -l')
     alias.command(None, to_args([]))
     self.assertIsNone(self.cmd_execute.executed)
     self.assertIsNotNone(self.subprocess.called)
示例#2
0
 def testShellAliasEscapes(self):
     alias = Alias.create_alias('count', '!echo "$@"')
     args = ['a b c', "d,e f\""]
     alias.command(None, to_args(args))
     self.assertIsNone(self.cmd_execute.executed)
     self.assertIsNotNone(self.subprocess.called)
     self.assertEqual(
         shlex.split(self.subprocess.called.splitlines()[-1])[1:],
         args)
示例#3
0
    def testShellAliasNamedArguments(self):
        parser = argparse.ArgumentParser()
        parser.add_argument('--test2')
        subparsers = parser.add_subparsers(title='commands', dest='command')

        alias = Alias.create_alias('test', '!echo "$@"')
        alias.parser(subparsers)
        args = ['test', '2', '--option', '3']
        args = parser.parse_args(args)

        self.assertEqual(args.command, 'test')
        self.assertListEqual(args.arguments, ['2', '--option', '3'])
示例#4
0
 def testAlias(self):
     alias = Alias.create_alias('print', 'open -w lpppp')
     alias.command(None, to_args(['CiteKey']))
     self.assertIsNone(self.subprocess.called)
     self.assertEqual(self.cmd_execute.executed,
                      ['pubs', 'open', '-w', 'lpppp', 'CiteKey'])