summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/testing
diff options
context:
space:
mode:
authorFederico Caselli <cfederico87@gmail.com>2020-08-22 00:30:44 +0200
committerMike Bayer <mike_mp@zzzcomputing.com>2020-08-22 12:46:12 -0400
commit9ab4da7018eae8fc86430c24a38f8ffb0a5951ab (patch)
treed6f9e401cbc24a3beb11a9fec56dd17f89cfe6fe /lib/sqlalchemy/testing
parent317f2e1be2b06cdc12bc84510eb743d9752763dd (diff)
downloadsqlalchemy-9ab4da7018eae8fc86430c24a38f8ffb0a5951ab.tar.gz
Updates for MariaDB sequences
MariaDB should not run a Sequence if it has optional=True. Additionally, rework the rules in crud.py to accommodate the new combination MariaDB brings us, which is a dialect that supports both cursor.lastrowid, explicit sequences, *and* no support for returning. Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com> Fixes: #5528 Change-Id: I9a8ea69a34983affa95dfd22186e2908fdf0d58c
Diffstat (limited to 'lib/sqlalchemy/testing')
-rw-r--r--lib/sqlalchemy/testing/requirements.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/sqlalchemy/testing/requirements.py b/lib/sqlalchemy/testing/requirements.py
index cc40022e9..7b0ddafe3 100644
--- a/lib/sqlalchemy/testing/requirements.py
+++ b/lib/sqlalchemy/testing/requirements.py
@@ -507,7 +507,9 @@ class SuiteRequirements(Requirements):
@property
def no_lastrowid_support(self):
"""the opposite of supports_lastrowid"""
- return exclusions.NotPredicate(self.supports_lastrowid)
+ return exclusions.only_if(
+ [lambda config: not config.db.dialect.postfetch_lastrowid]
+ )
@property
def reflects_pk_names(self):