update semantic index tests for javascript
This commit is contained in:
parent
81b05f2a08
commit
c86096a886
4 changed files with 278 additions and 270 deletions
|
@ -388,43 +388,103 @@ fn assert_documents_eq(
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// #[gpui::test]
|
#[gpui::test]
|
||||||
// async fn test_code_context_retrieval_javascript() {
|
async fn test_code_context_retrieval_javascript() {
|
||||||
// let language = js_lang();
|
let language = js_lang();
|
||||||
// let mut retriever = CodeContextRetriever::new();
|
let mut retriever = CodeContextRetriever::new();
|
||||||
|
|
||||||
// let text = "
|
let text = "
|
||||||
// /* globals importScripts, backend */
|
/* globals importScripts, backend */
|
||||||
// function _authorize() {}
|
function _authorize() {}
|
||||||
|
|
||||||
// /**
|
/**
|
||||||
// * Sometimes the frontend build is way faster than backend.
|
* Sometimes the frontend build is way faster than backend.
|
||||||
// */
|
*/
|
||||||
// export async function authorizeBank() {
|
export async function authorizeBank() {
|
||||||
// _authorize(pushModal, upgradingAccountId, {});
|
_authorize(pushModal, upgradingAccountId, {});
|
||||||
// }
|
}
|
||||||
|
|
||||||
// export class SettingsPage {
|
export class SettingsPage {
|
||||||
// /* This is a test setting */
|
/* This is a test setting */
|
||||||
// constructor(page) {
|
constructor(page) {
|
||||||
// this.page = page;
|
this.page = page;
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
|
|
||||||
// /* This is a test comment */
|
/* This is a test comment */
|
||||||
// class TestClass {}
|
class TestClass {}
|
||||||
|
|
||||||
// /* Schema for editor_events in Clickhouse. */
|
/* Schema for editor_events in Clickhouse. */
|
||||||
// export interface ClickhouseEditorEvent {
|
export interface ClickhouseEditorEvent {
|
||||||
// installation_id: string
|
installation_id: string
|
||||||
// operation: string
|
operation: string
|
||||||
// }
|
}
|
||||||
// "
|
"
|
||||||
// .unindent();
|
.unindent();
|
||||||
|
|
||||||
// let parsed_files = retriever
|
let documents = retriever.parse_file(&text, language.clone()).unwrap();
|
||||||
// .parse_file(Path::new("foo.js"), &text, language)
|
|
||||||
// .unwrap();
|
assert_documents_eq(
|
||||||
|
&documents,
|
||||||
|
&[
|
||||||
|
(
|
||||||
|
"
|
||||||
|
/* globals importScripts, backend */
|
||||||
|
function _authorize() {}"
|
||||||
|
.unindent(),
|
||||||
|
37,
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"
|
||||||
|
/**
|
||||||
|
* Sometimes the frontend build is way faster than backend.
|
||||||
|
*/
|
||||||
|
export async function authorizeBank() {
|
||||||
|
_authorize(pushModal, upgradingAccountId, {});
|
||||||
|
}"
|
||||||
|
.unindent(),
|
||||||
|
131,
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"
|
||||||
|
export class SettingsPage {
|
||||||
|
/* This is a test setting */
|
||||||
|
constructor(page) {
|
||||||
|
this.page = page;
|
||||||
|
}
|
||||||
|
}"
|
||||||
|
.unindent(),
|
||||||
|
225,
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"
|
||||||
|
/* This is a test setting */
|
||||||
|
constructor(page) {
|
||||||
|
this.page = page;
|
||||||
|
}"
|
||||||
|
.unindent(),
|
||||||
|
290,
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"
|
||||||
|
/* This is a test comment */
|
||||||
|
class TestClass {}"
|
||||||
|
.unindent(),
|
||||||
|
374,
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"
|
||||||
|
/* Schema for editor_events in Clickhouse. */
|
||||||
|
export interface ClickhouseEditorEvent {
|
||||||
|
installation_id: string
|
||||||
|
operation: string
|
||||||
|
}"
|
||||||
|
.unindent(),
|
||||||
|
440,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
// let test_documents = &[
|
// let test_documents = &[
|
||||||
// Document {
|
// Document {
|
||||||
|
@ -924,37 +984,59 @@ fn js_lang() -> Arc<Language> {
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
|
[
|
||||||
(export_statement
|
(export_statement
|
||||||
(function_declaration
|
(function_declaration
|
||||||
"async"? @name
|
"async"? @name
|
||||||
"function" @name
|
"function" @name
|
||||||
name: (_) @name)) @item
|
name: (_) @name))
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(function_declaration
|
(function_declaration
|
||||||
"async"? @name
|
"async"? @name
|
||||||
"function" @name
|
"function" @name
|
||||||
name: (_) @name) @item
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
|
[
|
||||||
(export_statement
|
(export_statement
|
||||||
(class_declaration
|
(class_declaration
|
||||||
"class" @name
|
"class" @name
|
||||||
name: (_) @name)) @item
|
name: (_) @name))
|
||||||
|
(class_declaration
|
||||||
|
"class" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
(class_declaration
|
[
|
||||||
"class" @name
|
(export_statement
|
||||||
name: (_) @name) @item
|
(interface_declaration
|
||||||
|
"interface" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(interface_declaration
|
||||||
|
"interface" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
(comment)* @context
|
||||||
|
.
|
||||||
|
[
|
||||||
|
(export_statement
|
||||||
|
(enum_declaration
|
||||||
|
"enum" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(enum_declaration
|
||||||
|
"enum" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
|
@ -971,40 +1053,6 @@ fn js_lang() -> Arc<Language> {
|
||||||
name: (_) @name) @item
|
name: (_) @name) @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(interface_declaration
|
|
||||||
"interface" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(interface_declaration
|
|
||||||
"interface" @name
|
|
||||||
name: (_) @name) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(enum_declaration
|
|
||||||
"enum" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(enum_declaration
|
|
||||||
"enum" @name
|
|
||||||
name: (_) @name) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
"#
|
"#
|
||||||
.unindent(),
|
.unindent(),
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,37 +1,59 @@
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
|
[
|
||||||
(export_statement
|
(export_statement
|
||||||
(function_declaration
|
(function_declaration
|
||||||
"async"? @name
|
"async"? @name
|
||||||
"function" @name
|
"function" @name
|
||||||
name: (_) @name)) @item
|
name: (_) @name))
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(function_declaration
|
(function_declaration
|
||||||
"async"? @name
|
"async"? @name
|
||||||
"function" @name
|
"function" @name
|
||||||
name: (_) @name) @item
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
|
[
|
||||||
(export_statement
|
(export_statement
|
||||||
(class_declaration
|
(class_declaration
|
||||||
"class" @name
|
"class" @name
|
||||||
name: (_) @name)) @item
|
name: (_) @name))
|
||||||
|
(class_declaration
|
||||||
|
"class" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
(class_declaration
|
[
|
||||||
"class" @name
|
(export_statement
|
||||||
name: (_) @name) @item
|
(interface_declaration
|
||||||
|
"interface" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(interface_declaration
|
||||||
|
"interface" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
(comment)* @context
|
||||||
|
.
|
||||||
|
[
|
||||||
|
(export_statement
|
||||||
|
(enum_declaration
|
||||||
|
"enum" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(enum_declaration
|
||||||
|
"enum" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
|
@ -47,37 +69,3 @@
|
||||||
]* @name
|
]* @name
|
||||||
name: (_) @name) @item
|
name: (_) @name) @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(interface_declaration
|
|
||||||
"interface" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(interface_declaration
|
|
||||||
"interface" @name
|
|
||||||
name: (_) @name) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(enum_declaration
|
|
||||||
"enum" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(enum_declaration
|
|
||||||
"enum" @name
|
|
||||||
name: (_) @name) @item
|
|
||||||
)
|
|
||||||
|
|
|
@ -1,37 +1,73 @@
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
|
[
|
||||||
(export_statement
|
(export_statement
|
||||||
(function_declaration
|
(function_declaration
|
||||||
"async"? @name
|
"async"? @name
|
||||||
"function" @name
|
"function" @name
|
||||||
name: (_) @name)) @item
|
name: (_) @name))
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(function_declaration
|
(function_declaration
|
||||||
"async"? @name
|
"async"? @name
|
||||||
"function" @name
|
"function" @name
|
||||||
name: (_) @name) @item
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
|
[
|
||||||
(export_statement
|
(export_statement
|
||||||
(class_declaration
|
(class_declaration
|
||||||
"class" @name
|
"class" @name
|
||||||
name: (_) @name)) @item
|
name: (_) @name))
|
||||||
|
(class_declaration
|
||||||
|
"class" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
(class_declaration
|
[
|
||||||
"class" @name
|
(export_statement
|
||||||
name: (_) @name) @item
|
(interface_declaration
|
||||||
|
"interface" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(interface_declaration
|
||||||
|
"interface" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
(comment)* @context
|
||||||
|
.
|
||||||
|
[
|
||||||
|
(export_statement
|
||||||
|
(enum_declaration
|
||||||
|
"enum" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(enum_declaration
|
||||||
|
"enum" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
(comment)* @context
|
||||||
|
.
|
||||||
|
[
|
||||||
|
(export_statement
|
||||||
|
(type_alias_declaration
|
||||||
|
"type" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(type_alias_declaration
|
||||||
|
"type" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
|
@ -47,53 +83,3 @@
|
||||||
]* @name
|
]* @name
|
||||||
name: (_) @name) @item
|
name: (_) @name) @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(interface_declaration
|
|
||||||
"interface" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(interface_declaration
|
|
||||||
"interface" @name
|
|
||||||
name: (_) @name) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(enum_declaration
|
|
||||||
"enum" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(enum_declaration
|
|
||||||
"enum" @name
|
|
||||||
name: (_) @name) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(type_alias_declaration
|
|
||||||
"type" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(type_alias_declaration
|
|
||||||
"type" @name
|
|
||||||
name: (_) @name) @item)
|
|
||||||
|
|
|
@ -1,37 +1,73 @@
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
|
[
|
||||||
(export_statement
|
(export_statement
|
||||||
(function_declaration
|
(function_declaration
|
||||||
"async"? @name
|
"async"? @name
|
||||||
"function" @name
|
"function" @name
|
||||||
name: (_) @name)) @item
|
name: (_) @name))
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(function_declaration
|
(function_declaration
|
||||||
"async"? @name
|
"async"? @name
|
||||||
"function" @name
|
"function" @name
|
||||||
name: (_) @name) @item
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
|
[
|
||||||
(export_statement
|
(export_statement
|
||||||
(class_declaration
|
(class_declaration
|
||||||
"class" @name
|
"class" @name
|
||||||
name: (_) @name)) @item
|
name: (_) @name))
|
||||||
|
(class_declaration
|
||||||
|
"class" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
(comment)* @context
|
(comment)* @context
|
||||||
.
|
.
|
||||||
(class_declaration
|
[
|
||||||
"class" @name
|
(export_statement
|
||||||
name: (_) @name) @item
|
(interface_declaration
|
||||||
|
"interface" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(interface_declaration
|
||||||
|
"interface" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
(comment)* @context
|
||||||
|
.
|
||||||
|
[
|
||||||
|
(export_statement
|
||||||
|
(enum_declaration
|
||||||
|
"enum" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(enum_declaration
|
||||||
|
"enum" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
(comment)* @context
|
||||||
|
.
|
||||||
|
[
|
||||||
|
(export_statement
|
||||||
|
(type_alias_declaration
|
||||||
|
"type" @name
|
||||||
|
name: (_) @name))
|
||||||
|
(type_alias_declaration
|
||||||
|
"type" @name
|
||||||
|
name: (_) @name)
|
||||||
|
] @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
(
|
||||||
|
@ -47,53 +83,3 @@
|
||||||
]* @name
|
]* @name
|
||||||
name: (_) @name) @item
|
name: (_) @name) @item
|
||||||
)
|
)
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(interface_declaration
|
|
||||||
"interface" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(interface_declaration
|
|
||||||
"interface" @name
|
|
||||||
name: (_) @name) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(enum_declaration
|
|
||||||
"enum" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(enum_declaration
|
|
||||||
"enum" @name
|
|
||||||
name: (_) @name) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(export_statement
|
|
||||||
(type_alias_declaration
|
|
||||||
"type" @name
|
|
||||||
name: (_) @name)) @item
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
(comment)* @context
|
|
||||||
.
|
|
||||||
(type_alias_declaration
|
|
||||||
"type" @name
|
|
||||||
name: (_) @name) @item)
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue