def test_can_have_draft_titles_on_dashboard(self): submission = ApplicationSubmissionFactory(user=self.user) draft_revision = ApplicationRevisionFactory(submission=submission) submission.draft_revision = draft_revision submission.save() response = self.get_page() self.assertNotContains(response, submission.title) self.assertContains(response, submission.from_draft().title) self.assertNotContains(response, 'Submission history')
def test_dont_update_live_revision_on_save(self): submission = ApplicationSubmissionFactory(status='draft_proposal', workflow_stages=2, user=self.user) old_data = submission.form_data.copy() new_data = prepare_form_data(submission, title='New title') self.post_page(submission, {'save': True, **new_data}, 'edit') submission = self.refresh(submission) self.maxDiff = None self.assertEqual(submission.status, 'draft_proposal') self.assertEqual(submission.revisions.count(), 2) self.assertDictEqual(submission.draft_revision.form_data, submission.from_draft().form_data) self.assertEqual(submission.draft_revision.author, self.user) self.assertDictEqual(submission.live_revision.form_data, old_data)
def test_existing_draft_edit_and_submit(self): submission = ApplicationSubmissionFactory(status='draft_proposal', workflow_stages=2, user=self.user) draft_data = prepare_form_data(submission, title='A new title') self.post_page(submission, {'save': True, **draft_data}, 'edit') submission = self.refresh(submission) newer_title = 'Newer title' draft_data = prepare_form_data(submission, title=newer_title) self.post_page(submission, {'submit': True, **draft_data}, 'edit') submission = self.refresh(submission) self.maxDiff = None self.assertDictEqual(submission.draft_revision.form_data, submission.from_draft().form_data) self.assertDictEqual(submission.live_revision.form_data, submission.form_data) self.assertEqual(submission.revisions.count(), 2) self.assertEqual(submission.title, newer_title)