def test_simple(self): s = self.session named = Named('a name') s.add(named) s.commit() new = {'name': 'other name'} named.fromdict(new) assert named.asdict() == {'id': named.id, 'name': new['name']}
def test_fromdict_allow_pk(self): s = self.session named = Named('a name') s.add(named) s.commit() new = {'id': 7} named.fromdict(new, allow_pk=True) assert named.asdict() == {'id': new['id'], 'name': named.name}
def test_named_with_save(self): named = Named('a name') self.session.add(named) self.session.commit() assert named.asdict() == {'id': named.id, 'name': named.name}
def test_named_without_save(self): named = Named('a name') assert named.asdict() == {'id': None, 'name': named.name}
def test_exclude_pk(self): named = Named('a name') self.session.add(named) self.session.commit() assert named.asdict(exclude_pk=True) == {'name': named.name}
def test_exclude_flag(self): named = Named('a name') assert named.asdict(exclude=['id']) == {'name': 'a name'}
def test_dict(self): named = Named('a name') named.asdict() == dict(named)
def test_only_overrides_exclude(self): named = Named('a name') assert 'name' in dict(named) assert 'id' in dict(named) assert 'name' not in named.asdict(only=['id'], exclude=['id']) assert 'id' not in named.asdict(only=['name'], exclude=['name'])
def test_only(self): named = Named('a name') assert 'name' in dict(named) assert 'id' in dict(named) assert 'name' not in named.asdict(only=['id']) assert 'id' not in named.asdict(only=['name'])