From bf9e5f073cb5da03e1605d02b7b9d68aa8c47631 Mon Sep 17 00:00:00 2001 From: amigin Date: Wed, 27 Mar 2024 12:29:09 +0200 Subject: [PATCH] Fixed encode_to_url_string_and_copy --- src/url_utils.rs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/url_utils.rs b/src/url_utils.rs index f6cd06d..1701ce6 100644 --- a/src/url_utils.rs +++ b/src/url_utils.rs @@ -34,7 +34,7 @@ pub fn decode_from_url_string(src: &str) -> String { if escape_pos == 0 { escape0 = c as u8; escape_pos += 1; - } else if escape_pos == 0 { + } else if escape_pos == 1 { escape_pos += 1; let c = decode_url_escape(escape0, c as u8); result.push(c); @@ -178,3 +178,19 @@ lazy_static! { .copied() .collect(); } + +#[cfg(test)] +mod tests { + + #[test] + fn test_from_real_life() { + let src = "4%2F0AeaYSHA_pv6LYFSy9QdDASiSdr4X53iOaoo9ZJotKi536ELdyaLNqbsaQ0sjsTE9yuhhdQ"; + + let result = super::decode_from_url_string(src); + + assert_eq!( + result, + "4/0AeaYSHA_pv6LYFSy9QdDASiSdr4X53iOaoo9ZJotKi536ELdyaLNqbsaQ0sjsTE9yuhhdQ" + ); + } +}