def test_normalRun(self): # set up db = SUDBConnect() sponsorsList = [] descriptionList = [] ocList = [] iefaLeadTrainingIdList = [] actualBad = [] concatenatedDescriptionOCList = [] rows = db.getRowsDB("select * from dbo.IefaLeadsTrainingItems where BadScholarship!='Maybe'") for row in rows: sponsorsList.append(row.Sponsor) descriptionList.append(row.Description) ocList.append(row.OtherCriteria) actualBad.append(row.BadScholarship) iefaLeadTrainingIdList.append(str(row.IefaLeadTrainingId)) for i in range(len(descriptionList)): conatenatedItem = '%s %s' % (descriptionList[i], ocList[i]) concatenatedDescriptionOCList.append(conatenatedItem) # test testNER = ClassifyBadScholarships(sponsorsList, concatenatedDescriptionOCList) predictedBad = testNER.loopThroughLeadsAndDoStuff() accuracy = ComputeAccuracy(actualBad, predictedBad).calculateAccuracy() print(accuracy) # put result in db for i in range(len(predictedBad)): iefaLeadTrainingId = iefaLeadTrainingIdList[i] predicted = predictedBad[i] db.insertUpdateOrDeleteDB( "update dbo.IefaLeadsTrainingItems set NormalTestPredictedTag='" + predicted + "' where IefaLeadTrainingId='" + iefaLeadTrainingId + "'")
def test_infoTextOnlyNoInsert(self): # set up db = SUDBConnect() sponsorsList = [] descriptionList = [] ocList = [] iefaLeadTrainingIdList = [] actualBad = [] concatenatedDescriptionOCList = [] rows = db.getRowsDB("select * from dbo.IefaLeadsTrainingItems where BadScholarship!='Maybe'") for row in rows: sponsorsList.append(row.Sponsor) descriptionList.append(row.Description) ocList.append(row.OtherCriteria) actualBad.append(row.BadScholarship) iefaLeadTrainingIdList.append(str(row.IefaLeadTrainingId)) for i in range(len(descriptionList)): conatenatedItem = '%s %s' % (descriptionList[i], ocList[i]) concatenatedDescriptionOCList.append(conatenatedItem) # test testNER = ClassifyBadScholarships(sponsorsList, concatenatedDescriptionOCList, test='infoTextOnly') infoTextPredictedBad = testNER.loopThroughLeadsAndDoStuff() accuracy = ComputeAccuracy(actualBad, infoTextPredictedBad).calculateAccuracy() print(accuracy)