or config.db.dialect._mariadb_normalized_version_info < (10, 3)
)
+ def _mysql_not_mariadb_104(self, config):
+ return against(config, "mysql") and (
+ not config.db.dialect._is_mariadb
+ or config.db.dialect._mariadb_normalized_version_info < (10, 4)
+ )
+
def _has_mysql_on_windows(self, config):
return (
against(config, "mysql")
"firebird",
"has trouble extracting anonymous column from union subquery",
)
- @testing.fails_on("mysql", "FIXME: unknown")
+ @testing.fails_on(
+ testing.requires._mysql_not_mariadb_104, "FIXME: unknown"
+ )
@testing.fails_on("sqlite", "FIXME: unknown")
def test_union_all(self):
e = union_all(
eq_(found2, wanted)
@testing.fails_on(
- ["sqlite", "mysql"], "Can't handle this style of nesting"
+ ["sqlite", testing.requires._mysql_not_mariadb_104],
+ "Can't handle this style of nesting",
)
@testing.requires.except_
def test_except_style3(self):
@testing.requires.intersect
@testing.fails_on(
- ["sqlite", "mysql"], "sqlite can't handle leading parenthesis"
+ ["sqlite", testing.requires._mysql_not_mariadb_104],
+ "sqlite can't handle leading parenthesis",
)
def test_intersect_unions(self):
u = intersect(