def compare_label(self, elements, left, right, **kw):
return left._type._compare_type_affinity(right._type) and (
left.name == right.name
- if not isinstance(left, elements._anonymous_label)
+ if not isinstance(left.name, elements._anonymous_label)
else isinstance(right.name, elements._anonymous_label)
)
is_false(l1.compare(l2))
+ def test_compare_labels(self):
+ is_true(column("q").label(None).compare(column("q").label(None)))
+
+ is_false(column("q").label("foo").compare(column("q").label(None)))
+
+ is_false(column("q").label(None).compare(column("q").label("foo")))
+
+ is_false(column("q").label("foo").compare(column("q").label("bar")))
+
+ is_true(column("q").label("foo").compare(column("q").label("foo")))
+
def test_compare_binds(self):
b1 = bindparam("foo", type_=Integer())
b2 = bindparam("foo", type_=Integer())