diff options
Diffstat (limited to 'test/requirements.py')
-rw-r--r-- | test/requirements.py | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/test/requirements.py b/test/requirements.py index c75a110c6..38b445542 100644 --- a/test/requirements.py +++ b/test/requirements.py @@ -403,7 +403,7 @@ class DefaultRequirements(SuiteRequirements): @property def sane_rowcount(self): return skip_if( - lambda: not self.db.dialect.supports_sane_rowcount, + lambda config: not config.db.dialect.supports_sane_rowcount, "driver doesn't support 'sane' rowcount" ) @@ -443,7 +443,7 @@ class DefaultRequirements(SuiteRequirements): @property def sane_multi_rowcount(self): return skip_if( - lambda: not self.db.dialect.supports_sane_multi_rowcount, + lambda config: not config.db.dialect.supports_sane_multi_rowcount, "driver doesn't support 'sane' multi row count" ) @@ -651,11 +651,11 @@ class DefaultRequirements(SuiteRequirements): @property def hstore(self): - def check_hstore(): - if not against("postgresql"): + def check_hstore(config): + if not against(config, "postgresql"): return False try: - self.db.execute("SELECT 'a=>1,a=>2'::hstore;") + config.db.execute("SELECT 'a=>1,a=>2'::hstore;") return True except: return False @@ -664,11 +664,11 @@ class DefaultRequirements(SuiteRequirements): @property def range_types(self): - def check_range_types(): - if not against("postgresql+psycopg2"): + def check_range_types(config): + if not against(config, "postgresql+psycopg2"): return False try: - self.db.execute("select '[1,2)'::int4range;") + config.db.execute("select '[1,2)'::int4range;") # only supported in psycopg 2.5+ from psycopg2.extras import NumericRange return True @@ -684,7 +684,7 @@ class DefaultRequirements(SuiteRequirements): @property def oracle_test_dblink(self): return skip_if( - lambda: not self.config.file_config.has_option( + lambda config: not config.file_config.has_option( 'sqla_testing', 'oracle_db_link'), "oracle_db_link option not specified in config" ) @@ -698,7 +698,7 @@ class DefaultRequirements(SuiteRequirements): as not present. """ - return skip_if(lambda: self.config.options.low_connections) + return skip_if(lambda config: config.options.low_connections) @property def skip_mysql_on_windows(self): @@ -715,8 +715,8 @@ class DefaultRequirements(SuiteRequirements): """ return skip_if( - lambda: util.py3k and - self.config.options.enable_plugin_coverage, + lambda config: util.py3k and + config.options.has_coverage, "Stability issues with coverage + py3k" ) @@ -740,11 +740,15 @@ class DefaultRequirements(SuiteRequirements): except ImportError: return False - def _has_mysql_on_windows(self): - return against('mysql') and \ - self.db.dialect._detect_casing(self.db) == 1 + @property + def mysql_fully_case_sensitive(self): + return only_if(self._has_mysql_fully_case_sensitive) + + def _has_mysql_on_windows(self, config): + return against(config, 'mysql') and \ + config.db.dialect._detect_casing(config.db) == 1 - def _has_mysql_fully_case_sensitive(self): - return against('mysql') and \ - self.db.dialect._detect_casing(self.db) == 0 + def _has_mysql_fully_case_sensitive(self, config): + return against(config, 'mysql') and \ + config.db.dialect._detect_casing(config.db) == 0 |