refactor: compile less test binaries to speed up CI (#3414)

The semantic crate currently compiles 5 binaries for integration test, this PR merges them into one.
This commit is contained in:
Boshen 2024-05-26 07:21:44 +00:00
parent 21505e885c
commit de75fb2942
178 changed files with 652 additions and 669 deletions

View file

@ -1,9 +1,8 @@
mod util;
use std::fs;
use oxc_span::SourceType;
pub use util::SemanticTester;
use crate::util::SemanticTester;
#[test]
fn test_cfg_files() {

View file

@ -1,6 +1,4 @@
mod util;
pub use util::SemanticTester;
use crate::util::SemanticTester;
#[test]
fn test_class_simple() {

View file

@ -0,0 +1,8 @@
#![allow(clippy::missing_panics_doc)]
pub mod cfg;
pub mod classes;
pub mod modules;
pub mod scopes;
pub mod symbols;
pub mod util;

View file

@ -1,8 +1,7 @@
mod util;
use oxc_semantic::SymbolFlags;
use oxc_syntax::module_record::ExportExportName;
pub use util::SemanticTester;
use crate::util::SemanticTester;
#[test]
fn test_exports() {

View file

@ -1,7 +1,6 @@
mod util;
use oxc_semantic::ScopeFlags;
pub use util::{Expect, SemanticTester};
use crate::util::{Expect, SemanticTester};
#[test]
fn test_top_level_strict() {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/class.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/argument_map.js
---
digraph {
0 [ label = ""]
@ -10,4 +10,3 @@ digraph {
0 -> 1 [ ]
0 -> 2 [ ]
}

View file

@ -0,0 +1,16 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/argument_map.js
---
bb0: {
}
bb1: {
}
bb2: {
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/arrow_expressions.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/arrow_expressions.js
---
digraph {
0 [ label = ""]
@ -10,4 +10,3 @@ digraph {
0 -> 1 [ ]
0 -> 2 [ ]
}

View file

@ -0,0 +1,16 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/arrow_expressions.js
---
bb0: {
}
bb1: {
}
bb2: {
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/assignment_operators.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/assignment_operators.js
---
digraph {
0 [ label = ""]
@ -21,4 +21,3 @@ digraph {
4 -> 6 [ ]
5 -> 6 [ ]
}

View file

@ -0,0 +1,32 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/assignment_operators.js
---
bb0: {
}
bb1: {
}
bb2: {
}
bb3: {
}
bb4: {
}
bb5: {
}
bb6: {
}

View file

@ -0,0 +1,11 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/break_from_a_label_in_global_scope.js
---
digraph {
0 [ label = ""]
1 [ label = "Unreachable()\nbreak $0"]
0 -> 1 [ ]
0 -> 1 [ ]
}

View file

@ -0,0 +1,13 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/break_from_a_label_in_global_scope.js
---
bb0: {
}
bb1: {
Unreachable()
break $0
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/argument_map.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/class.js
---
digraph {
0 [ label = ""]
@ -10,4 +10,3 @@ digraph {
0 -> 1 [ ]
0 -> 2 [ ]
}

View file

@ -0,0 +1,16 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/class.js
---
bb0: {
}
bb1: {
}
bb2: {
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/nested_computed_member_expression.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/class_extend_super.js
---
digraph {
0 [ label = ""]
@ -13,4 +13,3 @@ digraph {
2 -> 3 [ ]
0 -> 4 [ ]
}

View file

@ -0,0 +1,24 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/class_extend_super.js
---
bb0: {
}
bb1: {
$return = <value>
}
bb2: {
}
bb3: {
Unreachable()
}
bb4: {
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/cond_expr_in_arrow_fn.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/cond_expr_in_arrow_fn.js
---
digraph {
0 [ label = ""]

View file

@ -0,0 +1,28 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/cond_expr_in_arrow_fn.js
---
bb0: {
}
bb1: {
}
bb2: {
}
bb3: {
}
bb4: {
}
bb5: {
Unreachable()
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/conditional_expression.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/conditional_expression.js
---
digraph {
0 [ label = ""]

View file

@ -0,0 +1,24 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/conditional_expression.js
---
bb0: {
}
bb1: {
}
bb2: {
}
bb3: {
}
bb4: {
Unreachable()
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/do_while_break.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/do_while_break.js
---
digraph {
0 [ label = ""]

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/do_while_break.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/do_while_break.js
---
bb0: {

View file

@ -0,0 +1,8 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/expression_spread.js
---
digraph {
0 [ label = ""]
}

View file

@ -0,0 +1,8 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/expression_spread.js
---
bb0: {
}

View file

@ -0,0 +1,15 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/fn_return_obj_expr_with_computed_key.js
---
digraph {
0 [ label = ""]
1 [ label = "$return = <value>"]
2 [ label = ""]
3 [ label = "Unreachable()"]
4 [ label = ""]
0 -> 1 [ ]
2 -> 3 [ ]
0 -> 4 [ ]
}

View file

@ -0,0 +1,24 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/fn_return_obj_expr_with_computed_key.js
---
bb0: {
}
bb1: {
$return = <value>
}
bb2: {
}
bb3: {
Unreachable()
}
bb4: {
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/for_in.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/for_in.js
---
digraph {
0 [ label = ""]
@ -19,4 +19,3 @@ digraph {
2 -> 5 [ ]
0 -> 6 [ ]
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/for_in.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/for_in.js
---
bb0: {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/function_as_expression.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/function_as_expression.js
---
digraph {
0 [ label = ""]
@ -60,4 +60,3 @@ digraph {
24 -> 25 [ ]
24 -> 26 [ ]
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/function_as_expression.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/function_as_expression.js
---
bb0: {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/function_in_finally.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/function_in_finally.js
---
digraph {
0 [ label = ""]
@ -25,4 +25,3 @@ digraph {
6 -> 8 [ ]
8 -> 9 [ ]
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/function_in_finally.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/function_in_finally.js
---
bb0: {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/if_else.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/if_else.js
---
digraph {
0 [ label = ""]
@ -33,4 +33,3 @@ digraph {
12 -> 13 [ ]
0 -> 14 [ ]
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/if_else.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/if_else.js
---
bb0: {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/if_stmt_in_for_in.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/if_stmt_in_for_in.js
---
digraph {
0 [ label = ""]

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/if_stmt_in_for_in.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/if_stmt_in_for_in.js
---
bb0: {

View file

@ -0,0 +1,10 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/import_as_function.js
---
digraph {
0 [ label = ""]
1 [ label = ""]
0 -> 1 [ ]
}

View file

@ -0,0 +1,12 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/import_as_function.js
---
bb0: {
}
bb1: {
}

View file

@ -0,0 +1,8 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/index_into_object_with_symbol_as_arg.js
---
digraph {
0 [ label = ""]
}

View file

@ -0,0 +1,8 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/index_into_object_with_symbol_as_arg.js
---
bb0: {
}

View file

@ -0,0 +1,8 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/indexing_into_class_expression.js
---
digraph {
0 [ label = ""]
}

View file

@ -0,0 +1,8 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/indexing_into_class_expression.js
---
bb0: {
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/infix_operators.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/infix_operators.js
---
digraph {
0 [ label = ""]
@ -11,4 +11,3 @@ digraph {
0 -> 2 [ ]
1 -> 2 [ ]
}

View file

@ -0,0 +1,16 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/infix_operators.js
---
bb0: {
}
bb1: {
}
bb2: {
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/labeled_block_break.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/labeled_block_break.js
---
digraph {
0 [ label = ""]

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/labeled_block_break.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/labeled_block_break.js
---
bb0: {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/labelled_try_break.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/labelled_try_break.js
---
digraph {
0 [ label = ""]

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/labelled_try_break.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/labelled_try_break.js
---
bb0: {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/logical_expressions_short_circuit.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/logical_expressions_short_circuit.js
---
digraph {
0 [ label = ""]
@ -36,4 +36,3 @@ digraph {
10 -> 11 [ ]
10 -> 12 [ ]
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/logical_expressions_short_circuit.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/logical_expressions_short_circuit.js
---
bb0: {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/member_access_with_numbered_index.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/member_access_with_numbered_index.js
---
digraph {
0 [ label = ""]
@ -16,4 +16,3 @@ digraph {
4 -> 5 [ ]
0 -> 6 [ ]
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/member_access_with_unreachable.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/member_access_with_numbered_index.js
---
bb0: {

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/cfg_fixtures/member_access_with_unreachable.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/member_access_with_unreachable.js
---
digraph {
0 [ label = ""]
@ -16,4 +16,3 @@ digraph {
4 -> 5 [ ]
0 -> 6 [ ]
}

View file

@ -1,7 +1,7 @@
---
source: crates/oxc_semantic/tests/cfg.rs
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/cfg_fixtures/member_access_with_numbered_index.js
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/member_access_with_unreachable.js
---
bb0: {

View file

@ -0,0 +1,15 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.cfg_dot_diagram()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/nested_computed_member_expression.js
---
digraph {
0 [ label = ""]
1 [ label = "$return = <value>"]
2 [ label = ""]
3 [ label = "Unreachable()"]
4 [ label = ""]
0 -> 1 [ ]
2 -> 3 [ ]
0 -> 4 [ ]
}

View file

@ -0,0 +1,24 @@
---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: output.basic_blocks_printed()
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/nested_computed_member_expression.js
---
bb0: {
}
bb1: {
$return = <value>
}
bb2: {
}
bb3: {
Unreachable()
}
bb4: {
}

Some files were not shown because too many files have changed in this diff Show more