From 68c8496111f5e186f9066dc25c17ba5053d36d10 Mon Sep 17 00:00:00 2001 From: Daniele Solombrino Date: Sun, 8 Oct 2017 15:17:37 +0200 Subject: [PATCH 1/3] add RandonmAnswerTest --- .../core/extraction/RandomAnswerTest.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/test/java/com/github/bot/curiosone/core/extraction/RandomAnswerTest.java diff --git a/src/test/java/com/github/bot/curiosone/core/extraction/RandomAnswerTest.java b/src/test/java/com/github/bot/curiosone/core/extraction/RandomAnswerTest.java new file mode 100644 index 00000000..ffd126ed --- /dev/null +++ b/src/test/java/com/github/bot/curiosone/core/extraction/RandomAnswerTest.java @@ -0,0 +1,19 @@ +package com.github.bot.curiosone.core.extraction; + +import static org.assertj.core.api.Assertions.assertThat; + +import com.github.bot.curiosone.core.nlp.Phrase; + +import org.junit.Test; + +public class RandomAnswerTest { + + @Test + public void testRandomAnswer() { + Phrase p = new Phrase("youdont knowany single token of this very very long sentence"); + assertThat(RandomAnswer.getAnswer(p)).isIn( + new BrainResponse("What a nice day to talk to a chatbot!", ""), + new BrainResponse("Can you reformulate your sentence please?", ""), + new BrainResponse("Tell me something interesting please.", "")); + } +} From 2a2df2be3a2ba5b344c09df97d5bb5c7eed4e281 Mon Sep 17 00:00:00 2001 From: Daniele Solombrino Date: Sun, 8 Oct 2017 15:33:40 +0200 Subject: [PATCH 2/3] add QuestionTest --- .../core/extraction/QuestionTest.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/test/java/com/github/bot/curiosone/core/extraction/QuestionTest.java diff --git a/src/test/java/com/github/bot/curiosone/core/extraction/QuestionTest.java b/src/test/java/com/github/bot/curiosone/core/extraction/QuestionTest.java new file mode 100644 index 00000000..294b5010 --- /dev/null +++ b/src/test/java/com/github/bot/curiosone/core/extraction/QuestionTest.java @@ -0,0 +1,29 @@ +package com.github.bot.curiosone.core.extraction; + +import static org.assertj.core.api.Assertions.assertThat; + +import com.github.bot.curiosone.core.nlp.Phrase; +import com.github.bot.curiosone.core.nlp.Sentence; + +import org.junit.Test; + +public class QuestionTest { + + @Test + public void testGetAnswer() { + Sentence s = Sentence.extract(new Phrase("Who is Gogol?")).get(0); + assertThat(Question.getAnswer(s, "")).isPresent(); + + s = Sentence.extract(new Phrase("Where is Gogol?")).get(0); + assertThat(Question.getAnswer(s, "")).isPresent(); + + s = Sentence.extract(new Phrase("What is Gogol?")).get(0); + assertThat(Question.getAnswer(s, "")).isPresent(); + + s = Sentence.extract(new Phrase("Why is Gogol?")).get(0); + assertThat(Question.getAnswer(s, "")).isNotPresent(); + + s = Sentence.extract(new Phrase("When is Gogol?")).get(0); + assertThat(Question.getAnswer(s, "")).isNotPresent(); + } +} From e79865dc999121b263bb0f2c344309a7a1ae38f7 Mon Sep 17 00:00:00 2001 From: Daniele Solombrino Date: Sun, 8 Oct 2017 15:52:54 +0200 Subject: [PATCH 3/3] improve QuestionTest --- .../curiosone/core/extraction/QuestionTest.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/github/bot/curiosone/core/extraction/QuestionTest.java b/src/test/java/com/github/bot/curiosone/core/extraction/QuestionTest.java index 294b5010..0887cf5b 100644 --- a/src/test/java/com/github/bot/curiosone/core/extraction/QuestionTest.java +++ b/src/test/java/com/github/bot/curiosone/core/extraction/QuestionTest.java @@ -2,16 +2,29 @@ import static org.assertj.core.api.Assertions.assertThat; +import com.github.bot.curiosone.core.knowledge.SemanticNetwork; +import com.github.bot.curiosone.core.knowledge.SemanticRelationType; import com.github.bot.curiosone.core.nlp.Phrase; import com.github.bot.curiosone.core.nlp.Sentence; +import java.io.IOException; + import org.junit.Test; public class QuestionTest { @Test - public void testGetAnswer() { - Sentence s = Sentence.extract(new Phrase("Who is Gogol?")).get(0); + public void testGetAnswer() throws IOException { + SemanticNetwork sn = SemanticNetwork.getInstance(); + sn.learn("abcdedfgh", SemanticRelationType.IS_A, "alphabet"); + + Sentence s = Sentence.extract(new Phrase("Who is abcdedfgh?")).get(0); + assertThat(Question.getAnswer(s, "")).isPresent(); + + s = Sentence.extract(new Phrase("Where is abcdedfgh?")).get(0); + assertThat(Question.getAnswer(s, "")).isPresent(); + + s = Sentence.extract(new Phrase("Who is Gogol?")).get(0); assertThat(Question.getAnswer(s, "")).isPresent(); s = Sentence.extract(new Phrase("Where is Gogol?")).get(0);