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

Method test_copy_generic_instances

Lib/test/test_typing.py:5378–5400  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

5376 self.assertIs(deepcopy(X), X)
5377
5378 def test_copy_generic_instances(self):
5379 T = TypeVar('T')
5380 class C(Generic[T]):
5381 def __init__(self, attr: T) -> None:
5382 self.attr = attr
5383
5384 c = C(42)
5385 self.assertEqual(copy(c).attr, 42)
5386 self.assertEqual(deepcopy(c).attr, 42)
5387 self.assertIsNot(copy(c), c)
5388 self.assertIsNot(deepcopy(c), c)
5389 c.attr = 1
5390 self.assertEqual(copy(c).attr, 1)
5391 self.assertEqual(deepcopy(c).attr, 1)
5392 ci = C[int](42)
5393 self.assertEqual(copy(ci).attr, 42)
5394 self.assertEqual(deepcopy(ci).attr, 42)
5395 self.assertIsNot(copy(ci), ci)
5396 self.assertIsNot(deepcopy(ci), ci)
5397 ci.attr = 1
5398 self.assertEqual(copy(ci).attr, 1)
5399 self.assertEqual(deepcopy(ci).attr, 1)
5400 self.assertEqual(ci.__orig_class__, C[int])
5401
5402 def test_weakref_all(self):
5403 T = TypeVar('T')

Callers

nothing calls this directly

Calls 6

copyFunction · 0.90
deepcopyFunction · 0.90
TypeVarClass · 0.85
assertIsNotMethod · 0.80
CClass · 0.70
assertEqualMethod · 0.45

Tested by

no test coverage detected