def test_empty_cromwell_query_params(self):
     query = QueryJobsRequest()
     self.assertEqual(
         sorted(jobs_controller.cromwell_query_params(query, 1, 64)),
         sorted([{
             'page': '1'
         }, {
             'pageSize': '64'
         }, {
             'additionalQueryResultFields': 'parentWorkflowId'
         }, {
             'additionalQueryResultFields': 'labels'
         }]))
 def test_cromwell_query_params(self):
     datetime_format = '%Y-%m-%dT%H:%M:%S.%fZ'
     query = QueryJobsRequest(
         name='test',
         start=datetime.strptime('2017-10-30T18:04:47.271Z',
                                 datetime_format),
         end=datetime.strptime('2017-10-31T18:04:47.271Z', datetime_format),
         status=['Submitted', 'Running', 'Succeeded'],
         labels={
             'label-key-1': 'label-val-1',
             'label-key-2': 'label-val-2'
         },
         page_size=100)
     query_params = [{
         'name': query.name
     }, {
         'start':
         datetime.strftime(query.start, datetime_format)
     }, {
         'end': datetime.strftime(query.end, datetime_format)
     }, {
         'pageSize': '100'
     }, {
         'page': '23'
     }, {
         'label': 'label-key-1:label-val-1'
     }, {
         'label': 'label-key-2:label-val-2'
     }, {
         'additionalQueryResultFields': 'parentWorkflowId'
     }, {
         'additionalQueryResultFields': 'labels'
     }, {
         'includeSubworkflows': 'false'
     }]
     query_params.extend([{'status': s} for s in query.status])
     self.assertItemsEqual(
         sorted(query_params),
         sorted(jobs_controller.cromwell_query_params(
             query, 23, 100, False)))