def test_multidb(self): with databases.atomic(): default_db.add(Foo(name="1234")) other_db.add(Bar(name="1234")) self.assertEqual(Foo.objects.count(), 1) self.assertEqual(Bar.objects.count(), 1) databases.rollback() with self.assertRaises(Exception) as ctx, databases.atomic(): default_db.add(Foo()) other_db.add(Bar()) self.assertIn("IntegrityError", ctx.exception.args[0]) self.assertEqual(Foo.objects.count(), 0) self.assertEqual(Bar.objects.count(), 0) databases.rollback()
def tearDown(self): databases.rollback() databases.remove() super(TestCase, self).tearDown()