aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_ty/src/tests/method_resolution.rs
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2020-02-19 19:46:37 +0000
committerGitHub <[email protected]>2020-02-19 19:46:37 +0000
commite00b9ca3c94d8f88cc5aede562365025a59af06b (patch)
treee5c668e033b33a11208bb0e2f3fd8bee51ad0f2b /crates/ra_hir_ty/src/tests/method_resolution.rs
parent889851b52e05f95bf04c6b577a0a63b8e0e523cb (diff)
parent5b05209744ce7dcd15f814482babbfd163553b57 (diff)
Merge #3215
3215: Exclude methods from non-parameter types introduced by generic constraints r=flodiebold a=lnicola Fixes #3184. r? @flodiebold Co-authored-by: LaurenČ›iu Nicola <[email protected]>
Diffstat (limited to 'crates/ra_hir_ty/src/tests/method_resolution.rs')
-rw-r--r--crates/ra_hir_ty/src/tests/method_resolution.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/crates/ra_hir_ty/src/tests/method_resolution.rs b/crates/ra_hir_ty/src/tests/method_resolution.rs
index 1f767d324..644d59e17 100644
--- a/crates/ra_hir_ty/src/tests/method_resolution.rs
+++ b/crates/ra_hir_ty/src/tests/method_resolution.rs
@@ -1008,6 +1008,29 @@ fn test() { foo.call()<|>; }
1008} 1008}
1009 1009
1010#[test] 1010#[test]
1011fn method_resolution_non_parameter_type() {
1012 let t = type_at(
1013 r#"
1014//- /main.rs
1015mod a {
1016 pub trait Foo {
1017 fn foo(&self);
1018 }
1019}
1020
1021struct Wrapper<T>(T);
1022fn foo<T>(t: Wrapper<T>)
1023where
1024 Wrapper<T>: a::Foo,
1025{
1026 t.foo()<|>;
1027}
1028"#,
1029 );
1030 assert_eq!(t, "{unknown}");
1031}
1032
1033#[test]
1011fn method_resolution_slow() { 1034fn method_resolution_slow() {
1012 // this can get quite slow if we set the solver size limit too high 1035 // this can get quite slow if we set the solver size limit too high
1013 let t = type_at( 1036 let t = type_at(