10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/ruby_lsp/ruby_lsp_rails/support/active_support_test_case_helper.rb', line 10
def (node)
message_value = node.message
return unless message_value == "test" || message_value == "it"
arguments = node.arguments&.arguments
return unless arguments&.any?
first_argument = arguments.first
content = case first_argument
when Prism::InterpolatedStringNode
parts = first_argument.parts
if parts.all? { |part| part.is_a?(Prism::StringNode) }
T.cast(parts, T::Array[Prism::StringNode]).map(&:content).join
end
when Prism::StringNode
first_argument.content
end
if content && !content.empty?
content
end
end
|