Beispiel #1
0
 def setUpClass(cls):
     session = ('@UTF8\n'
                '@Begin\n'
                '@Date:\t12-SEP-1997\n'
                '@Media:\tmedia_filename, audio\n'
                '@End')
     cls.reader = CHATReader(io.StringIO(session))
Beispiel #2
0
 def test_get_morpheme_language(self):
     """Test get_morpheme_language. Should return an empty string."""
     seg = 'Hatschi'
     gloss = 'sneeze'
     pos = 'N'
     actual_output = CHATReader.get_morpheme_language(seg, gloss, pos)
     desired_output = ''
     self.assertEqual(actual_output, desired_output)
Beispiel #3
0
    def get_reader(session_file):
        """Return a CHATReader instance.

        Returns:
            acqdiv.parsers.chat.readers.reader.CHATReader:
            The reader instance.
        """
        return CHATReader(session_file)
Beispiel #4
0
 def setUpClass(cls):
     session = ('@UTF8\n'
                '@Begin\n'
                '@Participants:\tCHI Hlobohang Target_Child\n'
                '@ID:\tsme|Sesotho|CHI|2;2.||||Target_Child|||\n'
                '@Birth of CHI:\t14-JAN-2006\n'
                '@End')
     cls.reader = CHATReader(io.StringIO(session))
     cls.reader.load_next_speaker()
Beispiel #5
0
 def setUpClass(cls):
     session = ('@UTF8\n'
                '@Begin\n'
                '*MEM:\t&foo ma(i)nline [: utterance]. \x150_1111\x15\n'
                '%add:\tADD\n'
                '%sit:\tThis is the situation\n'
                '%act:\tThis is the action\n'
                '%mor:\tThis is the morphology tier\n'
                '%eng:\tThis is the translation.\n'
                '%com:\tThis is the comment\n'
                '%exp:\tThis is the explanation\n'
                '@End')
     cls.reader = CHATReader(io.StringIO(session))
     cls.reader.load_next_record()
Beispiel #6
0
 def setUpClass(cls):
     session = ('@UTF8\n'
                '@Begin\n'
                '@Participants:\tMOT Kim Mother, CHI Daniel Target_Child\n'
                '@ID:\t|English|MOT|||||Mother|||\n'
                '@ID:\t|English|CHI|2;8.|male|||Target_Child|||\n'
                '*MOT:\tThis is the first mainline of MOT .\n'
                '%eng:\tThis is the translation\n'
                '*CHI:\tThis is the first mainline of CHI .\n'
                '%gls:\tThis is the gls tier\n'
                '%cod:\tThis is the cod tier\n'
                '*MOT:\tThis is the second mainline of MOT .\n'
                '@End')
     cls.reader = CHATReader(io.StringIO(session))
Beispiel #7
0
    def test_get_session_metadata(self):
        """Test get_session_metadata with TestCHATParser.cha. (CHATParser)"""
        session = ('@UTF8\n'
                   '@Begin\n'
                   '@Date:\t12-SEP-1997\n'
                   '@Participants:\tMEM Mme_Manyili Grandmother , '
                   'CHI Hlobohang Target_Child\n'
                   '@ID:\tsme|Sesotho|MEM||female|||Grandmother|||\n'
                   '@ID:\tsme|Sesotho|CHI|2;2.||||Target_Child|||\n'
                   '@Birth of CHI:\t14-JAN-2006\n'
                   '@Birth of MEM:\t11-OCT-1974\n'
                   '@Media:\th2ab, audio\n'
                   '@End')
        parser = CHATParser(self.dummy_cha_path)
        parser.reader = CHATReader(io.StringIO(session))

        session = parser.parse()
        oracle = (session.source_id == 'dummy' and session.date == '1997-09-12'
                  and session.media_filename == 'h2ab')

        assert oracle
Beispiel #8
0
 def test_get_poses(self):
     """Test get_poses."""
     pos_word = 'mor1-mor2-mor3'
     actual_output = CHATReader.get_poses(pos_word)
     desired_output = ['mor1', 'mor2', 'mor3']
     return self.assertEqual(actual_output, desired_output)
