class CorpusUtilsTestCase(TestCase): def setUp(self): self.corpus = Corpus() def test_get_file_path(self): """ Test that a dotted path is properly converted to a file address. """ path = self.corpus.get_file_path("chatterbot.corpus.english") self.assertIn( os.path.join("chatterbot", "corpus", "data", "english"), path ) def test_read_corpus(self): corpus_path = os.path.join( self.corpus.data_directory, "english", "conversations.json" ) data = self.corpus.read_corpus(corpus_path) self.assertIn("conversations", data) def test_load_corpus(self): corpus = self.corpus.load_corpus("chatterbot.corpus.english.greetings") self.assertEqual(len(corpus), 1) self.assertIn(["Hi", "Hello"], corpus[0]) def test_load_corpus_general(self): corpus = self.corpus.load_corpus("chatterbot.corpus.english") self.assertEqual(len(corpus), 2) self.assertIn(["Hi", "Hello"], corpus[1])
class CorpusUtilsTestCase(TestCase): def setUp(self): self.corpus = Corpus() def test_get_file_path(self): """ Test that a dotted path is properly converted to a file address. """ path = self.corpus.get_file_path('chatterbot.corpus.english') self.assertIn(os.path.join('chatterbot', 'corpus', 'data', 'english'), path) def test_read_corpus(self): corpus_path = os.path.join(self.corpus.data_directory, 'english', 'conversations.json') data = self.corpus.read_corpus(corpus_path) self.assertIn('conversations', data) def test_list_english_corpus_files(self): data_files = self.corpus.list_corpus_files('chatterbot.corpus.english') self.assertGreaterEqual(len(data_files), 3) self.assertIn('.json', data_files[0]) def test_load_corpus(self): corpus = self.corpus.load_corpus('chatterbot.corpus.english.greetings') self.assertEqual(len(corpus), 1) self.assertIn(['Hi', 'Hello'], corpus[0]) def test_load_corpus_general(self): corpus = self.corpus.load_corpus("chatterbot.corpus.english") self.assertEqual(len(corpus), 3) self.assertIn(['Hi', 'Hello'], corpus[1])
class CorpusUtilsTestCase(TestCase): def setUp(self): self.corpus = Corpus() def test_get_file_path(self): """ Test that a dotted path is properly converted to a file address. """ path = self.corpus.get_file_path("chatterbot.corpus.english") self.assertIn( os.path.join("chatterbot", "corpus", "data", "english"), path ) def test_read_corpus(self): corpus_path = os.path.join( self.corpus.data_directory, "english", "conversations.json" ) data = self.corpus.read_corpus(corpus_path) self.assertIn("conversations", data) def test_load_corpus(self): corpus = self.corpus.load_corpus("chatterbot.corpus.english.greetings") self.assertEqual(len(corpus), 1) self.assertIn(["Hi", "Hello"], corpus[0]) def test_load_corpus_general(self): corpus = self.corpus.load_corpus("chatterbot.corpus.english") self.assertEqual(len(corpus), 3) self.assertIn(["Hi", "Hello"], corpus[1])
def get_language_data(self , language): """ Load language-specific data """ from chatterbot.corpus import Corpus corpus = Corpus() math_words_data_file_path = corpus.get_file_path('chatterbot.corpus.{}.math_words'.format(language) , extension='json') try: with open(math_words_data_file_path) as data: return json.load(data) except IOError: raise self.UnrecognizedLanguageException( 'A math_words data file was not found for `{}` at `{}`.'.format(language , math_words_data_file_path))
class CorpusUtilsTestCase(TestCase): def setUp(self): self.corpus = Corpus() def test_get_file_path(self): """ Test that a dotted path is properly converted to a file address. """ path = self.corpus.get_file_path('chatterbot.corpus.english') self.assertIn( os.path.join('chatterbot', 'corpus', 'data', 'english'), path ) def test_read_english_corpus(self): corpus_path = os.path.join( self.corpus.data_directory, 'english', 'conversations.corpus.json' ) data = self.corpus.read_corpus(corpus_path) self.assertIn('conversations', data) def test_list_english_corpus_files(self): data_files = self.corpus.list_corpus_files('chatterbot.corpus.english') self.assertGreaterEqual(len(data_files), 3) self.assertIn('.json', data_files[0]) def test_load_corpus(self): corpus = self.corpus.load_corpus('chatterbot.corpus.english.greetings') self.assertEqual(len(corpus), 1) self.assertIn(['Hi', 'Hello'], corpus[0]) def test_load_corpus_english(self): corpus = self.corpus.load_corpus("chatterbot.corpus.english") self.assertEqual(len(corpus), 3) self.assertIn(['Hi', 'Hello'], corpus[1])
def get_language_data(self, language): """ Load language-specific data """ from chatterbot.corpus import Corpus corpus = Corpus() math_words_data_file_path = corpus.get_file_path( 'chatterbot.corpus.{}.math_words'.format(language), extension='json' ) try: with open(math_words_data_file_path) as data: return json.load(data) except IOError: raise self.UnrecognizedLanguageException( 'A math_words data file was not found for `{}` at `{}`.'.format( language, math_words_data_file_path ) )
class CorpusLoadingTestCase(TestCase): def setUp(self): self.corpus = Corpus() def test_load_corpus_chinese(self): corpus = self.corpus.load_corpus('chatterbot.corpus.chinese') self.assertTrue(len(corpus)) def test_load_corpus_english(self): corpus = self.corpus.load_corpus('chatterbot.corpus.english') self.assertTrue(len(corpus)) def test_load_corpus_english_greetings(self): corpus = self.corpus.load_corpus('chatterbot.corpus.english.greetings') self.assertEqual(len(corpus), 1) self.assertIn(['Hi', 'Hello'], corpus[0]) def test_load_corpus_french(self): corpus = self.corpus.load_corpus('chatterbot.corpus.french') self.assertTrue(len(corpus)) def test_load_corpus_german(self): corpus = self.corpus.load_corpus('chatterbot.corpus.german') self.assertTrue(len(corpus)) def test_load_corpus_hindi(self): corpus = self.corpus.load_corpus('chatterbot.corpus.hindi') self.assertTrue(len(corpus)) def test_load_corpus_indonesia(self): corpus = self.corpus.load_corpus('chatterbot.corpus.indonesia') self.assertTrue(len(corpus)) def test_load_corpus_italian(self): corpus = self.corpus.load_corpus('chatterbot.corpus.italian') self.assertTrue(len(corpus)) def test_load_corpus_marathi(self): corpus = self.corpus.load_corpus('chatterbot.corpus.marathi') self.assertTrue(len(corpus)) def test_load_corpus_portuguese(self): corpus = self.corpus.load_corpus('chatterbot.corpus.portuguese') self.assertTrue(len(corpus)) def test_load_corpus_russian(self): corpus = self.corpus.load_corpus('chatterbot.corpus.russian') self.assertTrue(len(corpus)) def test_load_corpus_spanish(self): corpus = self.corpus.load_corpus('chatterbot.corpus.spanish') self.assertTrue(len(corpus)) def test_load_corpus_telugu(self): corpus = self.corpus.load_corpus('chatterbot.corpus.telugu') self.assertTrue(len(corpus)) def test_get_file_path(self): """ Test that a dotted path is properly converted to a file address. """ import os path = self.corpus.get_file_path('chatterbot.corpus.english') self.assertIn( os.path.join('chatterbot_corpus', 'data', 'english'), path )