ruby-lsp-rails 0.4.3 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8f968848880db712a4b5f47a8d53b1e2f665fdd1e4373f8c63fe3b543ab794bf
|
4
|
+
data.tar.gz: 3cbbb5c9b4c6acff1980e0563f88bd6dea99b8ed2ff5c2758a4b55f379d33fb1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 403921682adb7274f0075121d88b80c5ebb9c7143da462013ad4e34112ff47036605bbce67c706ba20cfa3829487203e7a4aa30ea81e36d5a73356719844833e
|
7
|
+
data.tar.gz: 03f520fb6b6bdf22bf4e73207ce90fdb46b677934dd87c8173f84992c092aea81c6d9161a701c29d0ac13a65bed20bfcdaaa3f3dfd88a88b2df54051ae165810
|
@@ -91,7 +91,7 @@ module RubyLsp
|
|
91
91
|
def create_discover_tests_listener(response_builder, dispatcher, uri)
|
92
92
|
return unless @global_state
|
93
93
|
|
94
|
-
RailsTestStyle.new(
|
94
|
+
RailsTestStyle.new(response_builder, @global_state, dispatcher, uri)
|
95
95
|
end
|
96
96
|
|
97
97
|
# @override
|
@@ -50,8 +50,9 @@ module RubyLsp
|
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
53
|
-
#: (
|
54
|
-
def initialize(
|
53
|
+
#: (ResponseBuilders::TestCollection response_builder, GlobalState global_state, Prism::Dispatcher dispatcher, URI::Generic uri) -> void
|
54
|
+
def initialize(response_builder, global_state, dispatcher, uri)
|
55
|
+
@parent_stack = [response_builder] #: Array[(Requests::Support::TestItem | ResponseBuilders::TestCollection)?]
|
55
56
|
super(response_builder, global_state, dispatcher, uri)
|
56
57
|
|
57
58
|
dispatcher.register(
|
@@ -74,12 +75,33 @@ module RubyLsp
|
|
74
75
|
framework: :rails,
|
75
76
|
)
|
76
77
|
|
77
|
-
|
78
|
+
last_test_group.add(test_item)
|
78
79
|
@response_builder.add_code_lens(test_item)
|
80
|
+
@parent_stack << test_item
|
81
|
+
else
|
82
|
+
@parent_stack << nil
|
79
83
|
end
|
80
84
|
end
|
81
85
|
end
|
82
86
|
|
87
|
+
#: (Prism::ClassNode node) -> void
|
88
|
+
def on_class_node_leave(node)
|
89
|
+
@parent_stack.pop
|
90
|
+
super
|
91
|
+
end
|
92
|
+
|
93
|
+
#: (Prism::ModuleNode node) -> void
|
94
|
+
def on_module_node_enter(node)
|
95
|
+
@parent_stack << nil
|
96
|
+
super
|
97
|
+
end
|
98
|
+
|
99
|
+
#: (Prism::ModuleNode node) -> void
|
100
|
+
def on_module_node_leave(node)
|
101
|
+
@parent_stack.pop
|
102
|
+
super
|
103
|
+
end
|
104
|
+
|
83
105
|
#: (Prism::CallNode node) -> void
|
84
106
|
def on_call_node_enter(node)
|
85
107
|
return unless node.name == :test
|
@@ -125,28 +147,24 @@ module RubyLsp
|
|
125
147
|
|
126
148
|
#: (Prism::Node node, String test_name) -> void
|
127
149
|
def add_test_item(node, test_name)
|
128
|
-
|
129
|
-
return unless
|
150
|
+
parent = @parent_stack.last
|
151
|
+
return unless parent.is_a?(Requests::Support::TestItem)
|
130
152
|
|
131
153
|
example_item = Requests::Support::TestItem.new(
|
132
|
-
"#{
|
154
|
+
"#{parent.id}##{test_name}",
|
133
155
|
test_name,
|
134
156
|
@uri,
|
135
157
|
range_from_node(node),
|
136
158
|
framework: :rails,
|
137
159
|
)
|
138
|
-
|
160
|
+
parent.add(example_item)
|
139
161
|
@response_builder.add_code_lens(example_item)
|
140
162
|
end
|
141
163
|
|
142
|
-
#: -> Requests::Support::TestItem
|
143
|
-
def
|
144
|
-
|
145
|
-
|
146
|
-
# If we're finding a test method, but for the wrong framework, then the group test item will not have been
|
147
|
-
# previously pushed and thus we return early and avoid adding items for a framework this listener is not
|
148
|
-
# interested in
|
149
|
-
@response_builder[current_group_name]
|
164
|
+
#: -> (Requests::Support::TestItem | ResponseBuilders::TestCollection)
|
165
|
+
def last_test_group
|
166
|
+
index = @parent_stack.rindex { |i| i } #: as !nil
|
167
|
+
@parent_stack[index] #: as Requests::Support::TestItem | ResponseBuilders::TestCollection
|
150
168
|
end
|
151
169
|
end
|
152
170
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-lsp-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shopify
|
@@ -79,7 +79,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
79
79
|
- !ruby/object:Gem::Version
|
80
80
|
version: '0'
|
81
81
|
requirements: []
|
82
|
-
rubygems_version: 3.6.
|
82
|
+
rubygems_version: 3.6.9
|
83
83
|
specification_version: 4
|
84
84
|
summary: A Ruby LSP addon for Rails
|
85
85
|
test_files: []
|