Beispiel #9
0
    def test_next_speaker(self):
        """Test next_speaker with test.cha. (CHATParser)"""
        session = ('@UTF8\n'
                   '@Begin\n'
                   '@Date:\t12-SEP-1997\n'
                   '@Participants:\tMEM Mme_Manyili Grandmother , '
                   'CHI Hlobohang Target_Child\n'
                   '@ID:\tsme|Sesotho|MEM||female|||Grandmother|||\n'
                   '@ID:\tsme|Sesotho|CHI|2;2.||||Target_Child|||\n'
                   '@Birth of CHI:\t14-JAN-2006\n'
                   '@Birth of MEM:\t11-OCT-1974\n'
                   '@Media:\th2ab, audio\n'
                   '@End')
        parser = CHATParser(self.dummy_cha_path)
        parser.reader = CHATReader(io.StringIO(session))

        session = parser.parse()
        speaker_mem = session.speakers[0]
        speaker_chi = session.speakers[1]

        actual_mem_dict = {
            'speaker_label': speaker_mem.code,
            'name': speaker_mem.name,
            'age_raw': speaker_mem.age_raw,
            'gender_raw': speaker_mem.gender_raw,
            'role_raw': speaker_mem.role_raw,
            'languages_spoken': speaker_mem.languages_spoken,
            'birthdate': speaker_mem.birth_date
        }

        actual_chi_dict = {
            'speaker_label': speaker_chi.code,
            'name': speaker_chi.name,
            'age_raw': speaker_chi.age_raw,
            'gender_raw': speaker_chi.gender_raw,
            'role_raw': speaker_chi.role_raw,
            'languages_spoken': speaker_chi.languages_spoken,
            'birthdate': speaker_chi.birth_date
        }

        mem_dict = {
            'speaker_label': 'MEM',
            'name': 'Mme_Manyili',
            'age_raw': '',
            'gender_raw': 'female',
            'role_raw': 'Grandmother',
            'languages_spoken': 'sme',
            'birthdate': '1974-10-11'
        }
        chi_dict = {
            'speaker_label': 'CHI',
            'name': 'Hlobohang',
            'age_raw': '2;2.',
            'gender_raw': '',
            'role_raw': 'Target_Child',
            'languages_spoken': 'sme',
            'birthdate': '2006-01-14'
        }
        actual_output = [actual_mem_dict, actual_chi_dict]
        desired_output = [mem_dict, chi_dict]
        self.assertEqual(actual_output, desired_output)
Beispiel #10
0
 def test_get_main_morpheme(self):
     """Test get_main_morpheme."""
     actual_output = CHATReader.get_main_morpheme()
     desired_output = 'gloss'
     self.assertEqual(actual_output, desired_output)
Beispiel #11
0
 def test_get_pos_words(self):
     """Test get_pos_words."""
     pos_tier = 'This is an example'
     actual_output = CHATReader.get_seg_words(pos_tier)
     desired_output = ['This', 'is', 'an', 'example']
     self.assertEqual(actual_output, desired_output)
Beispiel #12
0
 def test_get_morpheme_words_multiple_whitespaces(self):
     """Test get_morpheme_words."""
     mor_tier = 'This  is   an example'
     actual_output = CHATReader.get_morpheme_words(mor_tier)
     desired_output = ['This', 'is', 'an', 'example']
     self.assertEqual(actual_output, desired_output)
Beispiel #13
0
 def test_get_word_language(self):
     """Test get_word_language."""
     actual_output = CHATReader.get_word_language('dal')
     desired_output = ''
     self.assertEqual(actual_output, desired_output)
Beispiel #14
0
 def test_get_standard_form(self):
     """Test get_standard_form."""
     actual_output = CHATReader.get_standard_form()
     desired_output = 'actual'
     self.assertEqual(actual_output, desired_output)
Beispiel #15
0
 def test_get_utterance_words_standard_case(self):
     """Test get_utterance_words for standard input."""
     utterance = 'ke eng ntho ena e?'
     actual_output = CHATReader.get_utterance_words(utterance)
     desired_output = ['ke', 'eng', 'ntho', 'ena', 'e?']
     self.assertEqual(actual_output, desired_output)
Beispiel #16
0
 def test_get_utterance_words_empty_string(self):
     """Test get_utterance_words for standard input."""
     utterance = ''
     actual_output = CHATReader.get_utterance_words(utterance)
     desired_output = []
     self.assertEqual(actual_output, desired_output)
Beispiel #17
0
 def test_get_utterance_words_multiple_blank_spaces(self):
     """Test get_utterance_words with multiple blank spaces."""
     utterance = 'ke eng  ntho ena   e?'
     actual_output = CHATReader.get_utterance_words(utterance)
     desired_output = ['ke', 'eng', 'ntho', 'ena', 'e?']
     self.assertEqual(actual_output, desired_output)