def test_get_value_indexable_object(self): class Test(object): def __init__(self, value): self.value = value def __getitem__(self, n): if type(n) is int: if n < 3: return n raise IndexError raise TypeError obj = Test('hi') assert fields.get_value('value', obj) == 'hi'
def test_get_value_no_value(self): assert fields.get_value("foo", {'foo': 42}) == 42
def test_get_value_obj(self, mocker): assert fields.get_value('foo', mocker.Mock(foo=42)) == 42
def test_get_value(self): assert fields.get_value('foo', {'foo': 42}) == 42