diff --git a/gix-url/tests/fixtures/fuzzed/very-long-abort2.url b/gix-url/tests/fixtures/fuzzed/very-long-abort2.url new file mode 100644 index 00000000000..3a98ea136ae --- /dev/null +++ b/gix-url/tests/fixtures/fuzzed/very-long-abort2.url @@ -0,0 +1 @@ +ws:// . ݆ 􊘵 %55 . / \ No newline at end of file diff --git a/gix-url/tests/fuzzed.rs b/gix-url/tests/fuzzed.rs index b8c5ac43bea..08fb8c5350e 100644 --- a/gix-url/tests/fuzzed.rs +++ b/gix-url/tests/fuzzed.rs @@ -5,18 +5,20 @@ use std::time::Duration; #[test] #[cfg_attr(debug_assertions, ignore = "fails due to integer overflow")] fn abort_unfixed_in_debug_mode() { - let name = "very-long-abort"; - let base = Path::new("tests").join("fixtures").join("fuzzed"); - let location = base.join(Path::new(name).with_extension("url")); - let url = std::fs::read(&location).unwrap(); - let start = std::time::Instant::now(); - gix_url::parse(url.as_bstr()).ok(); - assert!( - start.elapsed() < Duration::from_millis(100), - "URL at '{}' parsed too slowly, took {:.00}s", - location.display(), - start.elapsed().as_secs_f32() - ); + for name in ["very-long-abort2", "very-long-abort"] { + let base = Path::new("tests").join("fixtures").join("fuzzed"); + let location = base.join(Path::new(name).with_extension("url")); + let url = std::fs::read(&location).unwrap(); + let start = std::time::Instant::now(); + dbg!(name); + gix_url::parse(url.as_bstr()).ok(); + assert!( + start.elapsed() < Duration::from_millis(100), + "URL at '{}' parsed too slowly, took {:.00}s", + location.display(), + start.elapsed().as_secs_f32() + ); + } } #[test]