comparison sat/plugins/plugin_xep_0106.py @ 3450:66c4fc1f7c30

plugin XEP-0106: log rejected value when escaping fails.
author Goffi <goffi@goffi.org>
date Fri, 11 Dec 2020 17:49:44 +0100
parents 559a625a236b
children be6d91572633
comparison
equal deleted inserted replaced
3449:893582c2d983 3450:66c4fc1f7c30
85 @return (unicode): unescaped text 85 @return (unicode): unescaped text
86 @raise ValueError: text can't be unescaped 86 @raise ValueError: text can't be unescaped
87 """ 87 """
88 if not escaped or escaped.startswith(r'\27') or escaped.endswith(r'\27'): 88 if not escaped or escaped.startswith(r'\27') or escaped.endswith(r'\27'):
89 raise ValueError("escaped value must not be empty, or start or end with a " 89 raise ValueError("escaped value must not be empty, or start or end with a "
90 "whitespace") 90 f"whitespace: rejected value is {escaped!r}")
91 unescaped = [] 91 unescaped = []
92 idx = 0 92 idx = 0
93 while idx < len(escaped): 93 while idx < len(escaped):
94 char_seq = escaped[idx:idx+3] 94 char_seq = escaped[idx:idx+3]
95 if char_seq in self.reverse_map: 95 if char_seq in self.reverse_map: