Add testing of foreign item highlighting
This commit is contained in:
parent
b4cddc0705
commit
fa0d0bfb7f
@ -248,4 +248,20 @@ pre { color: #DCDCCC; background: #3F3F3F; font-size: 22px; padd
|
||||
<span class="brace">}</span>
|
||||
|
||||
<span class="keyword unsafe">unsafe</span> <span class="keyword">trait</span> <span class="trait declaration unsafe">Dangerous</span> <span class="brace">{</span><span class="brace">}</span>
|
||||
<span class="keyword">impl</span> <span class="trait unsafe">Dangerous</span> <span class="keyword">for</span> <span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="brace">{</span><span class="brace">}</span></code></pre>
|
||||
<span class="keyword">impl</span> <span class="trait unsafe">Dangerous</span> <span class="keyword">for</span> <span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="brace">{</span><span class="brace">}</span>
|
||||
|
||||
<span class="keyword">fn</span> <span class="function declaration">use_foo_items</span><span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="brace">{</span>
|
||||
<span class="keyword">let</span> <span class="variable declaration">bob</span> <span class="operator">=</span> <span class="module foreign">foo</span><span class="operator">::</span><span class="struct foreign">Person</span> <span class="brace">{</span>
|
||||
<span class="field foreign">name</span><span class="colon">:</span> <span class="string_literal">"Bob"</span><span class="comma">,</span>
|
||||
<span class="field foreign">age</span><span class="colon">:</span> <span class="module foreign">foo</span><span class="operator">::</span><span class="module foreign">consts</span><span class="operator">::</span><span class="constant foreign">NUMBER</span><span class="comma">,</span>
|
||||
<span class="brace">}</span><span class="semicolon">;</span>
|
||||
|
||||
<span class="keyword">let</span> <span class="variable declaration">control_flow</span> <span class="operator">=</span> <span class="module foreign">foo</span><span class="operator">::</span><span class="function foreign">identity</span><span class="parenthesis">(</span><span class="module foreign">foo</span><span class="operator">::</span><span class="enum foreign">ControlFlow</span><span class="operator">::</span><span class="enum_variant foreign">Continue</span><span class="parenthesis">)</span><span class="semicolon">;</span>
|
||||
|
||||
<span class="keyword control">if</span> <span class="keyword">let</span> <span class="module foreign">foo</span><span class="operator">::</span><span class="enum foreign">ControlFlow</span><span class="operator">::</span><span class="enum_variant foreign">Die</span> <span class="operator">=</span> <span class="variable">control_flow</span> <span class="brace">{</span>
|
||||
foo::<span class="macro">die!</span><span class="parenthesis">(</span><span class="parenthesis">)</span><span class="semicolon">;</span>
|
||||
<span class="brace">}</span>
|
||||
<span class="brace">}</span>
|
||||
|
||||
|
||||
</code></pre>
|
@ -10,6 +10,7 @@ use crate::{fixture, FileRange, HlTag, TextRange};
|
||||
fn test_highlighting() {
|
||||
check_highlighting(
|
||||
r#"
|
||||
//- /main.rs crate:main deps:foo
|
||||
use inner::{self as inner_mod};
|
||||
mod inner {}
|
||||
|
||||
@ -222,6 +223,43 @@ async fn async_main() {
|
||||
|
||||
unsafe trait Dangerous {}
|
||||
impl Dangerous for () {}
|
||||
|
||||
fn use_foo_items() {
|
||||
let bob = foo::Person {
|
||||
name: "Bob",
|
||||
age: foo::consts::NUMBER,
|
||||
};
|
||||
|
||||
let control_flow = foo::identity(foo::ControlFlow::Continue);
|
||||
|
||||
if let foo::ControlFlow::Die = control_flow {
|
||||
foo::die!();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//- /foo.rs crate:foo
|
||||
pub struct Person {
|
||||
pub name: &'static str,
|
||||
pub age: u8,
|
||||
}
|
||||
|
||||
pub enum ControlFlow {
|
||||
Continue,
|
||||
Die,
|
||||
}
|
||||
|
||||
pub fn identity<T>(x: T) -> T { x }
|
||||
|
||||
pub mod consts {
|
||||
pub const NUMBER: i64 = 92;
|
||||
}
|
||||
|
||||
macro_rules! die {
|
||||
() => {
|
||||
panic!();
|
||||
};
|
||||
}
|
||||
"#
|
||||
.trim(),
|
||||
expect_file!["./test_data/highlighting.html"],
|
||||
|
Loading…
x
Reference in New Issue
Block a user