Example #1
0
 def test_with_bad_foreign_keys(self, session, User, Comment):
     john = User(name=u'John')
     jack = User(name=u'Jack')
     with pytest.raises(ValueError):
         merge_references(john,
                          jack,
                          foreign_keys=Comment.__table__.foreign_keys)
 def test_supports_associations(self, session, User, Team):
     john = User(name=u'John')
     jack = User(name=u'Jack')
     team = Team(name=u'Team')
     team.members.append(john)
     session.add(john)
     session.add(jack)
     session.commit()
     merge_references(john, jack)
     assert john not in team.members
     assert jack in team.members
 def test_supports_associations(self):
     john = self.User(name=u'John')
     jack = self.User(name=u'Jack')
     team = self.Team(name=u'Team')
     team.members.append(john)
     self.session.add(john)
     self.session.add(jack)
     self.session.commit()
     merge_references(john, jack)
     assert john not in team.members
     assert jack in team.members
 def test_updates_foreign_keys(self, session, User, BlogPost):
     john = User(name=u'John')
     jack = User(name=u'Jack')
     post = BlogPost(title=u'Some title', author=john)
     post2 = BlogPost(title=u'Other title', author=jack)
     session.add(john)
     session.add(jack)
     session.add(post)
     session.add(post2)
     session.commit()
     merge_references(john, jack)
     session.commit()
     assert post.author == jack
     assert post2.author == jack
 def test_supports_associations(self, session, User, Team, TeamMember):
     john = User(name=u'John')
     jack = User(name=u'Jack')
     team = Team(name=u'Team')
     team.members.append(TeamMember(user=john))
     session.add(john)
     session.add(jack)
     session.add(team)
     session.commit()
     merge_references(john, jack)
     session.commit()
     users = [member.user for member in team.members]
     assert john not in users
     assert jack in users
 def test_updates_foreign_keys(self):
     john = self.User(name=u'John')
     jack = self.User(name=u'Jack')
     post = self.BlogPost(title=u'Some title', author=john)
     post2 = self.BlogPost(title=u'Other title', author=jack)
     self.session.add(john)
     self.session.add(jack)
     self.session.add(post)
     self.session.add(post2)
     self.session.commit()
     merge_references(john, jack)
     self.session.commit()
     assert post.author == jack
     assert post2.author == jack
 def test_supports_associations(self, session, User, Team, TeamMember):
     john = User(name=u'John')
     jack = User(name=u'Jack')
     team = Team(name=u'Team')
     team.members.append(TeamMember(user=john))
     session.add(john)
     session.add(jack)
     session.add(team)
     session.commit()
     merge_references(john, jack)
     session.commit()
     users = [member.user for member in team.members]
     assert john not in users
     assert jack in users
 def test_object_merging_whenever_possible(self, session, User, BlogPost):
     john = User(name=u'John')
     jack = User(name=u'Jack')
     post = BlogPost(title=u'Some title', author=john)
     post2 = BlogPost(title=u'Other title', author=jack)
     session.add(john)
     session.add(jack)
     session.add(post)
     session.add(post2)
     session.commit()
     # Load the author for post
     assert post.author_id == john.id
     merge_references(john, jack)
     assert post.author_id == jack.id
     assert post2.author_id == jack.id
 def test_object_merging_whenever_possible(self):
     john = self.User(name=u'John')
     jack = self.User(name=u'Jack')
     post = self.BlogPost(title=u'Some title', author=john)
     post2 = self.BlogPost(title=u'Other title', author=jack)
     self.session.add(john)
     self.session.add(jack)
     self.session.add(post)
     self.session.add(post2)
     self.session.commit()
     # Load the author for post
     assert post.author_id == john.id
     merge_references(john, jack)
     assert post.author_id == jack.id
     assert post2.author_id == jack.id
Example #10
0
 def test_updates_foreign_keys(self, session, User, BlogPost, Address):
     john = User(name=u'John')
     jack = User(name=u'Jack')
     post = BlogPost(title=u'Some title', author=john)
     post2 = BlogPost(title=u'Other title', author=jack)
     address1 = Address(city=u'New York', user=john)
     address2 = Address(city=u'Los Angeles', user=jack)
     session.add(john)
     session.add(jack)
     session.add(post)
     session.add(post2)
     session.add(address1)
     session.add(address2)
     session.commit()
     merge_references(john, jack)
     session.commit()
     assert post.author == jack
     assert post2.author == jack
     assert address1.user == jack
     assert address2.user == jack