@@ -171,71 +171,71 @@ mod tests {
171171 #[ test]
172172 fn unescape_works ( ) {
173173 // Unchanged because no unescaping happens
174- assert_eq ! ( ue( b"" ) , "" . to_string ( ) ) ;
175- assert_eq ! ( ue( b"a" ) , "a" . to_string ( ) ) ;
176- assert_eq ! ( ue( b"ab" ) , "ab" . to_string ( ) ) ;
177- assert_eq ! ( ue( b"abc" ) , "abc" . to_string ( ) ) ;
178- assert_eq ! ( ue( b"a/c" ) , "a/c" . to_string ( ) ) ;
179- assert_eq ! ( ue( b"\x20 " ) , " " . to_string ( ) ) ; // first non-control character
180- assert_eq ! ( ue( b"\xF0 \x9F \x91 \x8F " ) , "👏" . to_string ( ) ) ; // U+1F44F
174+ assert_eq ! ( ue( b"" ) , "" ) ;
175+ assert_eq ! ( ue( b"a" ) , "a" ) ;
176+ assert_eq ! ( ue( b"ab" ) , "ab" ) ;
177+ assert_eq ! ( ue( b"abc" ) , "abc" ) ;
178+ assert_eq ! ( ue( b"a/c" ) , "a/c" ) ;
179+ assert_eq ! ( ue( b"\x20 " ) , " " ) ; // first non-control character
180+ assert_eq ! ( ue( b"\xF0 \x9F \x91 \x8F " ) , "👏" ) ; // U+1F44F
181181
182182 // even number of backslashes
183- assert_eq ! ( ue( br#"\\"# ) , "\\ " . to_string ( ) ) ;
184- assert_eq ! ( ue( br#"\\\\"# ) , "\\ \\ " . to_string ( ) ) ;
185- assert_eq ! ( ue( br#"\\\\\\"# ) , "\\ \\ \\ " . to_string ( ) ) ;
186- assert_eq ! ( ue( br#"\\\\\\\\"# ) , "\\ \\ \\ \\ " . to_string ( ) ) ;
183+ assert_eq ! ( ue( br#"\\"# ) , "\\ " ) ;
184+ assert_eq ! ( ue( br#"\\\\"# ) , "\\ \\ " ) ;
185+ assert_eq ! ( ue( br#"\\\\\\"# ) , "\\ \\ \\ " ) ;
186+ assert_eq ! ( ue( br#"\\\\\\\\"# ) , "\\ \\ \\ \\ " ) ;
187187
188188 // The 8 short escape sequences \", \\, \/, \b, \f, \n, \r, \t (alone, start, end, middle)
189- assert_eq ! ( ue( br#"\""# ) , "\" " . to_string ( ) ) ;
190- assert_eq ! ( ue( br#"\\"# ) , "\\ " . to_string ( ) ) ;
191- assert_eq ! ( ue( br#"\/"# ) , "/" . to_string ( ) ) ;
192- assert_eq ! ( ue( br#"\b"# ) , "\x08 " . to_string ( ) ) ;
193- assert_eq ! ( ue( br#"\f"# ) , "\x0C " . to_string ( ) ) ;
194- assert_eq ! ( ue( br#"\n"# ) , "\n " . to_string ( ) ) ;
195- assert_eq ! ( ue( br#"\r"# ) , "\r " . to_string ( ) ) ;
196- assert_eq ! ( ue( br#"\t"# ) , "\t " . to_string ( ) ) ;
197- assert_eq ! ( ue( br#"\"abc"# ) , "\" abc" . to_string ( ) ) ;
198- assert_eq ! ( ue( br#"\\abc"# ) , "\\ abc" . to_string ( ) ) ;
199- assert_eq ! ( ue( br#"\/abc"# ) , "/abc" . to_string ( ) ) ;
200- assert_eq ! ( ue( br#"\babc"# ) , "\x08 abc" . to_string ( ) ) ;
201- assert_eq ! ( ue( br#"\fabc"# ) , "\x0C abc" . to_string ( ) ) ;
202- assert_eq ! ( ue( br#"\nabc"# ) , "\n abc" . to_string ( ) ) ;
203- assert_eq ! ( ue( br#"\rabc"# ) , "\r abc" . to_string ( ) ) ;
204- assert_eq ! ( ue( br#"\tabc"# ) , "\t abc" . to_string ( ) ) ;
205- assert_eq ! ( ue( br#"abc\""# ) , "abc\" " . to_string ( ) ) ;
206- assert_eq ! ( ue( br#"abc\\"# ) , "abc\\ " . to_string ( ) ) ;
207- assert_eq ! ( ue( br#"abc\/"# ) , "abc/" . to_string ( ) ) ;
208- assert_eq ! ( ue( br#"abc\b"# ) , "abc\x08 " . to_string ( ) ) ;
209- assert_eq ! ( ue( br#"abc\f"# ) , "abc\x0C " . to_string ( ) ) ;
210- assert_eq ! ( ue( br#"abc\n"# ) , "abc\n " . to_string ( ) ) ;
211- assert_eq ! ( ue( br#"abc\r"# ) , "abc\r " . to_string ( ) ) ;
212- assert_eq ! ( ue( br#"abc\t"# ) , "abc\t " . to_string ( ) ) ;
213- assert_eq ! ( ue( br#"xy\"abc"# ) , "xy\" abc" . to_string ( ) ) ;
214- assert_eq ! ( ue( br#"xy\\abc"# ) , "xy\\ abc" . to_string ( ) ) ;
215- assert_eq ! ( ue( br#"xy\/abc"# ) , "xy/abc" . to_string ( ) ) ;
216- assert_eq ! ( ue( br#"xy\babc"# ) , "xy\x08 abc" . to_string ( ) ) ;
217- assert_eq ! ( ue( br#"xy\fabc"# ) , "xy\x0C abc" . to_string ( ) ) ;
218- assert_eq ! ( ue( br#"xy\nabc"# ) , "xy\n abc" . to_string ( ) ) ;
219- assert_eq ! ( ue( br#"xy\rabc"# ) , "xy\r abc" . to_string ( ) ) ;
220- assert_eq ! ( ue( br#"xy\tabc"# ) , "xy\t abc" . to_string ( ) ) ;
189+ assert_eq ! ( ue( br#"\""# ) , "\" " ) ;
190+ assert_eq ! ( ue( br#"\\"# ) , "\\ " ) ;
191+ assert_eq ! ( ue( br#"\/"# ) , "/" ) ;
192+ assert_eq ! ( ue( br#"\b"# ) , "\x08 " ) ;
193+ assert_eq ! ( ue( br#"\f"# ) , "\x0C " ) ;
194+ assert_eq ! ( ue( br#"\n"# ) , "\n " ) ;
195+ assert_eq ! ( ue( br#"\r"# ) , "\r " ) ;
196+ assert_eq ! ( ue( br#"\t"# ) , "\t " ) ;
197+ assert_eq ! ( ue( br#"\"abc"# ) , "\" abc" ) ;
198+ assert_eq ! ( ue( br#"\\abc"# ) , "\\ abc" ) ;
199+ assert_eq ! ( ue( br#"\/abc"# ) , "/abc" ) ;
200+ assert_eq ! ( ue( br#"\babc"# ) , "\x08 abc" ) ;
201+ assert_eq ! ( ue( br#"\fabc"# ) , "\x0C abc" ) ;
202+ assert_eq ! ( ue( br#"\nabc"# ) , "\n abc" ) ;
203+ assert_eq ! ( ue( br#"\rabc"# ) , "\r abc" ) ;
204+ assert_eq ! ( ue( br#"\tabc"# ) , "\t abc" ) ;
205+ assert_eq ! ( ue( br#"abc\""# ) , "abc\" " ) ;
206+ assert_eq ! ( ue( br#"abc\\"# ) , "abc\\ " ) ;
207+ assert_eq ! ( ue( br#"abc\/"# ) , "abc/" ) ;
208+ assert_eq ! ( ue( br#"abc\b"# ) , "abc\x08 " ) ;
209+ assert_eq ! ( ue( br#"abc\f"# ) , "abc\x0C " ) ;
210+ assert_eq ! ( ue( br#"abc\n"# ) , "abc\n " ) ;
211+ assert_eq ! ( ue( br#"abc\r"# ) , "abc\r " ) ;
212+ assert_eq ! ( ue( br#"abc\t"# ) , "abc\t " ) ;
213+ assert_eq ! ( ue( br#"xy\"abc"# ) , "xy\" abc" ) ;
214+ assert_eq ! ( ue( br#"xy\\abc"# ) , "xy\\ abc" ) ;
215+ assert_eq ! ( ue( br#"xy\/abc"# ) , "xy/abc" ) ;
216+ assert_eq ! ( ue( br#"xy\babc"# ) , "xy\x08 abc" ) ;
217+ assert_eq ! ( ue( br#"xy\fabc"# ) , "xy\x0C abc" ) ;
218+ assert_eq ! ( ue( br#"xy\nabc"# ) , "xy\n abc" ) ;
219+ assert_eq ! ( ue( br#"xy\rabc"# ) , "xy\r abc" ) ;
220+ assert_eq ! ( ue( br#"xy\tabc"# ) , "xy\t abc" ) ;
221221
222222 // Short escape sequences mixed
223- assert_eq ! ( ue( br#" \" \" \" "# ) , " \" \" \" " . to_string ( ) ) ;
224- assert_eq ! ( ue( br#" \t \n \r "# ) , " \t \n \r " . to_string ( ) ) ;
225- assert_eq ! ( ue( br#" \"\"\" "# ) , " \" \" \" " . to_string ( ) ) ;
226- assert_eq ! ( ue( br#" \t\n\r "# ) , " \t \n \r " . to_string ( ) ) ;
223+ assert_eq ! ( ue( br#" \" \" \" "# ) , " \" \" \" " ) ;
224+ assert_eq ! ( ue( br#" \t \n \r "# ) , " \t \n \r " ) ;
225+ assert_eq ! ( ue( br#" \"\"\" "# ) , " \" \" \" " ) ;
226+ assert_eq ! ( ue( br#" \t\n\r "# ) , " \t \n \r " ) ;
227227
228228 // Unicode
229- assert_eq ! ( ue( br#" \u0001 "# ) , " \u{0001} " . to_string ( ) ) ;
230- assert_eq ! ( ue( br#" \u0010 "# ) , " \u{0010} " . to_string ( ) ) ;
231- assert_eq ! ( ue( br#" \u0100 "# ) , " \u{0100} " . to_string ( ) ) ;
232- assert_eq ! ( ue( br#" \u1000 "# ) , " \u{1000} " . to_string ( ) ) ;
233- assert_eq ! ( ue( br#" \uABCD "# ) , " \u{abcd} " . to_string ( ) ) ;
234- assert_eq ! ( ue( br#" \uabcd "# ) , " \u{abcd} " . to_string ( ) ) ;
235- assert_eq ! ( ue( br#" \uAbCd "# ) , " \u{abcd} " . to_string ( ) ) ;
236- assert_eq ! ( ue( br#" \uABCDefg "# ) , " \u{abcd} efg " . to_string ( ) ) ;
237- assert_eq ! ( ue( br#" \uabcdefg "# ) , " \u{abcd} efg " . to_string ( ) ) ;
238- assert_eq ! ( ue( br#" \uAbCdefg "# ) , " \u{abcd} efg " . to_string ( ) ) ;
229+ assert_eq ! ( ue( br#" \u0001 "# ) , " \u{0001} " ) ;
230+ assert_eq ! ( ue( br#" \u0010 "# ) , " \u{0010} " ) ;
231+ assert_eq ! ( ue( br#" \u0100 "# ) , " \u{0100} " ) ;
232+ assert_eq ! ( ue( br#" \u1000 "# ) , " \u{1000} " ) ;
233+ assert_eq ! ( ue( br#" \uABCD "# ) , " \u{abcd} " ) ;
234+ assert_eq ! ( ue( br#" \uabcd "# ) , " \u{abcd} " ) ;
235+ assert_eq ! ( ue( br#" \uAbCd "# ) , " \u{abcd} " ) ;
236+ assert_eq ! ( ue( br#" \uABCDefg "# ) , " \u{abcd} efg " ) ;
237+ assert_eq ! ( ue( br#" \uabcdefg "# ) , " \u{abcd} efg " ) ;
238+ assert_eq ! ( ue( br#" \uAbCdefg "# ) , " \u{abcd} efg " ) ;
239239 }
240240
241241 #[ test]
@@ -304,11 +304,11 @@ mod tests {
304304
305305 #[ test]
306306 fn unescape_works_for_surrogate_pairs ( ) {
307- assert_eq ! ( ue( br#" \uD83D\uDC4F "# ) , " \u{1F44F} " . to_string ( ) ) ;
308- assert_eq ! ( ue( br#" \uD83D\uDC4F\uD83D\uDC4F "# ) , " 👏👏 " . to_string ( ) ) ;
307+ assert_eq ! ( ue( br#" \uD83D\uDC4F "# ) , " \u{1F44F} " ) ;
308+ assert_eq ! ( ue( br#" \uD83D\uDC4F\uD83D\uDC4F "# ) , " 👏👏 " ) ;
309309
310- assert_eq ! ( ue( br#" \uD83E\uDD7A "# ) , " \u{1F97A} " . to_string ( ) ) ;
311- assert_eq ! ( ue( br#" \uD83E\uDD7A\uD83D\uDC4F "# ) , " 🥺👏 " . to_string ( ) ) ;
310+ assert_eq ! ( ue( br#" \uD83E\uDD7A "# ) , " \u{1F97A} " ) ;
311+ assert_eq ! ( ue( br#" \uD83E\uDD7A\uD83D\uDC4F "# ) , " 🥺👏 " ) ;
312312 }
313313
314314 #[ test]
0 commit comments