From: Eh2406 Date: Thu, 22 Feb 2018 17:55:17 +0000 (-0500) Subject: this test is slow because it runs the same searches repeatedly X-Git-Tag: archive/raspbian/0.35.0-2+rpi1~3^2^2^2^2^2^2^2~22^2~2^2~46^2~9 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=7515d2d9c8598372b85973b1efe59d836a6cfdd0;p=cargo.git this test is slow because it runs the same searches repeatedly --- diff --git a/tests/testsuite/resolve.rs b/tests/testsuite/resolve.rs index 735e216cb..05e249189 100644 --- a/tests/testsuite/resolve.rs +++ b/tests/testsuite/resolve.rs @@ -468,6 +468,34 @@ fn resolving_with_constrained_sibling_backtrack_parent() { ("constrained", "1.0.0")]))); } +#[test] +fn resolving_with_many_equivalent_backtracking() { + let mut reglist = vec![ + pkg!(("level0", "1.0.0")), + ]; + + const DEPTH: usize = 10; + const BRANCHING_FACTOR: usize = 5; + + for l in 0..DEPTH { + let name = format!("level{}", l); + let next = format!("level{}", l + 1); + for i in 1..BRANCHING_FACTOR { + let vsn = format!("1.0.{}", i); + reglist.push(pkg!((name.as_str(), vsn.as_str()) => [dep_req(next.as_str(), "*")])); + } + } + + let reg = registry(reglist); + + let res = resolve(&pkg_id("root"), vec![ + dep_req("level0", "*"), + ], ®).unwrap(); + + assert_that(&res, contains(names(&[("root", "1.0.0"), + ("level0", "1.0.0")]))); +} + #[test] fn resolving_with_constrained_sibling_backtrack_activation() { // It makes sense to resolve most-constrained deps first, but