def test_execute_subjob_passes_correct_build_executor_index_to_execute_command_in_project( self): Configuration['artifact_directory'] = expanduser('~') executor = SubjobExecutor(1) executor._project_type = Mock() executor._project_type.execute_command_in_project = Mock( return_value=(1, 2)) self.patch('app.slave.subjob_executor.fs_util') self.patch('app.slave.subjob_executor.shutil') output_file_mock = self.patch('app.slave.subjob_executor.open', new=mock_open(read_data=''), create=True).return_value os = self.patch('app.slave.subjob_executor.os') os.path = Mock() os.path.join = Mock(return_value='path') atomic_commands = ['command'] executor.id = 2 expected_env_vars = { 'ARTIFACT_DIR': join(expanduser('~'), '1', 'artifact_2_0'), 'ATOM_ID': 0, 'EXECUTOR_INDEX': 2, 'MACHINE_EXECUTOR_INDEX': 2, 'BUILD_EXECUTOR_INDEX': 8 } executor.execute_subjob(build_id=1, subjob_id=2, atomic_commands=atomic_commands, base_executor_index=6) executor._project_type.execute_command_in_project.assert_called_with( 'command', expected_env_vars, output_file=output_file_mock)
def test_execute_subjob_passes_correct_build_executor_index_to_execute_command_in_project(self): Configuration['artifact_directory'] = expanduser('~') executor = SubjobExecutor(1) executor._project_type = Mock() executor._project_type.execute_command_in_project = Mock(return_value=(1, 2)) self.patch('app.slave.subjob_executor.fs_util') self.patch('app.slave.subjob_executor.shutil') output_file_mock = self.patch('app.slave.subjob_executor.open', new=mock_open(read_data=''), create=True).return_value os = self.patch('app.slave.subjob_executor.os') os.path = Mock() os.path.join = Mock(return_value='path') atomic_commands = ['command'] executor.id = 2 expected_env_vars = { 'ARTIFACT_DIR': join(expanduser('~'), '1', 'artifact_2_0'), 'ATOM_ID': 0, 'EXECUTOR_INDEX': 2, 'MACHINE_EXECUTOR_INDEX': 2, 'BUILD_EXECUTOR_INDEX': 8 } executor.execute_subjob(build_id=1, subjob_id=2, atomic_commands=atomic_commands, base_executor_index=6) executor._project_type.execute_command_in_project.assert_called_with('command', expected_env_vars, output_file=output_file_mock)
def test_execute_subjob_passes_correct_build_executor_index_to_execute_command_in_project( self): executor = SubjobExecutor(1) executor._project_type = Mock() executor._project_type.execute_command_in_project = Mock( return_value=(1, 2)) self.patch('app.slave.subjob_executor.fs_util') self.patch('app.slave.subjob_executor.shutil') os = self.patch('app.slave.subjob_executor.os') os.path = Mock() os.path.join = Mock(return_value='path') atomic_commands = ['command'] executor.id = 2 expected_env_vars = { 'ARTIFACT_DIR': 'path', 'ATOM_ID': 0, 'EXECUTOR_INDEX': 2, 'MACHINE_EXECUTOR_INDEX': 2, 'BUILD_EXECUTOR_INDEX': 8 } executor.execute_subjob(build_id=1, subjob_id=2, subjob_artifact_dir='dir', atomic_commands=atomic_commands, base_executor_index=6) executor._project_type.execute_command_in_project.assert_called_with( 'command', expected_env_vars)
def test_execute_subjob_passes_correct_build_executor_index_to_execute_command_in_project(self): executor = SubjobExecutor(1) executor._project_type = Mock() executor._project_type.execute_command_in_project = Mock(return_value=(1, 2)) self.patch('app.slave.subjob_executor.fs_util') self.patch('app.slave.subjob_executor.shutil') os = self.patch('app.slave.subjob_executor.os') os.path = Mock() os.path.join = Mock(return_value='path') atomic_commands = ['command'] executor.id = 2 expected_env_vars = { 'ARTIFACT_DIR': 'path', 'ATOM_ID': 0, 'EXECUTOR_INDEX': 2, 'MACHINE_EXECUTOR_INDEX': 2, 'BUILD_EXECUTOR_INDEX': 8 } executor.execute_subjob(build_id=1, subjob_id=2, subjob_artifact_dir='dir', atomic_commands=atomic_commands, base_executor_index=6) executor._project_type.execute_command_in_project.assert_called_with('command', expected_env_vars)