mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-10-24 02:04:04 +08:00
Don't construct a DatatypesRegistry just for tests in galaxy.model.
Construct the model in the tests, this should cause galaxy.model to import much faster.
This commit is contained in:
@@ -50,9 +50,7 @@ from galaxy.web.form_builder import (AddressField, CheckboxField, HistoryField,
|
||||
|
||||
log = logging.getLogger( __name__ )
|
||||
|
||||
_datatypes_registry = galaxy.datatypes.registry.Registry()
|
||||
# Default Value Required for unit tests
|
||||
_datatypes_registry.load_datatypes()
|
||||
_datatypes_registry = None
|
||||
|
||||
# When constructing filters with in for a fixed set of ids, maximum
|
||||
# number of items to place in the IN statement. Different databases
|
||||
@@ -80,6 +78,12 @@ class ConverterDependencyException(Exception):
|
||||
return repr(self.value)
|
||||
|
||||
|
||||
def _get_datatypes_registry():
|
||||
if _datatypes_registry is None:
|
||||
raise Exception("galaxy.model.set_datatypes_registry must be called before performing certain DatasetInstance operations.")
|
||||
return _datatypes_registry
|
||||
|
||||
|
||||
def set_datatypes_registry( d_registry ):
|
||||
"""
|
||||
Set up datatypes_registry
|
||||
@@ -1858,7 +1862,7 @@ class DatasetInstance( object ):
|
||||
|
||||
@property
|
||||
def datatype( self ):
|
||||
return _datatypes_registry.get_datatype_by_extension( self.extension )
|
||||
return _get_datatypes_registry().get_datatype_by_extension( self.extension )
|
||||
|
||||
def get_metadata( self ):
|
||||
# using weakref to store parent (to prevent circ ref),
|
||||
@@ -1892,7 +1896,7 @@ class DatasetInstance( object ):
|
||||
|
||||
def change_datatype( self, new_ext ):
|
||||
self.clear_associated_files()
|
||||
_datatypes_registry.change_datatype( self, new_ext )
|
||||
_get_datatypes_registry().change_datatype( self, new_ext )
|
||||
|
||||
def get_size( self, nice_size=False ):
|
||||
"""Returns the size of the data on disk"""
|
||||
@@ -1929,7 +1933,7 @@ class DatasetInstance( object ):
|
||||
def get_mime( self ):
|
||||
"""Returns the mime type of the data"""
|
||||
try:
|
||||
return _datatypes_registry.get_mimetype_by_extension( self.extension.lower() )
|
||||
return _get_datatypes_registry().get_mimetype_by_extension( self.extension.lower() )
|
||||
except AttributeError:
|
||||
# extension is None
|
||||
return 'data'
|
||||
@@ -2054,14 +2058,14 @@ class DatasetInstance( object ):
|
||||
return None
|
||||
|
||||
def get_converter_types(self):
|
||||
return self.datatype.get_converter_types( self, _datatypes_registry )
|
||||
return self.datatype.get_converter_types( self, _get_datatypes_registry() )
|
||||
|
||||
def can_convert_to(self, format):
|
||||
return format in self.get_converter_types()
|
||||
|
||||
def find_conversion_destination( self, accepted_formats, **kwd ):
|
||||
"""Returns ( target_ext, existing converted dataset )"""
|
||||
return self.datatype.find_conversion_destination( self, accepted_formats, _datatypes_registry, **kwd )
|
||||
return self.datatype.find_conversion_destination( self, accepted_formats, _get_datatypes_registry(), **kwd )
|
||||
|
||||
def add_validation_error( self, validation_error ):
|
||||
self.validation_errors.append( validation_error )
|
||||
|
||||
@@ -5,6 +5,7 @@ test_select_parameters.py.
|
||||
from galaxy.util import bunch
|
||||
from galaxy import model
|
||||
from .test_parameter_parsing import BaseParameterTestCase
|
||||
from tools_support import datatypes_registry
|
||||
|
||||
|
||||
class DataColumnParameterTestCase( BaseParameterTestCase ):
|
||||
@@ -99,6 +100,6 @@ class DataColumnParameterTestCase( BaseParameterTestCase ):
|
||||
template_xml = '''<param name="my_name" type="%s" %s %s %s %s></param>'''
|
||||
param_str = template_xml % ( self.type, data_ref_text, multi_text, optional_text, self.other_attributes )
|
||||
self._param = self._parameter_for( xml=param_str )
|
||||
self._param.ref_input = bunch.Bunch(formats=[model.datatypes_registry.get_datatype_by_extension("tabular")])
|
||||
self._param.ref_input = bunch.Bunch(formats=[datatypes_registry.get_datatype_by_extension("tabular")])
|
||||
|
||||
return self._param
|
||||
|
||||
@@ -18,6 +18,11 @@ from galaxy.util.dbkeys import GenomeBuilds
|
||||
from galaxy.jobs import NoopQueue
|
||||
from galaxy.tools.parser import get_tool_source
|
||||
from galaxy.tools.deps.containers import NullContainerFinder
|
||||
import galaxy.datatypes.registry
|
||||
|
||||
datatypes_registry = galaxy.datatypes.registry.Registry()
|
||||
datatypes_registry.load_datatypes()
|
||||
galaxy.model.set_datatypes_registry(datatypes_registry)
|
||||
|
||||
|
||||
class UsesApp( object ):
|
||||
|
||||
Reference in New Issue
Block a user