Skip to content

Commit

Permalink
fix ut absolute path
Browse files Browse the repository at this point in the history
Signed-off-by: he1pa <18012015693@163.com>
  • Loading branch information
He1pa committed May 30, 2024
1 parent 19070b5 commit 6e38e64
Show file tree
Hide file tree
Showing 7 changed files with 31 additions and 14 deletions.
21 changes: 19 additions & 2 deletions kclvm/tools/src/LSP/src/goto_def.rs
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ mod tests {
use indexmap::IndexSet;
use kclvm_error::Position as KCLPos;
use proc_macro_crate::bench_test;
use std::path::PathBuf;
use std::path::{Path, PathBuf};

#[test]
#[bench_test]
Expand Down Expand Up @@ -708,12 +708,29 @@ mod tests {
line: $line,
column: Some($column),
};
goto_def(&pos, &gs)
let res = goto_def(&pos, &gs);
fmt_resp(&res)
}));
}
};
}

fn fmt_resp(resp: &Option<lsp_types::GotoDefinitionResponse>) -> String {
let root_path = PathBuf::from(env!("CARGO_MANIFEST_DIR"));
match resp {
Some(resp) => match resp {
lsp_types::GotoDefinitionResponse::Scalar(loc) => {
let url = file_path_from_url(&loc.uri).unwrap();
let got_path = Path::new(&url);
let relative_path = got_path.strip_prefix(root_path).unwrap();
format!("path: {:?}, range: {:?}", relative_path, loc.range)
}
_ => todo!(),
},
None => "None".to_string(),
}
}

goto_def_test_snapshot!(
goto_system_pkg_test,
"src/test_data/goto_def_test/goto_def.k",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
source: tools/src/LSP/src/goto_def.rs
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 13, column : Some(15), } ;\n goto_def(& pos, & gs)\n })"
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 13, column : Some(15), } ; let res =\n goto_def(& pos, & gs) ; fmt_resp(& res)\n })"
---
Some(Scalar(Location { uri: Url { scheme: "file", cannot_be_a_base: false, username: "", password: None, host: None, port: None, path: "/Users/zz/code/he1pa/KCLVM/kclvm/tools/src/LSP/src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k", query: None, fragment: None }, range: Range { start: Position { line: 1, character: 4 }, end: Position { line: 1, character: 8 } } }))
"path: \"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\", range: Range { start: Position { line: 1, character: 4 }, end: Position { line: 1, character: 8 } }"
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
source: tools/src/LSP/src/goto_def.rs
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 15, column : Some(7), } ;\n goto_def(& pos, & gs)\n })"
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 15, column : Some(7), } ; let res =\n goto_def(& pos, & gs) ; fmt_resp(& res)\n })"
---
Some(Scalar(Location { uri: Url { scheme: "file", cannot_be_a_base: false, username: "", password: None, host: None, port: None, path: "/Users/zz/code/he1pa/KCLVM/kclvm/tools/src/LSP/src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k", query: None, fragment: None }, range: Range { start: Position { line: 4, character: 4 }, end: Position { line: 4, character: 8 } } }))
"path: \"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\", range: Range { start: Position { line: 4, character: 4 }, end: Position { line: 4, character: 8 } }"
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
source: tools/src/LSP/src/goto_def.rs
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 19, column : Some(7), } ;\n goto_def(& pos, & gs)\n })"
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 19, column : Some(7), } ; let res =\n goto_def(& pos, & gs) ; fmt_resp(& res)\n })"
---
Some(Scalar(Location { uri: Url { scheme: "file", cannot_be_a_base: false, username: "", password: None, host: None, port: None, path: "/Users/zz/code/he1pa/KCLVM/kclvm/tools/src/LSP/src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k", query: None, fragment: None }, range: Range { start: Position { line: 9, character: 4 }, end: Position { line: 9, character: 8 } } }))
"path: \"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\", range: Range { start: Position { line: 9, character: 4 }, end: Position { line: 9, character: 8 } }"
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
source: tools/src/LSP/src/goto_def.rs
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 26, column : Some(11), } ;\n goto_def(& pos, & gs)\n })"
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 26, column : Some(11), } ; let res =\n goto_def(& pos, & gs) ; fmt_resp(& res)\n })"
---
Some(Scalar(Location { uri: Url { scheme: "file", cannot_be_a_base: false, username: "", password: None, host: None, port: None, path: "/Users/zz/code/he1pa/KCLVM/kclvm/tools/src/LSP/src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k", query: None, fragment: None }, range: Range { start: Position { line: 4, character: 4 }, end: Position { line: 4, character: 8 } } }))
"path: \"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\", range: Range { start: Position { line: 4, character: 4 }, end: Position { line: 4, character: 8 } }"
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
source: tools/src/LSP/src/goto_def.rs
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 33, column : Some(11), } ;\n goto_def(& pos, & gs)\n })"
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\")\n ; let pos = KCLPos\n { filename : file.clone(), line : 33, column : Some(11), } ; let res =\n goto_def(& pos, & gs) ; fmt_resp(& res)\n })"
---
Some(Scalar(Location { uri: Url { scheme: "file", cannot_be_a_base: false, username: "", password: None, host: None, port: None, path: "/Users/zz/code/he1pa/KCLVM/kclvm/tools/src/LSP/src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k", query: None, fragment: None }, range: Range { start: Position { line: 9, character: 4 }, end: Position { line: 9, character: 8 } } }))
"path: \"src/test_data/goto_def_test/dict_to_schema/dict_to_schema.k\", range: Range { start: Position { line: 9, character: 4 }, end: Position { line: 9, character: 8 } }"
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
source: tools/src/LSP/src/goto_def.rs
expression: "format!(\"{:?}\", res)"
expression: "format!(\"{:?}\",\n {\n let(file, _program, _, gs) =\n compile_test_file(\"src/test_data/goto_def_test/goto_def.k\") ; let pos\n = KCLPos { filename : file.clone(), line : 3, column : Some(1), } ;\n let res = goto_def(& pos, & gs) ; fmt_resp(& res)\n })"
---
None
"None"

0 comments on commit 6e38e64

Please sign in to comment.