def test_edit_plugin_directly(self): content0 = self.rand_str(prefix="content0_") content1 = self.rand_str(prefix="content1_") content2 = self.rand_str(prefix="content2_") article = self.create_article(content=content0) # Revision 1 self.create_revision(article, content=content1) self.assertEqual(len(reversion.get_for_object(article)), 1) # Revision 2 with transaction.atomic(): with reversion.create_revision(): plugins = article.content.get_plugins() plugin = plugins[0].get_plugin_instance()[0] plugin.body = content2 plugin.save() create_revision_with_placeholders(article) self.assertEqual(len(reversion.get_for_object(article)), 2) response = self.client.get(article.get_absolute_url()) self.assertContains(response, content2) self.assertNotContains(response, content1) # Revert to revision 1 self.revert_to(article, 1) response = self.client.get(article.get_absolute_url()) self.assertContains(response, content1) self.assertNotContains(response, content2)
def test_edit_plugin_directly(self): content1 = 'Content 1 text' content2 = 'Content 2 text' with force_language('en'): event = self.create_default_event() # revision 1 self.create_revision(event, content1) self.assertEqual(len(reversion.get_for_object(event)), 1) # revision 2 with transaction.atomic(): with reversion.create_revision(): plugins = event.description.get_plugins().filter( language=event.get_current_language()) plugin = plugins[0].get_plugin_instance()[0] plugin.body = content2 plugin.save() create_revision_with_placeholders(event) self.assertEqual(len(reversion.get_for_object(event)), 2) response = self.client.get(event.get_absolute_url()) self.assertContains(response, content2) self.assertNotContains(response, content1) self.revert_to(event, 1) event = Event.objects.get(pk=event.pk) response = self.client.get(event.get_absolute_url()) self.assertContains(response, content1) self.assertNotContains(response, content2)