diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2019-12-20 10:17:17 -0500 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2019-12-20 10:17:17 -0500 |
commit | e6afc0a8cf7a8fb18855cab9da488a0d48c42386 (patch) | |
tree | 031f56fa882b7350059e492a0fc69019fc98530a /lib/sqlalchemy/sql/traversals.py | |
parent | 307fae884b4023f3edd9cc504db09d4f2641d201 (diff) | |
download | sqlalchemy-e6afc0a8cf7a8fb18855cab9da488a0d48c42386.tar.gz |
Ensure comparison includes "don't compare values" feature
upcoming changes for "expanding IN in all cases" and
"lambda elements" both rely upon comparisons that work
across changing bound values, so commit the testing fixture
ahead of time. Additionally, repair the feature itself
within traversals.
Change-Id: Ie65a512dc64745614180da77435f9f745ce78c71
Diffstat (limited to 'lib/sqlalchemy/sql/traversals.py')
-rw-r--r-- | lib/sqlalchemy/sql/traversals.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/sqlalchemy/sql/traversals.py b/lib/sqlalchemy/sql/traversals.py index b5701dbdf..84a5623d3 100644 --- a/lib/sqlalchemy/sql/traversals.py +++ b/lib/sqlalchemy/sql/traversals.py @@ -743,6 +743,14 @@ class TraversalComparatorStrategy(InternalTraversal, util.MemoizedSlots): else: return COMPARE_FAILED + def compare_bindparam(self, left, right, **kw): + compare_values = kw.pop("compare_values", True) + if compare_values: + return [] + else: + # this means, "skip these, we already compared" + return ["callable", "value"] + class ColIdentityComparatorStrategy(TraversalComparatorStrategy): def compare_column_element( |