"""Test markov utility methods.""" from django.test import TestCase from markov.lib import get_word_out_of_states, learn_line from markov.models import MarkovContext, MarkovState class MarkovLibTestCase(TestCase): """Test library methods used by the Markov plugin.""" fixtures = ['tests/fixtures/irc_server_fixture.json', 'tests/fixtures/markov_fixture.json'] def test_learn_and_get(self): """Test that we can learn some lines and get a word back.""" learn_line("the elephant goes ERRRRRRRRRRRRR", MarkovContext.objects.get(pk=1)) word = get_word_out_of_states(MarkovState.objects.all()) self.assertIn(word, ['the', 'elephant', 'goes', 'ERRRRRRRRRRRRR', '__stop'])