class TestSeparatorsRegexRuler(object): #(TestRuler): def setUp(self): self.ruler = SeparatorsRegexRuler() super(TestSeparatorsRegexRuler, self).setUp() self.example06 = Example([ '(Botella.*P\.|P\..*Botella)', '(Solona.*B\.|B\..*Solsona)', '(A\..*Martinez-Arias|Martinez-Arias.*A\.)', '(J\.M\..*Nieto|Nieto.*J\.M\.)' ], [ u'P. Botella1, B. Solsona1, ' 'A. Martinez-Arias2 and J.M. ' 'Lopez Nieto1' ]) self.example07 = Example([ '(Cabre.*L\.|L\..*Cabre)', '(Mancebo.*J\.|J\..*Mancebo)', '(J\..*Solsona|Solsona.*J\.)' ], u'L. Cabre1, J. Mancebo2, J. F. Solsona3, ' ' and the Bioethics Working ' 'Group of the SEMICYUC') def test_find_separators(self): pattern = '(.*)1, (.*)1, (.*)2 and (.*)1 ' separators = self.ruler._find_separators(pattern) self.failUnless(separators == ['1\\,\\ ', '2\\ and\\ ']) def test_merge_separators(self): sep01 = [u'1, ', u'2, ', u'2 and '] sep02 = [u'1, ', u'3, ', u'2 and '] expected = [u'1\\,\\ ', '2\\,\\ ', u'2\\ and\\ ', u'3\\,\\ '] result = self.ruler._merge_separators(sep01, sep02) self.failUnless(result == expected) def test_rule_example(self): rules = self.ruler._rule_example(self.example06) self.failUnless(len(rules) == 1) self.failUnless(len(rules[0].pattern) == 2) def test_rule(self): rules = self.ruler.rule([self.example06, self.example07]) self.failUnless(len(rules[0].pattern) == 3) pass
class TestSeparatorsRegexRuler(object):#(TestRuler): def setUp(self): self.ruler = SeparatorsRegexRuler() super(TestSeparatorsRegexRuler, self).setUp() self.example06 = Example(['(Botella.*P\.|P\..*Botella)', '(Solona.*B\.|B\..*Solsona)', '(A\..*Martinez-Arias|Martinez-Arias.*A\.)', '(J\.M\..*Nieto|Nieto.*J\.M\.)'], [u'P. Botella1, B. Solsona1, ' 'A. Martinez-Arias2 and J.M. ' 'Lopez Nieto1']) self.example07 = Example(['(Cabre.*L\.|L\..*Cabre)', '(Mancebo.*J\.|J\..*Mancebo)', '(J\..*Solsona|Solsona.*J\.)'], u'L. Cabre1, J. Mancebo2, J. F. Solsona3, ' ' and the Bioethics Working ' 'Group of the SEMICYUC') def test_find_separators(self): pattern = '(.*)1, (.*)1, (.*)2 and (.*)1 ' separators = self.ruler._find_separators(pattern) self.failUnless(separators == ['1\\,\\ ', '2\\ and\\ ']) def test_merge_separators(self): sep01 = [u'1, ', u'2, ', u'2 and '] sep02 = [u'1, ', u'3, ', u'2 and '] expected = [u'1\\,\\ ', '2\\,\\ ', u'2\\ and\\ ', u'3\\,\\ '] result = self.ruler._merge_separators(sep01, sep02) self.failUnless(result == expected) def test_rule_example(self): rules = self.ruler._rule_example(self.example06) self.failUnless(len(rules) == 1) self.failUnless(len(rules[0].pattern) == 2) def test_rule(self): rules = self.ruler.rule([self.example06, self.example07]) self.failUnless(len(rules[0].pattern) == 3) pass