#DOCUMENTATION by cg
authorClaus Gittinger <cg@exept.de>
Thu, 03 Aug 2017 15:05:05 +0200
changeset 1675 af8e61132c06
parent 1674 2421dc17b2d5
child 1676 b0d3d44cd699
#DOCUMENTATION by cg class: RegressionTests::MetaphoneStringComparatorTest added: #test03_SomeCombinations changed: #test02_WellKnownResults
RegressionTests__MetaphoneStringComparatorTest.st
--- a/RegressionTests__MetaphoneStringComparatorTest.st	Thu Aug 03 15:04:30 2017 +0200
+++ b/RegressionTests__MetaphoneStringComparatorTest.st	Thu Aug 03 15:05:05 2017 +0200
@@ -55,11 +55,74 @@
 !
 
 test02_WellKnownResults
-    "tests regular soundex"
+    "tests some wellknown metaphone codes"
 
     #(
+        'a'         'A'
         'Miller'    'MLR'
+        'ch'        'X'
+
+        'ANASTHA'         'ANS0'
+        'DAVIS-CARTER'    'TFSKRTR'
+        'ESCARMANT'       'ESKRMNT'
+        'MERSEAL'         'MRSL'
+        'PIEURISSAINT'    'PRSNT'
+        'ROTMAN'          'RTMN' 
+        'SEAL'            'SL'   
+        'SPARR'           'SPR' 
+        'STARLEPER'       'STRLPR'
+        'THRASH'          '0RX' 
+
+        'LOGGING'         'LKNK'
+        'LOGIC'           'LJK'
+        'JUDGES'          'JJS'
+
+        'SHOOS'           'XS'
+        'SHOES'           'XS'
+
+        'OTTO'            'OT'
+        'ERIC'            'ERK'
+        'DAVE'            'TF'
+        'CATHERINE'       'K0RN'
+        'KATHERINE'       'K0RN'
+        'AUBREY'          'ABR'
+        'BRYAN'           'BRYN'
+        'BRYCE'           'BRS'
+        'STEVEN'          'STFN'
+        'HEIDI'           'HT'
+        'AUTO'            'AT'
+        'MAURICE'         'MRS'
+        'RANDY'           'RNT'
+        'CAMBRILLO'       'KMBRL'
+        'BRIAN'           'BRN'
+        'RAY'             'R'
+        'GEOFF'           'JF'
+        'BOB'             'BB'
+
+        'AHA'             'AH'
+        'AAH'             'A'
+
+        'PAUL'            'PL'
+        'BATTLEY'         'BTL'
+        'WROTE'           'RT'
+        'THIS'            '0S'
+        
+        'MCCALL'          'MKL'
+        'MCCROREY'        'MKRR'
+
+        'Sch'       'SX'
+        'Schi'      'SX'
         'Schmid'    'SXMT'
+        'Schmidt'   'SXMTT'     "/ bad, but that is how metaphone works
+        'Schmit'    'SXMT'
+        'Schmitt'   'SXMDT'
+
+        'CHUTE'           'XT'
+        'SCHEVEL'         'SXFL'
+        'SCHROM'          'SXRM'  
+        'SCHUSS'          'SXS'
+        'RICHARD'         'RXRT'
+
     ) pairWiseDo:[:word :expected |   
         |whatIGot|
 
@@ -68,7 +131,17 @@
     ].
 
     "Created: / 27-07-2017 / 15:14:59 / cg"
-    "Modified: / 02-08-2017 / 13:05:56 / cg"
+    "Modified (comment): / 03-08-2017 / 14:57:10 / cg"
+!
+
+test03_SomeCombinations
+    |code|
+
+    "/ code := (sc phoneticStringsFor:'AAH') first.
+    code := (sc encode:'AAH').
+    self assert:( code = 'A').
+
+    "Created: / 03-08-2017 / 14:53:40 / cg"
 ! !
 
 !MetaphoneStringComparatorTest class methodsFor:'documentation'!