예제 #1
0
    def test_sound_d(self):
        """Test abydos.phonetic.SoundD."""
        # Base cases
        self.assertEqual(self.pa.encode(''), '0000')
        self.assertEqual(SoundD(max_length=6).encode(''), '000000')

        self.assertEqual(self.pa.encode('knight'), '5300')
        self.assertEqual(self.pa.encode('accept'), '2130')
        self.assertEqual(self.pa.encode('pneuma'), '5500')
        self.assertEqual(self.pa.encode('ax'), '2000')
        self.assertEqual(self.pa.encode('wherever'), '6160')
        self.assertEqual(self.pa.encode('pox'), '1200')
        self.assertEqual(self.pa.encode('anywhere'), '5600')
        self.assertEqual(self.pa.encode('adenosine'), '3525')
        self.assertEqual(self.pa.encode('judge'), '2200')
        self.assertEqual(self.pa.encode('rough'), '6000')
        self.assertEqual(self.pa.encode('x-ray'), '2600')
        self.assertEqual(
            SoundD(max_length=-1).encode('acetylcholine'), '234245')
        self.assertEqual(SoundD(max_length=-1).encode('rough'), '6')

        # encode_alpha
        self.assertEqual(self.pa.encode_alpha('pox'), 'PK')
        self.assertEqual(self.pa.encode_alpha('anywhere'), 'NR')
        self.assertEqual(self.pa.encode_alpha('adenosine'), 'TNKN')
        self.assertEqual(self.pa.encode_alpha('judge'), 'KK')
예제 #2
0
class SoundDTestCases(unittest.TestCase):
    """Test class SoundD functions.

    test cases for abydos.phonetic.SoundD
    """

    pa = SoundD()

    def test_sound_d(self):
        """Test abydos.phonetic.SoundD."""
        # Base cases
        self.assertEqual(self.pa.encode(''), '0000')
        self.assertEqual(self.pa.encode('', max_length=6), '000000')

        self.assertEqual(self.pa.encode('knight'), '5300')
        self.assertEqual(self.pa.encode('accept'), '2130')
        self.assertEqual(self.pa.encode('pneuma'), '5500')
        self.assertEqual(self.pa.encode('ax'), '2000')
        self.assertEqual(self.pa.encode('wherever'), '6160')
        self.assertEqual(self.pa.encode('pox'), '1200')
        self.assertEqual(self.pa.encode('anywhere'), '5600')
        self.assertEqual(self.pa.encode('adenosine'), '3525')
        self.assertEqual(self.pa.encode('judge'), '2200')
        self.assertEqual(self.pa.encode('rough'), '6000')
        self.assertEqual(self.pa.encode('x-ray'), '2600')
        self.assertEqual(
            self.pa.encode('acetylcholine', max_length=-1), '234245'
        )
        self.assertEqual(self.pa.encode('rough', max_length=-1), '6')

        # Test wrapper
        self.assertEqual(sound_d('knight'), '5300')
예제 #3
0
 'pshp_soundex_first_ml8': PSHPSoundexFirst(max_length=8).encode,
 'pshp_soundex_last': PSHPSoundexLast().encode,
 'pshp_soundex_last_german': PSHPSoundexLast(german=True).encode,
 'pshp_soundex_last_ml8': PSHPSoundexLast(max_length=8).encode,
 'refined_soundex': RefinedSoundex().encode,
 'refined_soundex_vowels': RefinedSoundex(retain_vowels=True).encode,
 'refined_soundex_0pad_ml6': RefinedSoundex(zero_pad=True,
                                            max_length=6).encode,
 'reth_schek_phonetik': RethSchek().encode,
 'roger_root': RogerRoot().encode,
 'roger_root_nopad_ml8': RogerRoot(max_length=8, zero_pad=False).encode,
 'russell_index': RussellIndex().encode,
 'russell_index_alpha': RussellIndex().encode_alpha,
 'sfinxbis': SfinxBis().encode,
 'sfinxbis_ml6': SfinxBis(max_length=6).encode,
 'sound_d': SoundD().encode,
 'sound_d_ml8': SoundD(max_length=8).encode,
 'soundex': Soundex().encode,
 'soundex_reverse': Soundex(reverse=True).encode,
 'soundex_0pad_ml6': Soundex(zero_pad=True, max_length=6).encode,
 'soundex_special': Soundex(var='special').encode,
 'soundex_census': Soundex(var='Census').encode,
 'soundex_br': SoundexBR().encode,
 'spanish_metaphone': SpanishMetaphone().encode,
 'spanish_metaphone_modified': SpanishMetaphone(modified=True).encode,
 'spanish_metaphone_ml4': SpanishMetaphone(max_length=4).encode,
 'spfc': lambda _: spfc.encode('{0} {0}'.format(_)),
 'statistics_canada': StatisticsCanada().encode,
 'statistics_canada_ml8': StatisticsCanada(max_length=8).encode,
 'waahlin': Waahlin().encode,
 'waahlin_soundex': Waahlin(encoder=Soundex()).encode,
예제 #4
0
 RogerRoot().encode,
 'roger_root_nopad_ml8':
 RogerRoot(max_length=8, zero_pad=False).encode,
 'russell_index':
 russell.encode,
 'russell_index_num_to_alpha': (
     lambda _: russell._to_alpha(russell.encode(_))  # noqa: SF01
 ),
 'russell_index_alpha':
 russell.encode_alpha,
 'sfinxbis':
 lambda _: ', '.join(sfinxbis.encode(_)),
 'sfinxbis_ml6':
 lambda _: ', '.join(sfinxbis_6.encode(_)),
 'sound_d':
 SoundD().encode,
 'sound_d_ml8':
 SoundD(max_length=8).encode,
 'soundex':
 Soundex().encode,
 'soundex_reverse':
 Soundex(reverse=True).encode,
 'soundex_0pad_ml6':
 Soundex(zero_pad=True, max_length=6).encode,
 'soundex_special':
 Soundex(var='special').encode,
 'soundex_census':
 lambda _: ', '.join(soundex_census.encode(_)),
 'soundex_br':
 SoundexBR().encode,
 'spanish_metaphone':
예제 #5
0
nysiis = NYSIIS()
onca = ONCA()
parmar_kumbharana = ParmarKumbharana()
phonem = Phonem()
phonet = Phonet()
phonetic_spanish = PhoneticSpanish()
phonex = Phonex()
phonix = Phonix()
pshp_soundex_first = PSHPSoundexFirst()
pshp_soundex_last = PSHPSoundexLast()
refined_soundex = RefinedSoundex()
reth_schek = RethSchek()
roger_root = RogerRoot()
russell = RussellIndex()
sfinxbis = SfinxBis()
sound_d = SoundD()
soundex = Soundex()
soundex_br = SoundexBR()
spanish_metaphone = SpanishMetaphone()
spfc = SPFC()
statistics_canada = StatisticsCanada()

algorithms = {
    'russell_index':
    lambda _: str(russell.encode(_)),
    'russell_index_num_to_alpha':
    lambda _: russell._to_alpha(  # noqa: SF01
        russell.encode(_)),
    'russell_index_alpha':
    russell.encode_alpha,
    'soundex':