示例#1
0
    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
 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
 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())
    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))
    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)
    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)
    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
 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
 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())