def test_checkout_checkin_files(self): self.draft.submit_for_review(self.user, {}, save=True) request = RequestFactory().get('/fake_path') view = DraftDetailView() view = setup_user_view(view, request, self.admin_user, draft_pk=self.draft._id) view.checkout_files(self.draft) for q, f in self.d_of_qs.iteritems(): f.refresh_from_db() nt.assert_equal(self.admin_user, f.checkout) # test user attempt force checkin with nt.assert_raises(file_exceptions.FileNodeCheckedOutError): self.d_of_qs['q7'].check_in_or_out(self.user, self.admin_user) # test delete draft returns files utils.checkin_files(self.draft) view2 = DraftFormView() view2 = setup_view(view2, request, draft_pk=self.draft._id) view2.checkin_files(self.draft) for q, f in self.d_of_qs.iteritems(): f.refresh_from_db() nt.assert_equal(None, f.checkout)
def test_checkout_checkin_files(self): self.draft.submit_for_review(self.user, {}, save=True) request = RequestFactory().get('/fake_path') view = DraftDetailView() view = setup_user_view(view, request, self.admin_user, draft_pk=self.draft._id) view.checkout_files(self.draft) for q, f in self.d_of_qs.items(): f.refresh_from_db() nt.assert_equal(self.admin_user, f.checkout) # test user attempt force checkin with nt.assert_raises(file_exceptions.FileNodeCheckedOutError): self.d_of_qs['q7'].check_in_or_out(self.user, self.admin_user) # test delete draft returns files utils.checkin_files(self.draft) view2 = DraftFormView() view2 = setup_view(view2, request, draft_pk=self.draft._id) view2.checkin_files(self.draft) for q, f in self.d_of_qs.items(): f.refresh_from_db() nt.assert_equal(None, f.checkout)
def test_checkin_files(self): self.draft.submit_for_review(self.user, {}, save=True) request = RequestFactory().get('/fake_path') view = DraftDetailView() view = setup_user_view(view, request, self.admin_user, draft_pk=self.draft._id) view.checkout_files(self.draft) view2 = DraftFormView() view2 = setup_view(view2, request, draft_pk=self.draft._id) view2.checkin_files(self.draft) for q, f in self.d_of_qs.iteritems(): nt.assert_equal(None, f.checkout)
def setUp(self): super(TestDraftFormView, self).setUp() self.user = AuthUserFactory() self.dr1 = DraftRegistrationFactory( initiator=self.user, registration_schema=utils.draft_reg_util(), registration_metadata=utils.SCHEMA_DATA) self.dr1.submit_for_review(self.user, {}, save=True) self.dr1.flags # sets flags if there aren't any yet. self.request = RequestFactory().get('/fake_path') self.view = DraftFormView() self.view = setup_view(self.view, self.request, draft_pk=self.dr1._id) self.post = RequestFactory().post('/fake_path') self.post.user = UserFactory() self.post_view = DraftFormView() self.form_data = { 'notes': 'Far between', 'proof_of_publication': 'approved', }
def setUp(self): super(TestDraftFormView, self).setUp() self.user = AuthUserFactory() self.dr1 = DraftRegistrationFactory( initiator=self.user, registration_schema=utils.draft_reg_util(), registration_metadata=utils.SCHEMA_DATA ) self.dr1.submit_for_review(self.user, {}, save=True) self.dr1.flags # sets flags if there aren't any yet. self.request = RequestFactory().get('/fake_path') self.view = DraftFormView() self.view = setup_view(self.view, self.request, draft_pk=self.dr1._id) self.post = RequestFactory().post('/fake_path') self.post.user = UserFactory() self.post_view = DraftFormView() self.form_data = { 'notes': 'Far between', 'proof_of_publication': 'approved', }
def test_dispatch_raise_404(self): view = setup_view(DraftFormView(), self.request, draft_pk='wrong') with nt.assert_raises(Http404): view.dispatch(self.request)
class TestDraftFormView(AdminTestCase): def setUp(self): super(TestDraftFormView, self).setUp() self.user = AuthUserFactory() self.dr1 = DraftRegistrationFactory( initiator=self.user, registration_schema=utils.draft_reg_util(), registration_metadata=utils.SCHEMA_DATA ) self.dr1.submit_for_review(self.user, {}, save=True) self.dr1.flags # sets flags if there aren't any yet. self.request = RequestFactory().get('/fake_path') self.view = DraftFormView() self.view = setup_view(self.view, self.request, draft_pk=self.dr1._id) self.post = RequestFactory().post('/fake_path') self.post.user = UserFactory() self.post_view = DraftFormView() self.form_data = { 'notes': 'Far between', 'proof_of_publication': 'approved', } def test_dispatch_raise_404(self): view = setup_view(DraftFormView(), self.request, draft_pk='wrong') with nt.assert_raises(Http404): view.dispatch(self.request) def test_get_initial(self): self.view.draft = self.dr1 self.view.get_initial() res = self.view.initial nt.assert_is_instance(res, dict) nt.assert_equal(res['notes'], self.dr1.notes) nt.assert_equal(res['assignee'], self.dr1.flags['assignee']) nt.assert_equal(res['payment_sent'], self.dr1.flags['payment_sent']) nt.assert_equal(res['proof_of_publication'], self.dr1.flags['proof_of_publication']) def test_get_context_data(self): self.view.draft = self.dr1 res = self.view.get_context_data() nt.assert_is_instance(res, dict) nt.assert_in('draft', res) nt.assert_is_instance(res['draft'], dict) nt.assert_in('IMMEDIATE', res) def test_form_valid_notes(self): form = DraftRegistrationForm(data=self.form_data) nt.assert_true(form.is_valid()) view = setup_form_view(self.post_view, self.post, form, draft_pk=self.dr1._id) view.draft = self.dr1 count = OSFLogEntry.objects.count() with transaction.atomic(): view.form_valid(form) nt.assert_equal(count, OSFLogEntry.objects.count()) self.dr1.reload() nt.assert_equal(self.dr1.notes, self.form_data['notes']) @mock.patch('admin.pre_reg.views.DraftRegistration.approve') def test_form_valid_approve(self, mock_approve): self.form_data.update(approve_reject='approve') form = DraftRegistrationForm(data=self.form_data) nt.assert_true(form.is_valid()) view = setup_form_view(self.post_view, self.post, form, draft_pk=self.dr1._id) view.draft = self.dr1 count = OSFLogEntry.objects.count() with transaction.atomic(): view.form_valid(form) nt.assert_true(mock_approve.called) nt.assert_equal(count + 1, OSFLogEntry.objects.count()) @mock.patch('admin.pre_reg.views.DraftRegistration.reject') def test_form_valid_reject(self, mock_reject): self.form_data.update(approve_reject='reject') form = DraftRegistrationForm(data=self.form_data) nt.assert_true(form.is_valid()) view = setup_form_view(self.post_view, self.post, form, draft_pk=self.dr1._id) view.draft = self.dr1 count = OSFLogEntry.objects.count() with transaction.atomic(): view.form_valid(form) nt.assert_true(mock_reject.called) nt.assert_equal(count + 1, OSFLogEntry.objects.count())
class TestDraftFormView(AdminTestCase): def setUp(self): super(TestDraftFormView, self).setUp() self.user = AuthUserFactory() self.dr1 = DraftRegistrationFactory( initiator=self.user, registration_schema=utils.draft_reg_util(), registration_metadata=utils.SCHEMA_DATA) self.dr1.submit_for_review(self.user, {}, save=True) self.dr1.flags # sets flags if there aren't any yet. self.request = RequestFactory().get('/fake_path') self.view = DraftFormView() self.view = setup_view(self.view, self.request, draft_pk=self.dr1._id) self.post = RequestFactory().post('/fake_path') self.post.user = UserFactory() self.post_view = DraftFormView() self.form_data = { 'notes': 'Far between', 'proof_of_publication': 'approved', } def test_dispatch_raise_404(self): view = setup_view(DraftFormView(), self.request, draft_pk='wrong') with nt.assert_raises(Http404): view.dispatch(self.request) def test_get_initial(self): self.view.draft = self.dr1 self.view.get_initial() res = self.view.initial nt.assert_is_instance(res, dict) nt.assert_equal(res['notes'], self.dr1.notes) nt.assert_equal(res['assignee'], self.dr1.flags['assignee']) nt.assert_equal(res['payment_sent'], self.dr1.flags['payment_sent']) nt.assert_equal(res['proof_of_publication'], self.dr1.flags['proof_of_publication']) def test_get_context_data(self): self.view.draft = self.dr1 res = self.view.get_context_data() nt.assert_is_instance(res, dict) nt.assert_in('draft', res) nt.assert_is_instance(res['draft'], dict) nt.assert_in('IMMEDIATE', res) def test_form_valid_notes(self): form = DraftRegistrationForm(data=self.form_data) nt.assert_true(form.is_valid()) view = setup_form_view(self.post_view, self.post, form, draft_pk=self.dr1._id) view.draft = self.dr1 count = OSFLogEntry.objects.count() with transaction.atomic(): view.form_valid(form) nt.assert_equal(count, OSFLogEntry.objects.count()) self.dr1.reload() nt.assert_equal(self.dr1.notes, self.form_data['notes']) @mock.patch('admin.pre_reg.views.DraftRegistration.approve') def test_form_valid_approve(self, mock_approve): self.form_data.update(approve_reject='approve') form = DraftRegistrationForm(data=self.form_data) nt.assert_true(form.is_valid()) view = setup_form_view(self.post_view, self.post, form, draft_pk=self.dr1._id) view.draft = self.dr1 count = OSFLogEntry.objects.count() with transaction.atomic(): view.form_valid(form) nt.assert_true(mock_approve.called) nt.assert_equal(count + 1, OSFLogEntry.objects.count()) @mock.patch('admin.pre_reg.views.DraftRegistration.reject') def test_form_valid_reject(self, mock_reject): self.form_data.update(approve_reject='reject') form = DraftRegistrationForm(data=self.form_data) nt.assert_true(form.is_valid()) view = setup_form_view(self.post_view, self.post, form, draft_pk=self.dr1._id) view.draft = self.dr1 count = OSFLogEntry.objects.count() with transaction.atomic(): view.form_valid(form) nt.assert_true(mock_reject.called) nt.assert_equal(count + 1, OSFLogEntry.objects.count())