예제 #1
0
    def test_CondorWorkflowNodeBaseTemplate_create_node(
            self, mock_replace, mock_node_save):
        mock_name = mock.MagicMock()
        mock_type = CondorWorkflowJobNode
        mock_job1 = mock.MagicMock()
        mock_job_parent = mock.MagicMock()
        mock_job1.parameters = {'parents': [mock_job_parent]}
        mock_parameters = {'parents': [mock_job_parent]}
        mock_app_workspace = '/foo/APP_WORKSPACE'
        mock_user_workspace = '/foo/USER_WORKSPACE'
        mock_workflow = mock.MagicMock()
        mock_workflow.__class__ = CondorWorkflow
        mock_node_save.return_value = True
        mock_replace.return_value = {
            'parents': [mock_job_parent],
            'num_jobs': 1,
            'remote_input_files': []
        }

        ret = CondorWorkflowNodeBaseTemplate(name=mock_name,
                                             type=mock_type,
                                             parameters=mock_parameters)
        node = ret.create_node(mock_workflow, mock_app_workspace,
                               mock_user_workspace)

        self.assertTrue(isinstance(node, CondorWorkflowJobNode))
        self.assertEquals(mock_parameters, ret.parameters)
        self.assertEquals('JOB', node.type)
        self.assertEquals('.', node.workspace)
예제 #2
0
    def test_CondorWorkflowNodeBaseTemplate_add_dependency(self, mock_issubclass):
        mock_name = mock.MagicMock()
        mock_type = CondorWorkflowJobNode
        mock_parameters = {}
        mock_dependency = mock.MagicMock()
        dep_set = set()
        dep_set.add(mock_dependency)
        mock_issubclass.return_value = True

        ret = CondorWorkflowNodeBaseTemplate(name=mock_name, type=mock_type, parameters=mock_parameters)
        ret.add_dependency(mock_dependency)
        self.assertEquals(dep_set, ret.dependencies)
예제 #3
0
    def test_CondorWorkflowNodeBaseTemplate_add_dependency(self, mock_issubclass):
        mock_name = mock.MagicMock()
        mock_type = CondorWorkflowJobNode
        mock_parameters = {}
        mock_dependency = mock.MagicMock()
        dep_set = set()
        dep_set.add(mock_dependency)
        mock_issubclass.return_value = True

        ret = CondorWorkflowNodeBaseTemplate(name=mock_name, type=mock_type, parameters=mock_parameters)
        ret.add_dependency(mock_dependency)
        self.assertEquals(dep_set, ret.dependencies)
예제 #4
0
    def test_CondorWorkflowNodeBaseTemplate_init(self):
        mock_name = mock.MagicMock()
        mock_type = CondorWorkflowJobNode
        mock_parameters = {}

        ret = CondorWorkflowNodeBaseTemplate(name=mock_name, type=mock_type, parameters=mock_parameters)
        self.assertEquals(mock_name, ret.name)
        self.assertEquals(CondorWorkflowJobNode, ret.type)
        self.assertEquals(mock_parameters, ret.parameters)
예제 #5
0
    def test_CondorWorkflowNodeBaseTemplate_create_node(self, mock_replace, mock_node_save):
        mock_name = mock.MagicMock()
        mock_type = CondorWorkflowJobNode
        mock_job1 = mock.MagicMock()
        mock_job_parent = mock.MagicMock()
        mock_job1.parameters = {'parents': [mock_job_parent]}
        mock_parameters = {'parents': [mock_job_parent]}
        mock_app_workspace = '/foo/APP_WORKSPACE'
        mock_user_workspace = '/foo/USER_WORKSPACE'
        mock_workflow = mock.MagicMock()
        mock_workflow.__class__ = CondorWorkflow
        mock_node_save.return_value = True
        mock_replace.return_value = {'parents': [mock_job_parent],
                                     'num_jobs': 1,
                                     'remote_input_files': []}

        ret = CondorWorkflowNodeBaseTemplate(name=mock_name, type=mock_type, parameters=mock_parameters)
        node = ret.create_node(mock_workflow, mock_app_workspace, mock_user_workspace)

        self.assertTrue(isinstance(node, CondorWorkflowJobNode))
        self.assertEquals(mock_parameters, ret.parameters)
        self.assertEquals('JOB', node.type)
        self.assertEquals('.', node.workspace)