Add regression test for patterns support in "jump to def" feature
This commit is contained in:
parent
f6525a621a
commit
140640a8cf
1 changed files with 52 additions and 0 deletions
52
tests/rustdoc/jump-to-def-pats.rs
Normal file
52
tests/rustdoc/jump-to-def-pats.rs
Normal file
|
@ -0,0 +1,52 @@
|
|||
// This test ensures that patterns also get a link generated.
|
||||
|
||||
//@ compile-flags: -Zunstable-options --generate-link-to-definition
|
||||
|
||||
#![crate_name = "foo"]
|
||||
|
||||
//@ has 'src/foo/jump-to-def-pats.rs.html'
|
||||
|
||||
use std::fmt;
|
||||
|
||||
pub enum MyEnum<T, E> {
|
||||
Ok(T),
|
||||
Err(E),
|
||||
Some(T),
|
||||
None,
|
||||
}
|
||||
|
||||
pub enum X {
|
||||
A,
|
||||
}
|
||||
|
||||
pub fn foo() -> Result<(), ()> {
|
||||
// FIXME: would be nice to be able to check both the class and the href at the same time so
|
||||
// we could check the text as well...
|
||||
//@ has - '//a[@class="prelude-val"]/@href' '{{channel}}/core/result/enum.Result.html#variant.Ok'
|
||||
//@ has - '//a[@href="{{channel}}/core/result/enum.Result.html#variant.Ok"]' 'Ok'
|
||||
Ok(())
|
||||
}
|
||||
|
||||
impl<T, E> fmt::Display for MyEnum<T, E> {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
match self {
|
||||
//@ has - '//a[@href="#12"]' 'Self::Ok'
|
||||
Self::Ok(_) => f.write_str("MyEnum::Ok"),
|
||||
//@ has - '//a[@href="#13"]' 'MyEnum::Err'
|
||||
MyEnum::Err(_) => f.write_str("MyEnum::Err"),
|
||||
//@ has - '//a[@href="#14"]' 'Self::Some'
|
||||
Self::Some(_) => f.write_str("MyEnum::Some"),
|
||||
//@ has - '//a[@href="#15"]' 'Self::None'
|
||||
Self::None => f.write_str("MyEnum::None"),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl X {
|
||||
fn p(&self) -> &str {
|
||||
match self {
|
||||
//@ has - '//a[@href="#19"]' 'Self::A'
|
||||
Self::A => "X::A",
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue