def test_to_json(self): question = Question() sentence1 = Sentence(self._client_context, "Hi") sentence1._response = "Hello" question._sentences.append(sentence1) sentence2 = Sentence(self._client_context, "Hi Again") question._sentences.append(sentence2) sentence2._response = "World" json_data = question.to_json() self.assertIsNotNone(json_data) self.assertEquals(False, json_data["srai"]) self.assertEquals(-1, json_data["current_sentence_no"]) self.assertEquals({}, json_data["properties"]) self.assertEquals(2, len(json_data["sentences"]))
def test_combine_answers(self): question = Question() sentence1 = Sentence(self._client_context, "Hi") sentence1._response = "Hello" question._sentences.append(sentence1) sentence2 = Sentence(self._client_context, "Hi Again") question._sentences.append(sentence2) sentence2._response = "World" self.assertEqual(2, len(question._sentences)) self.assertEqual(question._sentences[0]._response, "Hello") self.assertEqual(question._sentences[1]._response, "World") sentences = question.combine_sentences(self._client_context) self.assertEqual("Hi. Hi Again", sentences) combined = question.combine_answers() self.assertIsNotNone(combined) self.assertEqual(combined, "Hello. World")
def _read_sentences_from_db(self, client_context, questiondid, question ): sentencedaos = self._storage_engine.session.query(SentenceDAO).\ filter(SentenceDAO.questionid==questiondid) for sentencedao in sentencedaos: YLogger.debug(client_context, "Loading sentence %s", sentencedao) sentence = Sentence(client_context, sentencedao.sentence) sentence._response = sentencedao.response sentence._positivity = float(sentencedao.positivity) sentence._subjectivity = float(sentencedao.subjectivity) sentence._matched_context = MatchContext(0,0) question.sentences.append(sentence) self._read_match_context_from_db(client_context, sentencedao.id, sentence._matched_context)