def test_setattr_imm_custom_class_raw(): class C(object): def __init__(self, attr): self.attr = attr def __eq__(self, other): return self.attr == other.attr assert s.setattr(C(1), "attr", 2) == C(2)
def test_setattr_imm_custom_class(): class C(object): def __init__(self, attr): self.attr = attr def __eq__(self, other): return self.attr == other.attr def _lens_setattr(self, name, value): if name == "fake_attr": return C(value) else: raise AttributeError(name) assert s.setattr(C(1), "fake_attr", 2) == C(2)
def test_setattr_imm_namedtuple(): Tup = collections.namedtuple("Tup", "attr") assert s.setattr(Tup(1), "attr", 2) == Tup(2)
def test_setattr_imm_namedtuple(): Tup = collections.namedtuple('Tup', 'attr') assert s.setattr(Tup(1), 'attr', 2) == Tup(2)