specdiff 0.20.0

Show test outline changes on a branch
Documentation
[[framework]]
name = "minitest"
language = "ruby"
tree_sitter_crate = "tree-sitter-ruby"
description = "Minitest — Ruby's built-in test framework"

[framework.files]
extensions = [".rb"]
include_globs = [
    "test/**/*_test.rb",
    "test/**/test_*.rb",
]
exclude_globs = ["test/test_helper.rb"]
require_ast_confirmation = false

[framework.ast_kinds]
function = "method"
method = "method"
class = "class"
module = "module"
body_child = "body_statement"
name_child = "constant"
name_child_alt = "scope_resolution"

[[framework.marker]]
marker_type = "name_pattern"
pattern = "^Test"
applies_to = "class"
creates = "group"

[[framework.marker]]
marker_type = "name_pattern"
pattern = "^test_"
applies_to = "method"
creates = "spec"

[[framework.group]]
ast_type = "call"
method_names = ["describe"]
name_source = "first_argument"
name_source_type = "string_literal"

[[framework.spec]]
ast_type = "call"
method_names = ["it"]
name_source = "first_argument"
name_source_type = "string_literal"

[framework.loop_expansion]
enabled = true
each_method = "each"
literal_receiver_kinds = ["symbol_array", "string_array", "array", "hash"]

[framework.normalization]
strip_prefixes = ["test_"]
underscore_to_space = true
strip_camel_test_prefix = true

[framework.path_grouping]
strip_prefixes = ["test/"]
strip_suffixes = ["_test"]
separator = "::"
strip_extension = true

[framework.inheritance]
enabled = true
type_node_kinds = ["class", "module"]
inert_containers = ["module"]
scan_globs = ["test/**/*.rb", "spec/**/*.rb", "lib/**/*.rb"]

[[framework.inheritance.ref_detection]]
strategy = "method_call"
method_names = ["include", "extend"]
arg_kinds = ["constant", "scope_resolution"]