示例#1
0
 def test_missing_skipped(self):
     self.factory.options = [
         CommandOption('foo', '-f=${value}', None),
         CommandOption('bar', '-b=${value}', None)
     ]
     values = {'bar': 'v1'}
     runner = self.DummyRunner(
         self.factory, self.configuration, values, '/home'
     )
     self.assertListEqual(runner.args, ['-b=v1'])
示例#2
0
 def test_plain_args(self):
     self.factory.options = [
         CommandOption('foo', '-f=${value}', None),
         CommandOption('bar', '--bar=${value}', None),
         CommandOption('qux', '-q=${value}', '10')
     ]
     values = {'foo': 'v1', 'bar': 'v2', 'qux': 'v3'}
     runner = self.DummyRunner(
         self.factory, self.configuration, values, '/home'
     )
     result = ['-f=v1', '--bar=v2', '-q=v3']
     self.assertListEqual(runner.args, result)
示例#3
0
 def test_value_with_space(self):
     self.factory.options = [CommandOption('foo', '-f=${value}', None)]
     values = {'foo': 'v1 v1'}
     runner = self.DummyRunner(
         self.factory, self.configuration, values, '/home'
     )
     self.assertListEqual(runner.args, ['-f=v1 v1'])
示例#4
0
 def test_default_override_null(self):
     self.factory.options = [
         CommandOption('foo', '-f=${value}', 'v')
     ]
     runner = self.DummyRunner(
         self.factory, self.configuration, {'foo': None}, '/home'
     )
     self.assertListEqual(runner.args, ['-f=v'])
示例#5
0
 def test_file_outside_cwd(self):
     self.factory.options = [
         CommandOption('foo', '-f=${file:../input.txt}', None)
     ]
     values = {'foo': '/home/slivka/input.in'}
     with self.assertRaises(ValueError):
         self.DummyRunner(
             self.factory, self.configuration, values, '/home'
         )
示例#6
0
 def test_file_in_folder(self):
     self.factory.options = [
         CommandOption('foo', '-f=${file:result/input.txt}', None)
     ]
     values = {'foo': '/home/slivka/input.in'}
     runner = self.DummyRunner(
         self.factory, self.configuration, values, '/home'
     )
     self.assertListEqual(runner.args, ['-f=result/input.txt'])
示例#7
0
 def test_link(self, mock_isdir, mock_link):
     self.factory.options = [
         CommandOption('foo', '-f=${file:input.txt}', None)
     ]
     values = {'foo': '/home/slivka/inputs/file.in'}
     runner = self.DummyRunner(
         self.factory, self.configuration, values, '/home/workDir'
     )
     mock_isdir.return_value = True
     with mock.patch('slivka.scheduler.execution_manager.os.mkdir'):
         runner.prepare()
     mock_link.assert_called_once_with(
         os.path.normpath('/home/slivka/inputs/file.in'),
         os.path.normpath(os.path.join('/home/workDir', 'input.txt'))
     )