MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_issue26915

Method test_issue26915

Lib/test/test_collections.py:1591–1616  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1589 self.assertTrue(ncs >= cs)
1590
1591 def test_issue26915(self):
1592 # Container membership test should check identity first
1593 class CustomSequence(Sequence):
1594 def __init__(self, seq):
1595 self._seq = seq
1596 def __getitem__(self, index):
1597 return self._seq[index]
1598 def __len__(self):
1599 return len(self._seq)
1600
1601 nan = float('nan')
1602 obj = support.NEVER_EQ
1603 seq = CustomSequence([nan, obj, nan])
1604 containers = [
1605 seq,
1606 ItemsView({1: nan, 2: obj}),
1607 KeysView({1: nan, 2: obj}),
1608 ValuesView({1: nan, 2: obj})
1609 ]
1610 for container in containers:
1611 for elem in container:
1612 self.assertIn(elem, container)
1613 self.assertEqual(seq.index(nan), 0)
1614 self.assertEqual(seq.index(obj), 1)
1615 self.assertEqual(seq.count(nan), 2)
1616 self.assertEqual(seq.count(obj), 1)
1617
1618 def assertSameSet(self, s1, s2):
1619 # coerce both to a real set then check equality

Callers

nothing calls this directly

Calls 8

ItemsViewClass · 0.90
KeysViewClass · 0.90
ValuesViewClass · 0.90
CustomSequenceClass · 0.85
assertInMethod · 0.80
assertEqualMethod · 0.45
indexMethod · 0.45
countMethod · 0.45

Tested by

no test coverage detected