def test_translate_2345_to_1234_no_X_in_mask(self): tp = TranslationPattern(pattern='2XXX', css=['translated'], called_party_mask='1234') translated, css = tp.translate(digits='2345', css='in') self.assertEqual(translated, '1234') self.assertEqual(css, 'translated')
def test_missing_dot(self): tp = TranslationPattern(pattern='00049!', css=['translated'], discard_digits='PreDot', called_party_prefix_digits='+', use_originators_calling_search_space=True) self.assertRaises(TranslationError, lambda: tp.translate(digits='000491', css='in'))
def test_translate_pre_dot(self): tp = TranslationPattern(pattern='000.49!', css=['translated'], discard_digits='PreDot', use_originators_calling_search_space=True) translated, css = tp.translate(digits='000491', css='in') self.assertEqual(translated, '491') self.assertEqual(css, 'in')
def test_translate_ESN_to_e164(self): tp = TranslationPattern(pattern='84969XXX', css=['translated'], called_party_mask='+4961007739XXX', use_originators_calling_search_space=True) translated, css = tp.translate(digits='84969764', css='in') self.assertEqual(translated, '+4961007739764') self.assertEqual(css, 'in')
def test_transform_wildcard_digit_string(self): tp = TranslationPattern(pattern='1.234XX', css=['translated'], discard_digits='PreDot', called_party_mask='XXX') translated, css = tp.translate(digits='123X[14-69]X', css='in') self.assertEqual(css, 'translated') self.assertEqual(translated, 'X[14569]X')
def test_pre_dot_with_mask(self): tp = TranslationPattern(pattern='000.49!', css=['translated'], discard_digits='PreDot', called_party_mask='XX', use_originators_calling_search_space=False) translated, css = tp.translate(digits='000491', css='in') self.assertEqual('91', translated) self.assertEqual(css, 'translated')
def setUpClass(cls) -> None: cls.da_tree = DaNode() for dn in cls.DNS: dn_pattern = DnPattern(pattern=dn, partition='DN') cls.da_tree.add_pattern(dn_pattern) for partition, pattern, called_party_transform in cls.TPS: tp = TranslationPattern(pattern=pattern, partition=partition, use_originators_calling_search_space=True, called_party_mask=called_party_transform) cls.da_tree.add_pattern(tp) for partition, pattern in cls.RPS: rp = RoutePattern(pattern=pattern, partition=partition) cls.da_tree.add_pattern(rp)