def test_max_length(self):
     regex = r'A+B'
     self.assertFalse(is_fuzzy_match('AA', regex, max_length=2))
     self.assertTrue(is_fuzzy_match('AB', regex, max_length=2))
     self.assertTrue(is_fuzzy_match('A', regex, max_length=2))
 def test_false(self):
     regex = 'AAA'
     self.assertFalse(is_fuzzy_match('B', regex))
     self.assertFalse(is_fuzzy_match('BB', regex))
     self.assertFalse(is_fuzzy_match('BBB', regex))
     self.assertFalse(is_fuzzy_match('AB', regex))
     self.assertFalse(is_fuzzy_match('BA', regex))
     self.assertFalse(is_fuzzy_match('AAB', regex))
     regex = 'A{3}'
     self.assertFalse(is_fuzzy_match('B', regex))
     self.assertFalse(is_fuzzy_match('BB', regex))
     self.assertFalse(is_fuzzy_match('BBB', regex))
     regex = '[^ABC]{3}'
     self.assertFalse(is_fuzzy_match('B', regex))
     self.assertFalse(is_fuzzy_match('XXA', regex))
     self.assertFalse(is_fuzzy_match('AXX', regex))
     self.assertFalse(is_fuzzy_match('ABC', regex))
 def test_true(self):
     regex = 'AAA'
     self.assertTrue(is_fuzzy_match('A', regex))
     self.assertTrue(is_fuzzy_match('AA', regex))
     self.assertTrue(is_fuzzy_match('AAA', regex))
     regex = 'A{3}'
     self.assertTrue(is_fuzzy_match('A', regex))
     self.assertTrue(is_fuzzy_match('AA', regex))
     self.assertTrue(is_fuzzy_match('AAA', regex))
     regex = 'A\sA'
     self.assertTrue(is_fuzzy_match('A', regex))
     self.assertTrue(is_fuzzy_match('A ', regex))
     self.assertTrue(is_fuzzy_match('A A', regex))
     regex = 'AA\.'
     self.assertTrue(is_fuzzy_match('A', regex))
     self.assertTrue(is_fuzzy_match('AA', regex))
     self.assertTrue(is_fuzzy_match('AA.', regex))
     regex = '[^ABC]{3}'
     self.assertTrue(is_fuzzy_match('X', regex))
     self.assertTrue(is_fuzzy_match('XX', regex))
     self.assertTrue(is_fuzzy_match('XXX', regex))
 def test_max_length(self):
     regex = r'A+B'
     self.assertFalse(is_fuzzy_match('AA', regex, max_length=2))
     self.assertTrue(is_fuzzy_match('AB', regex, max_length=2))
     self.assertTrue(is_fuzzy_match('A', regex, max_length=2))
 def test_false(self):
     regex = 'AAA'
     self.assertFalse(is_fuzzy_match('B', regex))
     self.assertFalse(is_fuzzy_match('BB', regex))
     self.assertFalse(is_fuzzy_match('BBB', regex))
     self.assertFalse(is_fuzzy_match('AB', regex))
     self.assertFalse(is_fuzzy_match('BA', regex))
     self.assertFalse(is_fuzzy_match('AAB', regex))
     regex = 'A{3}'
     self.assertFalse(is_fuzzy_match('B', regex))
     self.assertFalse(is_fuzzy_match('BB', regex))
     self.assertFalse(is_fuzzy_match('BBB', regex))
     regex = '[^ABC]{3}'
     self.assertFalse(is_fuzzy_match('B', regex))
     self.assertFalse(is_fuzzy_match('XXA', regex))
     self.assertFalse(is_fuzzy_match('AXX', regex))
     self.assertFalse(is_fuzzy_match('ABC', regex))
 def test_true(self):
     regex = 'AAA'
     self.assertTrue(is_fuzzy_match('A', regex))
     self.assertTrue(is_fuzzy_match('AA', regex))
     self.assertTrue(is_fuzzy_match('AAA', regex))
     regex = 'A{3}'
     self.assertTrue(is_fuzzy_match('A', regex))
     self.assertTrue(is_fuzzy_match('AA', regex))
     self.assertTrue(is_fuzzy_match('AAA', regex))
     regex = 'A\sA'
     self.assertTrue(is_fuzzy_match('A', regex))
     self.assertTrue(is_fuzzy_match('A ', regex))
     self.assertTrue(is_fuzzy_match('A A', regex))
     regex = 'AA\.'
     self.assertTrue(is_fuzzy_match('A', regex))
     self.assertTrue(is_fuzzy_match('AA', regex))
     self.assertTrue(is_fuzzy_match('AA.', regex))
     regex = '[^ABC]{3}'
     self.assertTrue(is_fuzzy_match('X', regex))
     self.assertTrue(is_fuzzy_match('XX', regex))
     self.assertTrue(is_fuzzy_match('XXX', regex))