Exemplo n.º 1
0
 def test_create_user_job_order_does_not_modify_original(self):
     job_template = JobTemplate(tag='sometag', name='myjob', fund_code='001', job_order={
         'myfile': {
             'class': 'File',
             'path': 'dds://project/somepath.txt'
         }
     })
     job_template.create_user_job_order()
     self.assertEqual(job_template.job_order, {
         'myfile': {
             'class': 'File',
             'path': 'dds://project/somepath.txt',
         }
     })
Exemplo n.º 2
0
 def test_create_user_job_order_json(self):
     job_template = JobTemplate(tag='sometag', name='myjob', fund_code='001', job_order={
         'myfile': {
             'class': 'File',
             'path': 'dds://project/somepath.txt'
         },
         'my_path_file': {
             'class': 'File',
             'path': '/tmp/data.txt'
         },
         'my_url_file': {
             'class': 'File',
             'location': 'https://github.com/datafile1.dat'
         },
         'myint': 123,
         'myfileary': [
             {
                 'class': 'File',
                 'path': 'dds://project/somepath1.txt'
             },
             {
                 'class': 'File',
                 'path': 'dds://project/somepath2.txt'
             },
         ],
         'myfastq_pairs': [
             {'file1':
                  {'class': 'File',
                   'path': 'dds://myproject/rawData/SAAAA_R1_001.fastq.gz'
                   },
              'file2': {
                  'class': 'File',
                  'path': 'dds://myproject/rawData/SAAAA_R2_001.fastq.gz'
              },
              'name': 'Sample1'}]
     })
     user_job_order = job_template.create_user_job_order()
     self.assertEqual(user_job_order['myint'], 123)
     self.assertEqual(user_job_order['myfile'], {
         'class': 'File',
         'path': 'dds_project_somepath.txt'
     })
     self.assertEqual(user_job_order['myfileary'], [
         {
             'class': 'File',
             'path': 'dds_project_somepath1.txt'
         },
         {
             'class': 'File',
             'path': 'dds_project_somepath2.txt'
         },
     ])
     self.assertEqual(user_job_order['myfastq_pairs'], [
         {'file1':
              {'class': 'File',
               'path': 'dds_myproject_rawData_SAAAA_R1_001.fastq.gz'
               },
          'file2': {
              'class': 'File',
              'path': 'dds_myproject_rawData_SAAAA_R2_001.fastq.gz'
          },
          'name': 'Sample1'}])
     self.assertEqual(user_job_order['my_path_file'], {
         'class': 'File',
         'path': '/tmp/data.txt'
     }, "Plain file paths should not be modified.")
     self.assertEqual(user_job_order['my_url_file'], {
             'class': 'File',
             'location': 'https://github.com/datafile1.dat'
     }, "URL file paths should not be modified.")