Skip to content

Commit 983be0f

Browse files
Merge pull request RustPython#725 from palaviv/frozen-set-2
frozenset
2 parents e47032f + 590b659 commit 983be0f

File tree

2 files changed

+227
-56
lines changed

2 files changed

+227
-56
lines changed

tests/snippets/set.py

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,3 +144,88 @@ def __hash__(self):
144144
assert a == set([1,2,4,5])
145145
with assertRaises(TypeError):
146146
a ^= 1
147+
148+
# frozen set
149+
150+
assert frozenset([1,2]) == frozenset([1,2])
151+
assert not frozenset([1,2,3]) == frozenset([1,2])
152+
153+
assert frozenset([1,2,3]) >= frozenset([1,2])
154+
assert frozenset([1,2]) >= frozenset([1,2])
155+
assert not frozenset([1,3]) >= frozenset([1,2])
156+
157+
assert frozenset([1,2,3]).issuperset(frozenset([1,2]))
158+
assert frozenset([1,2]).issuperset(frozenset([1,2]))
159+
assert not frozenset([1,3]).issuperset(frozenset([1,2]))
160+
161+
assert frozenset([1,2,3]) > frozenset([1,2])
162+
assert not frozenset([1,2]) > frozenset([1,2])
163+
assert not frozenset([1,3]) > frozenset([1,2])
164+
165+
assert frozenset([1,2]) <= frozenset([1,2,3])
166+
assert frozenset([1,2]) <= frozenset([1,2])
167+
assert not frozenset([1,3]) <= frozenset([1,2])
168+
169+
assert frozenset([1,2]).issubset(frozenset([1,2,3]))
170+
assert frozenset([1,2]).issubset(frozenset([1,2]))
171+
assert not frozenset([1,3]).issubset(frozenset([1,2]))
172+
173+
assert frozenset([1,2]) < frozenset([1,2,3])
174+
assert not frozenset([1,2]) < frozenset([1,2])
175+
assert not frozenset([1,3]) < frozenset([1,2])
176+
177+
a = frozenset([1, 2, 3])
178+
assert len(a) == 3
179+
b = a.copy()
180+
assert b == a
181+
182+
assert frozenset([1,2,3]).union(frozenset([4,5])) == frozenset([1,2,3,4,5])
183+
assert frozenset([1,2,3]).union(frozenset([1,2,3,4,5])) == frozenset([1,2,3,4,5])
184+
185+
assert frozenset([1,2,3]) | frozenset([4,5]) == frozenset([1,2,3,4,5])
186+
assert frozenset([1,2,3]) | frozenset([1,2,3,4,5]) == frozenset([1,2,3,4,5])
187+
188+
assert frozenset([1,2,3]).intersection(frozenset([1,2])) == frozenset([1,2])
189+
assert frozenset([1,2,3]).intersection(frozenset([5,6])) == frozenset([])
190+
191+
assert frozenset([1,2,3]) & frozenset([4,5]) == frozenset([])
192+
assert frozenset([1,2,3]) & frozenset([1,2,3,4,5]) == frozenset([1,2,3])
193+
194+
assert frozenset([1,2,3]).difference(frozenset([1,2])) == frozenset([3])
195+
assert frozenset([1,2,3]).difference(frozenset([5,6])) == frozenset([1,2,3])
196+
197+
assert frozenset([1,2,3]) - frozenset([4,5]) == frozenset([1,2,3])
198+
assert frozenset([1,2,3]) - frozenset([1,2,3,4,5]) == frozenset([])
199+
200+
assert frozenset([1,2,3]).symmetric_difference(frozenset([1,2])) == frozenset([3])
201+
assert frozenset([1,2,3]).symmetric_difference(frozenset([5,6])) == frozenset([1,2,3,5,6])
202+
203+
assert frozenset([1,2,3]) ^ frozenset([4,5]) == frozenset([1,2,3,4,5])
204+
assert frozenset([1,2,3]) ^ frozenset([1,2,3,4,5]) == frozenset([4,5])
205+
206+
assert_raises(TypeError, lambda: frozenset([[]]))
207+
208+
# set and frozen set
209+
assert frozenset([1,2,3]).union(set([4,5])) == frozenset([1,2,3,4,5])
210+
assert set([1,2,3]).union(frozenset([4,5])) == set([1,2,3,4,5])
211+
212+
assert frozenset([1,2,3]) | set([4,5]) == frozenset([1,2,3,4,5])
213+
assert set([1,2,3]) | frozenset([4,5]) == set([1,2,3,4,5])
214+
215+
assert frozenset([1,2,3]).intersection(set([5,6])) == frozenset([])
216+
assert set([1,2,3]).intersection(frozenset([5,6])) == set([])
217+
218+
assert frozenset([1,2,3]) & set([1,2,3,4,5]) == frozenset([1,2,3])
219+
assert set([1,2,3]) & frozenset([1,2,3,4,5]) == set([1,2,3])
220+
221+
assert frozenset([1,2,3]).difference(set([5,6])) == frozenset([1,2,3])
222+
assert set([1,2,3]).difference(frozenset([5,6])) == set([1,2,3])
223+
224+
assert frozenset([1,2,3]) - set([4,5]) == frozenset([1,2,3])
225+
assert set([1,2,3]) - frozenset([4,5]) == frozenset([1,2,3])
226+
227+
assert frozenset([1,2,3]).symmetric_difference(set([1,2])) == frozenset([3])
228+
assert set([1,2,3]).symmetric_difference(frozenset([1,2])) == set([3])
229+
230+
assert frozenset([1,2,3]) ^ set([4,5]) == frozenset([1,2,3,4,5])
231+
assert set([1,2,3]) ^ frozenset([4,5]) == set([1,2,3,4,5])

0 commit comments

Comments
 (0)