コード例 #1
0
ファイル: test_ticket.py プロジェクト: dinoboff/trachub
 def setUp(self):
     # setup environment
     self.env = EnvironmentStub(
         default_data=True,
         enable=['trac.*'])
     self.env.config.set('trachub', 'github_url', GIT_URL)
     DatabaseManager(self.env.compmgr)
     
     #install database
     setup = TracHubSetup(self.env.compmgr)
     setup.upgrade_environment(self.env.get_db_cnx())
     
     tkt = Ticket(self.env)
     tkt['reporter'] = 'me'
     tkt['summary'] = 'my new ticket'
     tkt['description'] = 'some bogus description'
     tkt['status'] = 'new'
     tkt.insert()
     
     self.now = to_timestamp(datetime.now(utc))
     self.ticker_updater = GitHubTicketUpdater(self.env.compmgr)
コード例 #2
0
ファイル: test_ticket.py プロジェクト: dinoboff/trachub
class Test(unittest.TestCase):

    def setUp(self):
        # setup environment
        self.env = EnvironmentStub(
            default_data=True,
            enable=['trac.*'])
        self.env.config.set('trachub', 'github_url', GIT_URL)
        DatabaseManager(self.env.compmgr)
        
        #install database
        setup = TracHubSetup(self.env.compmgr)
        setup.upgrade_environment(self.env.get_db_cnx())
        
        tkt = Ticket(self.env)
        tkt['reporter'] = 'me'
        tkt['summary'] = 'my new ticket'
        tkt['description'] = 'some bogus description'
        tkt['status'] = 'new'
        tkt.insert()
        
        self.now = to_timestamp(datetime.now(utc))
        self.ticker_updater = GitHubTicketUpdater(self.env.compmgr)
        
        
        
    def test_process_commit(self):
        commits = []
        time = self.now
        for data in COMMITS:
            c = GitHubCommit(self.env, git_url=GIT_URL, **data)
            c.time = time
            c.save()
            commits.append(c)
            time = time + 60
        
        # parse commit for the first time (with a clone)
        self.ticker_updater.process_commit(commits[0])
        tkt1 = Ticket(self.env, 1)
        change_log = tkt1.get_changelog()
        eq_(1, len(change_log))
        eq_('Damien Lebrun <*****@*****.**>', change_log[0][1])
        eq_(
            'Commit %(id)s:\n\n%(message)s\n\nSource: [%(url)s]' % COMMITS[0],
            change_log[0][4])
        
        # parse same commit (still clone),
        # should not update the ticket
        self.ticker_updater.process_commit(commits[1])
        tkt1 = Ticket(self.env, 1)
        change_log = tkt1.get_changelog()
        eq_(1, len(change_log))
        
        # parse the commit from the main git repository
        # Should update the repository
        self.ticker_updater.process_commit(commits[2])
        tkt1 = Ticket(self.env, 1)
        change_log = tkt1.get_changelog()
        eq_(3, len(change_log))
        eq_('Damien Lebrun <*****@*****.**>', change_log[1][1])
        eq_(
            'Commit %(id)s:\n\n%(message)s\n\nSource: [%(url)s]' % COMMITS[2],
            change_log[1][4])
        eq_('Damien Lebrun <*****@*****.**>', change_log[2][1])
        eq_('resolution',change_log[2][2])
        eq_('fixed',change_log[2][4])