コード例 #1
0
    def testBuildTrainDbIncremental(self):
        originalBranch = config.getBranch()
        dbPath = config.getCfDbFile()
        db = CFDatabase(dbPath)
        db.clean()
        self.assertEqual(len(db.getAllFixData()), 0)
        del db

        config.setBranch('trainDbScriptIncrementalTest')
        buildTestDB.main(True)
        db = CFDatabase(dbPath)
        self.assertEqual(len(db.getAllFixData()), 1)
        self.assertEqual(db.getAllFixData()[0][3], 'deadcode.DeadStores')
        self.assertEqual(db.getLastCommit(),
                         'add691cf37da6c9d40666eac1bc8c1afda071c77')
        del db

        config.setBranch(originalBranch)
        buildTestDB.main(False)
        db = CFDatabase(dbPath)
        self.assertEqual(len(db.getAllFixData()), 2)
        self.assertEqual(db.getAllFixData()[0][3], 'deadcode.DeadStores')
        self.assertEqual(db.getAllFixData()[1][3], 'core.DivideZero')
        self.assertEqual(db.getLastCommit(),
                         'f2917b938f0ecbc62ad48101d034369a1ae61a19')
コード例 #2
0
 def loadCommitList(self, clean=False):
     self.commits = self.vcs.getAllVersions(config.getBranch())
     if not clean:
         lastCommit = self.db.getLastCommit()
         lastIndex = self.commits.index(lastCommit) + 1
         if lastIndex < len(self.commits) - 1:
             self.commits = self.commits[0:lastIndex]
         self.currentCommitIndex = lastIndex - 1
     else:
         self.currentCommitIndex = len(self.commits)
コード例 #3
0
 def loadCommitList(self):
     self.commits = self.vcs.getAllVersions(config.getBranch())
     self.currentCommitIndex = 0
コード例 #4
0
 def checkoutToTop(self):
     self.vcs.checkout(config.getBranch())
コード例 #5
0
    if bugData.getChecker() == 'clang-diagnostic-constant-conversion':
        return fixConstConv(code, bugData)
    return None


ccdb = CCDatabase(config.getCcDbFile())
db = sqlite3.connect('../Results/db.sqlite')
cursor = db.cursor()
cursor.execute('SELECT * FROM bugs')
dataFromDb = cursor.fetchall()
bugs = []
bugsPerFile = {}
BUG_NOT_PROCESSED = 0
vcs = GitProvider(config.getRepoDir())
checkers = Checkers()
currentCommit = vcs.getAllVersions(config.getBranch())[0]
bugDataList = {}
fileContents = {}
codechecker = CodeChecker(config.getRepoDir())

if len(dataFromDb) > 0:
    print("Skipping steps 1-2, DB already filled with data")
    for bug in dataFromDb:
        if bug[2] not in bugsPerFile:
            bugsPerFile[bug[2]] = []
        if bug[3] == BUG_NOT_PROCESSED:
            bugDataList[bug[0]] = ccdb.getNotResolvedBugData(bug[0])
            bugsPerFile[bug[2]].append(bug[0])
else:
    # 1.
    print("Step 1")
コード例 #6
0
 def testLoadRootCommit(self):
     gp = gitprovider.GitProvider(config.getRepoDir())
     commits = gp.getAllVersions(config.getBranch())
     self.assertEqual(
         'e46f62cbdcd7447dc6c796d917fece54426c782f', commits[-1]
     )  #'bde8d75eb1133703b93a5110ed01c635d6d886ac', commits[-1])