示例#1
0
 def test_parse_state_size(self):
     corpus = parse("This is some more text.", 3)
     self.assertDictEqual(
         {
             ("This", "is", "some"): ["more"],
             ("is", "some", "more"): ["text."]
         }, corpus)
     corpus = parse("This is some more text.", 4)
     self.assertDictEqual({("This", "is", "some", "more"): ["text."]},
                          corpus)
示例#2
0
def markov_list(count: int):
    """
    Generates a list of quotes using a markov chain, optionally constraining input to a speaker or submitter.
    """
    submitter = request.args.get('submitter')
    speaker = request.args.get('speaker')
    query = query_builder(None, None, submitter, speaker)
    if query.all() is None:
        return "none"
    markov.reset()
    markov.parse([quote.quote for quote in query.all()])
    return jsonify(markov.generate_list(int(count)))
示例#3
0
 def test_parse(self):
     corpus = parse("This is some text.")
     self.assertDictEqual(
         {
             ("This", "is"): ["some"],
             ("is", "some"): ["text."]
         }, corpus)
示例#4
0
 def test_generate_number_of_sentences(self):
     corpus = parse(
         "This is some text. This is some more text. And some more. Have some more text."
     )
     for x in range(1, 5):
         generated = generate(corpus, x)
         number_of_sentences = generated.count(".")
         self.assertEqual(x, number_of_sentences)
示例#5
0
 def test_parse_multiple_values(self):
     corpus = parse("This is some is some text.")
     self.assertDictEqual(
         {
             ("This", "is"): ["some"],
             ("is", "some"): ["is", "text."],
             ("some", "is"): ["some"]
         }, corpus)
示例#6
0
 def test_parse_multiple_values(self):
     corpus = parse("This is some is some text.");
     self.assertDictEqual({("This", "is"): ["some"], ("is", "some"): ["is", "text."], ("some", "is"): ["some"]}, corpus)
示例#7
0
 def test_parse(self):
     corpus = parse("This is some text.")
     self.assertDictEqual({("This", "is"): ["some"], ("is", "some"): ["text."]}, corpus)
示例#8
0
 def test_generate_number_of_sentences(self):
     corpus = parse("This is some text. This is some more text. And some more. Have some more text.")
     for x in range(1, 5):
         generated = generate(corpus, x)
         number_of_sentences = generated.count(".")
         self.assertEqual(x, number_of_sentences)
示例#9
0
 def test_generate(self):
     corpus = parse("This is some text.")
     generated = generate(corpus)
     self.assertEqual("This is some text.", generated)
示例#10
0
 def test_parse_state_size(self):
     corpus = parse("This is some more text.", 3)
     self.assertDictEqual({("This", "is", "some"): ["more"], ("is", "some", "more"): ["text."]}, corpus)
     corpus = parse("This is some more text.", 4)
     self.assertDictEqual({("This", "is", "some", "more"): ["text."]}, corpus)
示例#11
0
 def test_generate(self):
     corpus = parse("This is some text.")
     generated = generate(corpus)
     self.assertEqual("This is some text.", generated)