update tests

This commit is contained in:
Aleksey Kladov 2019-05-28 16:59:22 +03:00
parent afeaea7051
commit bc2550b196
4 changed files with 36 additions and 47 deletions

View file

@ -166,9 +166,11 @@ fn merge_errors(
#[cfg(test)]
mod tests {
use std::sync::Arc;
use test_utils::{extract_range, assert_eq_text};
use crate::{SourceFile, AstNode};
use crate::{SourceFile, AstNode, Parse};
use super::*;
fn do_check(before: &str, replace_with: &str, reparsed_len: u32) {
@ -176,19 +178,19 @@ mod tests {
let edit = AtomTextEdit::replace(range, replace_with.to_owned());
let after = edit.apply(before.clone());
let fully_reparsed = SourceFile::parse(&after);
let fully_reparsed = SourceFile::parse2(&after);
let incrementally_reparsed = {
let f = SourceFile::parse(&before);
let edit = AtomTextEdit { delete: range, insert: replace_with.to_string() };
let (green, new_errors, range) =
incremental_reparse(f.syntax(), &edit, f.errors()).unwrap();
assert_eq!(range.len(), reparsed_len.into(), "reparsed fragment has wrong length");
SourceFile::new(green, new_errors)
Parse { tree: SourceFile::new(green), errors: Arc::new(new_errors) }
};
assert_eq_text!(
&fully_reparsed.syntax().debug_dump(),
&incrementally_reparsed.syntax().debug_dump(),
&fully_reparsed.tree.syntax().debug_dump(),
&incrementally_reparsed.tree.syntax().debug_dump(),
);
}