예제 #1
0
    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"]))
예제 #2
0
    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")
예제 #3
0
    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)