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')
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)
def loadCommitList(self): self.commits = self.vcs.getAllVersions(config.getBranch()) self.currentCommitIndex = 0
def checkoutToTop(self): self.vcs.checkout(config.getBranch())
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")
def testLoadRootCommit(self): gp = gitprovider.GitProvider(config.getRepoDir()) commits = gp.getAllVersions(config.getBranch()) self.assertEqual( 'e46f62cbdcd7447dc6c796d917fece54426c782f', commits[-1] ) #'bde8d75eb1133703b93a5110ed01c635d6d886ac', commits[-1])