Пример #1
0
 def test_accept_upload_id(self, result_request, tool_definition,
                           data_folder):
     tool_definition['argument_names'] = ('x_path', )
     # Prepare upload_folder
     upload = Upload(id='xyz', owner_id=0)
     upload_folder = make_folder(upload.get_folder(data_folder))
     open(join(upload_folder, 'raw.txt'), 'wt')
     open(join(upload_folder, 'name.txt'), 'wt')
     # Use bad upload_id
     raw_arguments = {'x': 'a'}
     with raises(HTTPBadRequest) as e:
         result_request.prepare_arguments(tool_definition, raw_arguments)
     assert e.value.detail['x'] == 'invalid'
     # Use upload_id that does not have expected data_type
     raw_arguments = {'x': 'xyz'}
     with raises(HTTPBadRequest) as e:
         result_request.prepare_arguments(tool_definition, raw_arguments)
     assert e.value.detail['x'] == 'invalid'
     # Use upload_id that has expected data_type
     file_name = StringType.get_file_name()
     open(join(upload_folder, file_name), 'wt').write('whee')
     result = result_request.prepare_arguments(tool_definition,
                                               raw_arguments)
     assert open(result.arguments['x_path']).read() == 'whee'
 def test_get_folder(self, data_folder):
     record_id = 100
     with raises(BadPath):
         Upload(id=record_id, owner_id='../1').get_folder(data_folder)
     folder = Upload(id=record_id, owner_id=USER_ID).get_folder(data_folder)
     assert basename(folder) == str(record_id)