@@ -116,7 +116,9 @@ def test_eval_str_invalid_escape(self):
116116 warnings .simplefilter ('always' , category = SyntaxWarning )
117117 eval ("'''\n \\ z'''" )
118118 self .assertEqual (len (w ), 1 )
119- self .assertEqual (str (w [0 ].message ), r"invalid escape sequence '\z'" )
119+ self .assertEqual (str (w [0 ].message ), r'"\z" is an invalid escape sequence. '
120+ r'Such sequences will not work in the future. '
121+ r'Did you mean "\\z"? A raw string is also an option.' )
120122 self .assertEqual (w [0 ].filename , '<string>' )
121123 self .assertEqual (w [0 ].lineno , 1 )
122124
@@ -126,7 +128,8 @@ def test_eval_str_invalid_escape(self):
126128 eval ("'''\n \\ z'''" )
127129 exc = cm .exception
128130 self .assertEqual (w , [])
129- self .assertEqual (exc .msg , r"invalid escape sequence '\z'" )
131+ self .assertEqual (exc .msg , r'"\z" is an invalid escape sequence. '
132+ r'Did you mean "\\z"? A raw string is also an option.' )
130133 self .assertEqual (exc .filename , '<string>' )
131134 self .assertEqual (exc .lineno , 1 )
132135 self .assertEqual (exc .offset , 1 )
@@ -153,7 +156,9 @@ def test_eval_str_invalid_octal_escape(self):
153156 eval ("'''\n \\ 407'''" )
154157 self .assertEqual (len (w ), 1 )
155158 self .assertEqual (str (w [0 ].message ),
156- r"invalid octal escape sequence '\407'" )
159+ r'"\407" is an invalid octal escape sequence. '
160+ r'Such sequences will not work in the future. '
161+ r'Did you mean "\\407"? A raw string is also an option.' )
157162 self .assertEqual (w [0 ].filename , '<string>' )
158163 self .assertEqual (w [0 ].lineno , 1 )
159164
@@ -163,7 +168,8 @@ def test_eval_str_invalid_octal_escape(self):
163168 eval ("'''\n \\ 407'''" )
164169 exc = cm .exception
165170 self .assertEqual (w , [])
166- self .assertEqual (exc .msg , r"invalid octal escape sequence '\407'" )
171+ self .assertEqual (exc .msg , r'"\407" is an invalid octal escape sequence. '
172+ r'Did you mean "\\407"? A raw string is also an option.' )
167173 self .assertEqual (exc .filename , '<string>' )
168174 self .assertEqual (exc .lineno , 1 )
169175 self .assertEqual (exc .offset , 1 )
@@ -205,7 +211,9 @@ def test_eval_bytes_invalid_escape(self):
205211 warnings .simplefilter ('always' , category = SyntaxWarning )
206212 eval ("b'''\n \\ z'''" )
207213 self .assertEqual (len (w ), 1 )
208- self .assertEqual (str (w [0 ].message ), r"invalid escape sequence '\z'" )
214+ self .assertEqual (str (w [0 ].message ), r'"\z" is an invalid escape sequence. '
215+ r'Such sequences will not work in the future. '
216+ r'Did you mean "\\z"? A raw string is also an option.' )
209217 self .assertEqual (w [0 ].filename , '<string>' )
210218 self .assertEqual (w [0 ].lineno , 1 )
211219
@@ -215,7 +223,8 @@ def test_eval_bytes_invalid_escape(self):
215223 eval ("b'''\n \\ z'''" )
216224 exc = cm .exception
217225 self .assertEqual (w , [])
218- self .assertEqual (exc .msg , r"invalid escape sequence '\z'" )
226+ self .assertEqual (exc .msg , r'"\z" is an invalid escape sequence. '
227+ r'Did you mean "\\z"? A raw string is also an option.' )
219228 self .assertEqual (exc .filename , '<string>' )
220229 self .assertEqual (exc .lineno , 1 )
221230
@@ -228,8 +237,9 @@ def test_eval_bytes_invalid_octal_escape(self):
228237 warnings .simplefilter ('always' , category = SyntaxWarning )
229238 eval ("b'''\n \\ 407'''" )
230239 self .assertEqual (len (w ), 1 )
231- self .assertEqual (str (w [0 ].message ),
232- r"invalid octal escape sequence '\407'" )
240+ self .assertEqual (str (w [0 ].message ), r'"\407" is an invalid octal escape sequence. '
241+ r'Such sequences will not work in the future. '
242+ r'Did you mean "\\407"? A raw string is also an option.' )
233243 self .assertEqual (w [0 ].filename , '<string>' )
234244 self .assertEqual (w [0 ].lineno , 1 )
235245
@@ -239,7 +249,8 @@ def test_eval_bytes_invalid_octal_escape(self):
239249 eval ("b'''\n \\ 407'''" )
240250 exc = cm .exception
241251 self .assertEqual (w , [])
242- self .assertEqual (exc .msg , r"invalid octal escape sequence '\407'" )
252+ self .assertEqual (exc .msg , r'"\407" is an invalid octal escape sequence. '
253+ r'Did you mean "\\407"? A raw string is also an option.' )
243254 self .assertEqual (exc .filename , '<string>' )
244255 self .assertEqual (exc .lineno , 1 )
245256
0 commit comments