示例#1
0
    def test_if_param_not_set(self):
        os.environ['CONFIG_DIR'] = "test/resources/configs/config_if"

        job_config = JobConfig()

        job = job_config.generate_job("job1", "foo").chain

        tasks = job.tasks
        self.assertEqual(2, len(tasks))

        self.assertEqual('task1', tasks[0]['task'])
        self.assertEqual('task3', tasks[1]['task'])
示例#2
0
    def test_if_param_true(self):
        os.environ['CONFIG_DIR'] = "test/resources/configs/config_if"

        job_config = JobConfig()

        job = job_config.generate_job("job1", "foo", {"do_task2": True}).chain

        tasks = job.tasks
        self.assertEqual(3, len(tasks))

        self.assertEqual('task1', tasks[0]['task'])
        self.assertEqual('task2', tasks[1]['task'])
        self.assertEqual('task3', tasks[2]['task'])
示例#3
0
    def test_valid(self):
        os.environ['CONFIG_DIR'] = "test/resources/configs/config_valid"

        job_config = JobConfig()
        job1 = job_config.generate_job("job1", "foo").chain
        self.assertTrue(
            isinstance(job1, Signature),
            "job1 is an instance of '%s', expected 'Signature'" % type(job1))
        self.assertEqual('celery.chain', job1['task'])

        tasks = job1.tasks
        self.assertEqual(3, len(tasks))

        self.assertEqual('retrieve', tasks[0]['task'])
        self.assertEqual('foo', tasks[0]['kwargs']['object_id'])

        self.assertEqual('foreach', tasks[1]['task'])
        kwargs = tasks[1]['kwargs']
        self.assertEqual('foo', kwargs['object_id'])
        self.assertEqual('retrieve', kwargs['prev_task'])
        self.assertEqual('*.tif', kwargs['pattern'])
        self.assertEqual('convert', kwargs['subtasks'][0]['name'])
        self.assertEqual('high', kwargs['subtasks'][0]['params']['quality'])

        self.assertEqual('publish', tasks[2]['task'])
        self.assertEqual('foo', tasks[2]['kwargs']['object_id'])
        self.assertEqual('foreach', tasks[2]['kwargs']['prev_task'])

        job2 = job_config.generate_job("job2", "bar").chain
        self.assertTrue(
            isinstance(job2, Signature),
            "job2 is an instance of'%s', expected 'Signature'" % type(job1))
        self.assertEqual('celery.chain', job2['task'])

        tasks = job2.tasks
        self.assertEqual(6, len(tasks))

        self.assertEqual('generate_pdf', tasks[1]['task'])
        self.assertEqual('average', tasks[1]['kwargs']['quality'])
示例#4
0
def get_job_config():
    job_config = getattr(g, '_job_config', None)
    if job_config is None:
        job_config = g._job_config = JobConfig()
    return job_config
示例#5
0
 def test_unknown_job_type(self):
     os.environ['CONFIG_DIR'] = "test/resources/configs/config_valid"
     job_config = JobConfig()
     self.assertRaises(UnknownJobTypeException, job_config.generate_job,
                       "job3", "foo")