self.api = mock.MagicMock()
self.api._rootDesc = get_rootDesc()
+ def tearDown(self):
+ root_logger = logging.getLogger('')
+
+ # Remove existing RuntimeStatusLoggingHandlers if they exist
+ handlers = [h for h in root_logger.handlers if not isinstance(h, arvados_cwl.executor.RuntimeStatusLoggingHandler)]
+ root_logger.handlers = handlers
+
@mock.patch("arvados.collection.Collection")
@mock.patch("arvados.collection.CollectionReader")
def test_make_output_collection(self, reader, col):
final.open.return_value = openmock
openmock.__enter__.return_value = cwlout
- _, runner.final_output_collection = runner.make_output_collection("Test output", ["foo"], "tag0,tag1,tag2", {
+ _, runner.final_output_collection = runner.make_output_collection("Test output", ["foo"], "tag0,tag1,tag2", {}, {
"foo": {
"class": "File",
"location": "keep:99999999999999999999999999999991+99/foo.txt",
final.copy.assert_has_calls([mock.call('bar.txt', 'baz.txt', overwrite=False, source_collection=readermock)])
final.copy.assert_has_calls([mock.call('foo.txt', 'foo.txt', overwrite=False, source_collection=readermock)])
- final.save_new.assert_has_calls([mock.call(ensure_unique_name=True, name='Test output', owner_uuid='zzzzz-j7d0g-zzzzzzzzzzzzzzz', storage_classes=['foo'])])
+ final.save_new.assert_has_calls([mock.call(ensure_unique_name=True, name='Test output', owner_uuid='zzzzz-j7d0g-zzzzzzzzzzzzzzz', properties={}, storage_classes=['foo'])])
self.assertEqual("""{
"bar": {
"basename": "baz.txt",
reader.return_value = readermock
# This output describes a single file listed in 2 different directories
- _, runner.final_output_collection = runner.make_output_collection("Test output", ["foo"], "", { 'out': [
+ _, runner.final_output_collection = runner.make_output_collection("Test output", ["foo"], "", {}, { 'out': [
{
'basename': 'testdir1',
'listing': [
reader.return_value = readermock
# This output describes two literals with the same basename
- _, runner.final_output_collection = runner.make_output_collection("Test output", ["foo"], "", [
+ _, runner.final_output_collection = runner.make_output_collection("Test output", ["foo"], "", {}, [
{
'lit':
{
# Check that the file name conflict is resolved and open is called for both
final.open.assert_any_call("a_file", "wb")
- final.open.assert_any_call("a_file_2", "wb")
\ No newline at end of file
+ final.open.assert_any_call("a_file_2", "wb")