@@ -221,6 +221,69 @@ def baz; end
221221 assert_empty ( response )
222222 end
223223
224+ test "recognizes mailbox before_processing callback" do
225+ response = generate_definitions_for_source ( <<~RUBY , { line : 1 , character : 20 } )
226+ class FooMailbox < ApplicationMailbox
227+ before_processing :bar
228+
229+ private
230+ def bar; end
231+ end
232+ RUBY
233+
234+ assert_equal ( 1 , response . size )
235+
236+ response = response . first
237+
238+ assert_equal ( "file:///fake.rb" , response . uri )
239+ assert_equal ( 4 , response . range . start . line )
240+ assert_equal ( 4 , response . range . start . character )
241+ assert_equal ( 4 , response . range . end . line )
242+ assert_equal ( 16 , response . range . end . character )
243+ end
244+
245+ test "recognizes mailbox around_processing callback" do
246+ response = generate_definitions_for_source ( <<~RUBY , { line : 1 , character : 20 } )
247+ class FooMailbox < ApplicationMailbox
248+ around_processing :baz
249+
250+ private
251+ def baz; end
252+ end
253+ RUBY
254+
255+ assert_equal ( 1 , response . size )
256+
257+ response = response . first
258+
259+ assert_equal ( "file:///fake.rb" , response . uri )
260+ assert_equal ( 4 , response . range . start . line )
261+ assert_equal ( 4 , response . range . start . character )
262+ assert_equal ( 4 , response . range . end . line )
263+ assert_equal ( 16 , response . range . end . character )
264+ end
265+
266+ test "recognizes mailbox after_processing callback" do
267+ response = generate_definitions_for_source ( <<~RUBY , { line : 1 , character : 20 } )
268+ class FooMailbox < ApplicationMailbox
269+ after_processing :qux
270+
271+ private
272+ def qux; end
273+ end
274+ RUBY
275+
276+ assert_equal ( 1 , response . size )
277+
278+ response = response . first
279+
280+ assert_equal ( "file:///fake.rb" , response . uri )
281+ assert_equal ( 4 , response . range . start . line )
282+ assert_equal ( 4 , response . range . start . character )
283+ assert_equal ( 4 , response . range . end . line )
284+ assert_equal ( 16 , response . range . end . character )
285+ end
286+
224287 private
225288
226289 def generate_definitions_for_source ( source , position )
0 commit comments