コード例 #1
0
ファイル: test_site_views.py プロジェクト: ashwoods/potatoist
    def test_user_update_ticket_move_bug_get(self):
        """
        Regression test for issue https://github.com/ashwoods/potatoist/issues/2 move ticket to another project

        """
        new_project = Project.objects.create(title='New Project')

        wrong_kwargs = {'project_id': new_project.pk, 'ticket_id': self.test_ticket.pk}

        request = self.rf.get(reverse('ticket-update', kwargs=wrong_kwargs))
        request.user = self.user
        views.update_ticket_view(request, **wrong_kwargs)
コード例 #2
0
ファイル: tests.py プロジェクト: MiiRaGe/potaticket
 def test_ticket_edit(self):
     # I'm unsure how to test with logged user using djangoae
     # Using request factory to bypass that.
     request = self.rf.get('/projects/%s/tickets/%s/edit' % (self.project.id, self.ticket.id))
     request.user = self.user
     r = update_ticket_view(request, project_id=self.project.id, ticket_id=self.ticket.id)
     self.assertEqual(r.status_code, 200)
     r.render()
     self.assertIn(u'Submit', r.content.decode('utf8'))
コード例 #3
0
ファイル: test_site_views.py プロジェクト: ashwoods/potatoist
 def test_user_update_ticket_view_post_success(self):
     request = self.rf.post(reverse('ticket-update', kwargs=self.ticket_kwargs), self.form_post_data)
     request.user = self.user
     response = views.update_ticket_view(request, **self.ticket_kwargs)
     assert_code(response, 302)
     eq_(response['location'], reverse('project-detail', kwargs=self.project_kwargs))
     ticket = Ticket.objects.get(pk=self.test_ticket.pk)
     ok_(ticket.title == self.form_post_data.get('title'))
     ok_(request.user in ticket.assignees.all())
コード例 #4
0
    def test_update_ticket_view_redirects_on_sucessful_update(self):
        ticket_update_url = '/projects/{}/tickets/{}/edit'.format(
            self.teal_project.id, self.ticket.id)
        request = self.request_factory.post(ticket_update_url,
                                            data=self.form_data)
        request.user = self.user

        res = update_ticket_view(request,
                                 project_id=self.teal_project.id,
                                 ticket_id=self.ticket.id)

        self.assertEqual(res.status_code, 302)
        self.assertEqual(res.url, '/projects/{}/'.format(self.teal_project.id))
コード例 #5
0
    def test_update_ticket_view_adds_form_error_if_a_project_the_ticket_does_belong_to_is_given_in_url(
            self):
        ticket_update_url = '/projects/{}/tickets/{}/edit'.format(
            self.rainbow_project.id, self.ticket.id)
        request = self.request_factory.post(ticket_update_url,
                                            data=self.form_data)
        request.user = self.user

        res = update_ticket_view(request,
                                 project_id=self.rainbow_project.id,
                                 ticket_id=self.ticket.id)

        self.assertEqual(len(res.context_data['form'].errors), 1)
コード例 #6
0
    def test_update_ticket_view_does_not_update_ticket_if_a_project_the_ticket_does_belong_to_is_given_in_url(
            self):
        ticket_update_url = '/projects/{}/tickets/{}/edit'.format(
            self.rainbow_project.id, self.ticket.id)
        request = self.request_factory.post(ticket_update_url,
                                            data=self.form_data)
        request.user = self.user

        res = update_ticket_view(request,
                                 project_id=self.rainbow_project.id,
                                 ticket_id=self.ticket.id)

        updated_ticket = Ticket.objects.get(id=self.ticket.id)
        self.assertNotEqual(self.new_title, updated_ticket.title)
        self.assertEqual(self.teal_project.id, updated_ticket.project_id)
コード例 #7
0
    def test_update_ticket_view_updates_tickets_values(self):
        ticket_update_url = '/projects/{}/tickets/{}/edit'.format(
            self.teal_project.id, self.ticket.id)
        request = self.request_factory.post(ticket_update_url,
                                            data=self.form_data)
        request.user = self.user

        res = update_ticket_view(request,
                                 project_id=self.teal_project.id,
                                 ticket_id=self.ticket.id)

        updated_ticket = Ticket.objects.get(id=self.ticket.id)
        self.assertEqual(self.new_title, updated_ticket.title)
        self.assertEqual(self.new_description, updated_ticket.description)
        self.assertEqual(self.user.id,
                         updated_ticket.assignees.values()[0]['id'])
コード例 #8
0
ファイル: test_site_views.py プロジェクト: ashwoods/potatoist
 def test_user_update_ticket_view_post_error(self):
     request = self.rf.post(reverse('ticket-update', kwargs=self.ticket_kwargs))
     request.user = self.user
     response = views.update_ticket_view(request, **self.ticket_kwargs)
     ok_(not response.context_data['form'].is_valid())
コード例 #9
0
ファイル: test_site_views.py プロジェクト: ashwoods/potatoist
 def test_user_update_ticket_view_get(self):
     request = self.rf.get(reverse('ticket-update', kwargs=self.ticket_kwargs))
     request.user = self.user
     response = views.update_ticket_view(request, **self.ticket_kwargs)
     assert_code(response, 200)
     ok_(response.render())