def test_valid_input(self): """Algorithm should return correct values under valid input""" self.assertAlmostEqual(fuzzycomp.jaro_winkler("MARTHA", "MARHTA"), 0.961, places=3) self.assertAlmostEqual(fuzzycomp.jaro_winkler("DWAYNE", "DUANE"), 0.84, places=3) self.assertAlmostEqual(fuzzycomp.jaro_winkler("DIXON", "DICKSONX"), 0.813, places=3)
def test_iterable_input(self): """Function should raise ValueError if passed non string input""" self.assertAlmostEqual(fuzzycomp.jaro_winkler( ["M", "A", "R", "T", "H", "A"], ["M", "A", "R", "H", "T", "A"]), 0.961, places=3) self.assertAlmostEqual(fuzzycomp.jaro_winkler( ["D", "W", "A", "Y", "N", "E"], ["D", "U", "A", "N", "E"]), 0.84, places=3) self.assertAlmostEqual( fuzzycomp.jaro_winkler(["D", "I", "X", "O", "N"], ["D", "I", "C", "K", "S", "O", "N", "X"]), 0.813, places=3) self.assertAlmostEqual(fuzzycomp.jaro_winkler( ("M", "A", "R", "T", "H", "A"), ("M", "A", "R", "H", "T", "A")), 0.961, places=3) self.assertAlmostEqual(fuzzycomp.jaro_winkler( ("D", "W", "A", "Y", "N", "E"), ("D", "U", "A", "N", "E")), 0.84, places=3) self.assertAlmostEqual(fuzzycomp.jaro_winkler( ("D", "I", "X", "O", "N"), ("D", "I", "C", "K", "S", "O", "N", "X")), 0.813, places=3)
def test_iterable_input(self): """Function should raise ValueError if passed non string input""" self.assertAlmostEqual( fuzzycomp.jaro_winkler(["M", "A", "R", "T", "H", "A"], ["M", "A", "R", "H", "T", "A"]), 0.961, places=3 ) self.assertAlmostEqual( fuzzycomp.jaro_winkler(["D", "W", "A", "Y", "N", "E"], ["D", "U", "A", "N", "E"]), 0.84, places=3 ) self.assertAlmostEqual( fuzzycomp.jaro_winkler(["D", "I", "X", "O", "N"], ["D", "I", "C", "K", "S", "O", "N", "X"]), 0.813, places=3 ) self.assertAlmostEqual( fuzzycomp.jaro_winkler(("M", "A", "R", "T", "H", "A"), ("M", "A", "R", "H", "T", "A")), 0.961, places=3 ) self.assertAlmostEqual( fuzzycomp.jaro_winkler(("D", "W", "A", "Y", "N", "E"), ("D", "U", "A", "N", "E")), 0.84, places=3 ) self.assertAlmostEqual( fuzzycomp.jaro_winkler(("D", "I", "X", "O", "N"), ("D", "I", "C", "K", "S", "O", "N", "X")), 0.813, places=3 )