Esempio n. 1
0
    def test_prop_whitespace_change_is_not_saved(self):
        ticket = Ticket(self.env)
        ticket.populate({'summary': 'ticket summary'})
        ticket.insert()

        ticket['summary'] = ' ticket summary '
        ticket.save_changes()
        self.assertEqual(0, len(ticket.get_changelog()))
Esempio n. 2
0
    def test_can_save_ticket_without_explicit_username(self):
        ticket = Ticket(self.env)
        ticket.insert()

        ticket['summary'] = 'another summary'
        ticket.save_changes()

        for change in ticket.get_changelog():
            self.assertEqual(None, change[1])
Esempio n. 3
0
 def _create_a_ticket(self):
     # 1. Creating ticket
     ticket = Ticket(self.env)
     ticket['reporter'] = 'santa'
     ticket['summary'] = 'Foo'
     ticket['description'] = 'Bar'
     ticket['foo'] = 'This is a custom field'
     ticket.insert()
     return ticket
Esempio n. 4
0
    def test_can_save_ticket_without_explicit_comment(self):
        ticket = Ticket(self.env)
        ticket.insert()

        ticket['summary'] = 'another summary'
        ticket.save_changes('foo')

        changes = ticket.get_changelog()
        comment_change = [c for c in changes if c[2] == 'comment'][0]
        self.assertEqual('1', comment_change[3])
        self.assertEqual('', comment_change[4])
Esempio n. 5
0
    def test_update_milestone_update_tickets(self):
        self.env.db_transaction("INSERT INTO milestone (name) VALUES ('Test')")

        tkt1 = Ticket(self.env)
        tkt1.populate({'summary': 'Foo', 'milestone': 'Test'})
        tkt1.insert()
        tkt2 = Ticket(self.env)
        tkt2.populate({'summary': 'Bar', 'milestone': 'Test'})
        tkt2.insert()

        milestone = Milestone(self.env, 'Test')
        milestone.name = 'Testing'
        milestone.update()

        self.assertEqual('Testing', Ticket(self.env, tkt1.id)['milestone'])
        self.assertEqual('Testing', Ticket(self.env, tkt2.id)['milestone'])
Esempio n. 6
0
    def test_delete_milestone_retarget_tickets(self):
        self.env.db_transaction("INSERT INTO milestone (name) VALUES ('Test')")

        tkt1 = Ticket(self.env)
        tkt1.populate({'summary': 'Foo', 'milestone': 'Test'})
        tkt1.insert()
        tkt2 = Ticket(self.env)
        tkt2.populate({'summary': 'Bar', 'milestone': 'Test'})
        tkt2.insert()

        milestone = Milestone(self.env, 'Test')
        milestone.delete(retarget_to='Other')
        self.assertEqual(False, milestone.exists)

        self.assertEqual('Other', Ticket(self.env, tkt1.id)['milestone'])
        self.assertEqual('Other', Ticket(self.env, tkt2.id)['milestone'])
Esempio n. 7
0
    def test_no_disown_from_changed_component(self):
        """
        Verify that a ticket is not disowned when the component is changed to
        a non-assigned component.
        """
        component1 = Component(self.env)
        component1.name = 'test1'
        component1.owner = 'joe'
        component1.insert()

        component2 = Component(self.env)
        component2.name = 'test2'
        component2.owner = ''
        component2.insert()

        ticket = Ticket(self.env)
        ticket['reporter'] = 'santa'
        ticket['summary'] = 'Foo'
        ticket['component'] = 'test1'
        ticket['status'] = 'new'
        tktid = ticket.insert()

        ticket = Ticket(self.env, tktid)
        ticket['component'] = 'test2'
        ticket.save_changes('jane', 'Testing')
        self.assertEqual('joe', ticket['owner'])
Esempio n. 8
0
    def test_owner_from_changed_component(self):
        """
        Verify that the owner of a new ticket is updated when the component is
        changed.
        """
        component1 = Component(self.env)
        component1.name = 'test1'
        component1.owner = 'joe'
        component1.insert()

        component2 = Component(self.env)
        component2.name = 'test2'
        component2.owner = 'kate'
        component2.insert()

        ticket = Ticket(self.env)
        ticket['reporter'] = 'santa'
        ticket['summary'] = 'Foo'
        ticket['component'] = 'test1'
        ticket['status'] = 'new'
        tktid = ticket.insert()

        ticket = Ticket(self.env, tktid)
        ticket['component'] = 'test2'
        ticket.save_changes('jane', 'Testing')
        self.assertEqual('kate', ticket['owner'])
Esempio n. 9
0
    def test_owner_from_component(self):
        """
        Verify that the owner of a new ticket is set to the owner of the
        component.
        """
        component = Component(self.env)
        component.name = 'test'
        component.owner = 'joe'
        component.insert()

        ticket = Ticket(self.env)
        ticket['reporter'] = 'santa'
        ticket['summary'] = 'Foo'
        ticket['component'] = 'test'
        ticket.insert()
        self.assertEqual('joe', ticket['owner'])
Esempio n. 10
0
 def test_custom_time(self):
     # Add a custom field of type 'time'
     self.env.config.set('ticket-custom', 'due', 'time')
     ticket = Ticket(self.env)
     self.assertFalse('due' in ticket.std_fields)
     self.assertTrue('due' in ticket.time_fields)
     ticket['reporter'] = 'john'
     ticket['summary'] = 'Task1'
     tktid = ticket.insert()
     ticket = Ticket(self.env, tktid)
     # Empty string is default value, but not a time stamp
     self.assertEqual(None, ticket['due'])
     ts = datetime(2011, 11, 11, 0, 0, 0, 0, utc)
     ticket['due'] = ts
     t1 = datetime(2001, 1, 1, 1, 1, 1, 0, utc)
     ticket.save_changes('joe', when=t1)
     self.assertEqual(ts, ticket['due'])
     ticket['due'] = ''
     t2 = datetime(2001, 1, 1, 1, 1, 2, 0, utc)
     ticket.save_changes('joe', when=t2)
     self.assertEqual('', ticket['due'])
Esempio n. 11
0
 def _insert_ticket(self, summary, **kw):
     """Helper for inserting a ticket into the database"""
     ticket = Ticket(self.env)
     for k, v in kw.items():
         ticket[k] = v
     return ticket.insert()
Esempio n. 12
0
 def _insert_ticket(self, summary, when, **kwargs):
     ticket = Ticket(self.env)
     for k, v in kwargs.iteritems():
         ticket[k] = v
     self.id = ticket.insert(when)
Esempio n. 13
0
    def test_comment_with_whitespace_only_is_not_saved(self):
        ticket = Ticket(self.env)
        ticket.insert()

        ticket.save_changes(comment='\n \n ')
        self.assertEqual(0, len(ticket.get_changelog()))