public void matchAnswersWithListsIntegrationTest() { var feedback = qae.matchAnswers(SubQqestion1, userAnswerSubQuestion1); //good Assert.IsTrue(feedback.missingEntitis.Contains(Entity4)); Assert.IsTrue(feedback.missingEntitis.Contains(multyEntity)); Assert.IsFalse(feedback.missingEntitis.Contains(Entity1)); Assert.IsFalse(feedback.missingEntitis.Contains(Entity2)); Assert.AreEqual(feedback.score, 45); //bad feedback = qae.matchAnswers(SubQqestion1, ""); Assert.IsTrue(feedback.missingEntitis.Contains(Entity4)); Assert.IsTrue(feedback.missingEntitis.Contains(Entity1)); Assert.IsTrue(feedback.missingEntitis.Contains(Entity2)); Assert.IsTrue(feedback.missingEntitis.Contains(multyEntity)); Assert.AreEqual(feedback.score, 0); //ugly feedback = qae.matchAnswers(null, ""); Assert.AreEqual(feedback.missingEntitis.Count, 0); Assert.AreEqual(feedback.score, 0); }
private void button1_Click(object sender, EventArgs e) { QAEngin qna = new QAEngin(); string str; var subQuestion = new SubQuestion(); subQuestion.questionText = questionBox.Text; subQuestion.answerText = input_TB.Text; subQuestion.flags = "need1"; var match = qna.matchAnswers(subQuestion, input_TB2.Text); var answerText = "Score:" + match.score + Environment.NewLine; foreach (var ent in match.missingEntitis) { answerText += "Missing Entity:" + ent.entityValue + Environment.NewLine; } foreach (var ans in match.answersFeedbacks.Where(x => x.score < 75)) { answerText += "Missing Answer:" + ans + Environment.NewLine; } var res = qnaCont.createFeedBack(match); foreach (var s in res) { answerText += s + Environment.NewLine; } text_TB3.Text = answerText; }
public void matchAnswersWithListsTest() { var feedback = qae.matchAnswers(list2, list1); Assert.AreEqual(feedback.score, 68); //good Assert.AreEqual(feedback.missingEntitis[0].entityValue, eventO.Word); Assert.AreEqual(feedback.missingEntitis[0].entityType, "eventWord"); Assert.AreEqual(feedback.score, 68); //bad Assert.AreEqual(feedback.missingEntitis.Count, 1); list1.Clear(); //ugly Assert.AreEqual(qae.matchAnswers(list1, list1).missingEntitis.Count, 0); Assert.AreEqual(qae.matchAnswers(list1, list1).score, 100); }
public void answerQualityCompareTest() { var questions = db.getSampleQuestions(); foreach (var a in questions) { var q = new SubQuestion(); q.answerText = a.question; q.questionText = ""; q.flags = ""; var score = qna.matchAnswers(q, a.userAnswer).score; db.updateSampleQuestion(a, score); var logScore = int.Parse(a.entities); Assert.IsTrue(score > logScore - 10 && score < logScore + 10, "id: " + a.id + "\nlogScore:" + logScore + " != score:" + score + "\n1:" + a.question + "\n2:" + a.userAnswer); } }
private void button4_Click(object sender, EventArgs e) { var inputText = systemAnswer_TB.Text; string log = ""; var botResualt = new NLPControler().testAnalizer(inputText, out log, questionInput_TB.Text); drawTree(botResualt, answerTreeView); inputText = userAnswer_TB2.Text; var botResualt2 = new NLPControler().testAnalizer(inputText, out log, questionInput_TB.Text); drawTree(botResualt2, userAnswerTreeView); QAEngin qna = new QAEngin(); string str; var subQuestion = new SubQuestion(); subQuestion.questionText = questionInput_TB.Text; subQuestion.answerText = systemAnswer_TB.Text; subQuestion.flags = "need1"; var match = qna.matchAnswers(subQuestion, userAnswer_TB2.Text); var answerText = "Score:" + match.score + Environment.NewLine; foreach (var ent in match.missingEntitis) { answerText += "Missing Entity:" + ent.entityValue + Environment.NewLine; } foreach (var ans in match.answersFeedbacks.Where(x => x.score < 75)) { answerText += "Missing Answer:" + ans.answer + Environment.NewLine; } var res = qnaCont.createFeedBack(match); foreach (var s in res) { answerText += s + Environment.NewLine; } resualt_TB3.Text = answerText; }
public AnswerFeedback matchAnswers(ISubQuestion subquestion, string answer) { return(qna.matchAnswers(subquestion, answer)); }