Skip to content

Commit bf9754b

Browse files
committed
Update resolving_with_sys_crates tests
1 parent 016dc70 commit bf9754b

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

crates/resolver-tests/tests/resolve.rs

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -790,6 +790,34 @@ fn resolving_with_sys_crates() {
790790

791791
let res = resolve(vec![dep_req("d", "1"), dep_req("r", "1")], &reg).unwrap();
792792

793+
assert_same(
794+
&res,
795+
&names(&[
796+
("root", "1.0.0"),
797+
("d", "1.0.0"),
798+
("r", "1.0.0"),
799+
("l-sys", "0.9.1"),
800+
("l", "0.9.1"),
801+
]),
802+
);
803+
}
804+
805+
#[test]
806+
fn resolving_with_sys_crates_duplicates() {
807+
// This is based on issues/4902
808+
// With `l` a normal library we get 2copies so everyone gets the newest compatible.
809+
// But `l-sys` a library with a links attribute we make sure there is only one.
810+
let reg = registry(vec![
811+
pkg!(("l-sys", "0.9.1")),
812+
pkg!(("l-sys", "0.10.0")),
813+
pkg!(("l", "0.9.1") => [dep_req("l-sys", ">=0.8.0, <=0.10.0")]),
814+
pkg!(("l", "0.10.0") => [dep_req("l-sys", "0.9")]),
815+
pkg!(("d", "1.0.0") => [dep_req("l", "0.10")]),
816+
pkg!(("r", "1.0.0") => [dep_req("l", "0.9")]),
817+
]);
818+
819+
let res = resolve(vec![dep_req("d", "1"), dep_req("r", "1")], &reg).unwrap();
820+
793821
assert_same(
794822
&res,
795823
&names(&[

0 commit comments

Comments
 (0)