diff options
Diffstat (limited to 'support/texlab/src/features/completion/entry_type.rs')
-rw-r--r-- | support/texlab/src/features/completion/entry_type.rs | 200 |
1 files changed, 1 insertions, 199 deletions
diff --git a/support/texlab/src/features/completion/entry_type.rs b/support/texlab/src/features/completion/entry_type.rs index 06180dd8cc..519737ed08 100644 --- a/support/texlab/src/features/completion/entry_type.rs +++ b/support/texlab/src/features/completion/entry_type.rs @@ -13,7 +13,7 @@ pub fn complete_entry_types<'a>( .cursor .as_bibtex() .filter(|token| token.kind() == bibtex::TYPE) - .map(|token| token.text_range()) + .map(bibtex::SyntaxToken::text_range) .filter(|range| range.start() != context.offset) .map(|range| TextRange::new(range.start() + TextSize::from(1), range.end()))?; @@ -25,201 +25,3 @@ pub fn complete_entry_types<'a>( Some(()) } - -#[cfg(test)] -mod tests { - use crate::features::testing::FeatureTester; - - use super::*; - - #[test] - fn test_empty_latex_document() { - let request = FeatureTester::builder() - .files(vec![("main.tex", "")]) - .main("main.tex") - .line(0) - .character(0) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(actual_items.is_empty()); - } - - #[test] - fn test_empty_bibtex_document() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "")]) - .main("main.bib") - .line(0) - .character(0) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(actual_items.is_empty()); - } - - #[test] - fn test_at_empty() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "@")]) - .main("main.bib") - .line(0) - .character(1) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(!actual_items.is_empty()); - for item in actual_items { - assert_eq!(item.range, TextRange::new(1.into(), 1.into())); - } - } - - #[test] - fn test_before_preamble() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "@preamble")]) - .main("main.bib") - .line(0) - .character(1) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(!actual_items.is_empty()); - for item in actual_items { - assert_eq!(item.range, TextRange::new(1.into(), 9.into())); - } - } - - #[test] - fn test_before_string() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "@string")]) - .main("main.bib") - .line(0) - .character(1) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(!actual_items.is_empty()); - for item in actual_items { - assert_eq!(item.range, TextRange::new(1.into(), 7.into())); - } - } - - #[test] - fn test_before_article() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "@article")]) - .main("main.bib") - .line(0) - .character(1) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(!actual_items.is_empty()); - for item in actual_items { - assert_eq!(item.range, TextRange::new(1.into(), 8.into())); - } - } - - #[test] - fn test_after_preamble() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "@preamble{")]) - .main("main.bib") - .line(0) - .character(9) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(!actual_items.is_empty()); - for item in actual_items { - assert_eq!(item.range, TextRange::new(1.into(), 9.into())); - } - } - - #[test] - fn test_after_string() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "@string{")]) - .main("main.bib") - .line(0) - .character(7) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(!actual_items.is_empty()); - for item in actual_items { - assert_eq!(item.range, TextRange::new(1.into(), 7.into())); - } - } - - #[test] - fn test_complete_entry() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "@article{foo, author = {foo}}")]) - .main("main.bib") - .line(0) - .character(3) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(!actual_items.is_empty()); - for item in actual_items { - assert_eq!(item.range, TextRange::new(1.into(), 8.into())); - } - } - - #[test] - fn test_complete_entry_field() { - let request = FeatureTester::builder() - .files(vec![("main.bib", "@article{foo, author = {foo}}")]) - .main("main.bib") - .line(0) - .character(17) - .build() - .completion(); - - let context = CursorContext::new(request); - let mut actual_items = Vec::new(); - complete_entry_types(&context, &mut actual_items); - - assert!(actual_items.is_empty()); - } -} |