示例#1
0
    def testReportDataWithDb(self):
        db = TestCaseDB(DEFAULT_DB_NAME)

        result = Parser.parse(self.fileContent)

        db.refreshCoverageData(1, result)

        result2 = db.getCoverageData(1)

        self.assertEqual(len(result), len(result2))

        for fileName in result.keys():
            self.assertTrue(fileName in result2.keys())

            covInfo1 = result[fileName]
            covInfo2 = result2[fileName]

            self.assertTrue(covInfo1.getAllLines(), covInfo2.getAllLines())
示例#2
0
    for caseInfo in first_run_set:
        coverageInfo = reCalcCoverageInfo(caseInfo)
        caseDB.refreshCoverageData(caseInfo.getSeq(), coverageInfo)
        caseDB.refreshCaseInfo(caseInfo.getSeq(), int(counterChange))

    rerun_case_set = []

    print 'Diff Cases...'
    for caseInfo in diff_run_set:
        print ('\tTry to get difference...')
        changeListIds = p4ChangeList(options.p4client, caseInfo.getLastCL(), counterChange, ticket)

        if len(changeListIds):
            print ('\tload coverage from database...')

            coverageInfo = caseDB.getCoverageData(caseInfo.getSeq())

            print ('\tGo through each changelist...')
            for clId in changeListIds:
                diffInfo = p4DiffFile(options.p4client, clId, ticket)

                triggered = False
                for aFile in diffInfo.keys():
                    if coverageInfo.has_key(aFile):
                        if isCodeChanged(coverageInfo[aFile], diffInfo[aFile]):
                            rerun_case_set.append(caseInfo)
                            triggered = True
                            break

                if triggered:
                    break