def testTwoRules(self): rules = [('aap (.*)', '%s'), ('noot (.*)', '%s')] normalize = Normalize(rules) r1 = normalize.process('aap noot mies') self.assertEquals('noot mies', r1) r2 = normalize.process('noot aap boom') self.assertEquals('aap boom', r2)
def testTwoRules(self): rules = [('aap (.*)', '%s'), ('noot (.*)', '%s')] normalize = Normalize(rules) r1 = normalize.process('aap noot mies') self.assertEqual('noot mies', r1) r2 = normalize.process('noot aap boom') self.assertEqual('aap boom', r2)
def testRuleWithCustomProcessing(self): class Lower: def __init__(self, string): self.string = string def __mod__(self, values): return self.string % tuple(value.lower() for value in values) rules = [('b(OO)m', Lower('%s'))] normalize = Normalize(rules) r1 = normalize.process('bOOm') self.assertEquals('oo', r1)
def testRuleWithCustomProcessing(self): class Lower: def __init__(self, string): self.string = string def __mod__(self, values): return self.string % tuple(value.lower() for value in values) rules = [('b(OO)m', Lower('%s'))] normalize = Normalize(rules) r1 = normalize.process('bOOm') self.assertEqual('oo', r1)
def testNoMatchResult(self): normalize = Normalize([('(aap)', '%s')], noMatchResult=None) self.assertEquals(None, normalize.process('noot')) self.assertEquals('vuur', normalize.process('noot', noMatchResult='vuur'))
def testValueIfNoMatch(self): normalize = Normalize([('(aap)', '%s')]) self.assertEquals('noot', normalize.process('noot')) self.assertEquals(None, normalize.process('noot', noMatchResult=None))
def testRuleWithPostProcessing(self): rules = [('b(OO)m v(uu)r v(.*)s', '%s %s %s', (str.lower, str.upper, str.strip))] normalize = Normalize(rules) r1 = normalize.process('bOOm vuur v ii s') self.assertEquals('oo UU ii', r1)
def testNormalizeOneRule(self): rules = [(r'(\d{2,4}-\d{2}-\d{2}) (\d{2}:\d{2})', '%sT%s')] normalize = Normalize(rules) result = normalize.process('2006-11-28 19:00') self.assertEquals('2006-11-28T19:00', result)
def testNoMatchResult(self): normalize = Normalize([('(aap)', '%s')], noMatchResult=None) self.assertEqual(None, normalize.process('noot')) self.assertEqual('vuur', normalize.process('noot', noMatchResult='vuur'))
def testValueIfNoMatch(self): normalize = Normalize([('(aap)', '%s')]) self.assertEqual('noot', normalize.process('noot')) self.assertEqual(None, normalize.process('noot', noMatchResult=None))
def testRuleWithPostProcessing(self): rules = [('b(OO)m v(uu)r v(.*)s', '%s %s %s', (str.lower, str.upper, str.strip))] normalize = Normalize(rules) r1 = normalize.process('bOOm vuur v ii s') self.assertEqual('oo UU ii', r1)
def testNormalizeOneRule(self): rules = [(r'(\d{2,4}-\d{2}-\d{2}) (\d{2}:\d{2})', '%sT%s')] normalize = Normalize(rules) result = normalize.process('2006-11-28 19:00') self.assertEqual('2006-11-28T19:00', result)