Strange behavior of superset and subset
If something is not subset, then it cannot be sure is superset or not, it must be tested
https://github.com/simonpercivall/orderedset/blob/9b830754d1f13f6d844b90d24e664b377d1da84c/lib/orderedset/_orderedset.pyx#L505
>>> {1}.issubset({2, 3}) False >>> {1} <= {2, 3} False >>> OrderedSet([1]).issubset(OrderedSet([2, 3])) False >>> OrderedSet([1]) <= OrderedSet([2, 3]) False
>>> {1}.issuperset({2, 3}) False >>> {1} >= {2, 3} False >>> {1} > {2, 3} False >>> OrderedSet([1]).issuperset(OrderedSet([2, 3])) False >>> OrderedSet([1]) >= OrderedSet([2, 3]) True >>> OrderedSet([1]) > OrderedSet([2, 3]) True
Edit: Oh, this may be solved by pull https://github.com/simonpercivall/orderedset/pull/22
Compare between OrderedSet and set
>>> OrderedSet([1]).issubset({3})
False
>>> OrderedSet([1]).issuperset({3}) # What is return {3} <= OrderedSet([1]), but…
True
>>> {3} <= OrderedSet([1])
True
>>> {3}.issubset(OrderedSet([1]))
False
>>> {3}.issuperset(OrderedSet([1]))
False
Compare between OrderedSet and list
>>> OrderedSet([1]).issuperset([3])
True
>>> OrderedSet([1]).issubset([3])
True
https://github.com/simonpercivall/orderedset/blob/9b830754d1f13f6d844b90d24e664b377d1da84c/lib/orderedset/_orderedset.pyx#L495
It may be: isinstance(other, (Set, list))