Skip to content

Commit efdae41

Browse files
committed
Support :.Rake in test 'foo' do ... end
1 parent a70d84e commit efdae41

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

autoload/rails.vim

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,9 @@ function! s:readable_define_pattern() dict abort
236236
if self.name() =~# '/schema\.rb$'
237237
let define .= "\\\|^\\s*create_table\\s\\+[:'\"]"
238238
endif
239+
if self.type_name('test')
240+
let define .= '\|^\s*test\s*[''"]'
241+
endif
239242
return define
240243
endfunction
241244

@@ -248,9 +251,13 @@ function! s:lastmethodline(start)
248251
endfunction
249252

250253
function! s:readable_last_method(start) dict abort
251-
let line = self.last_method_line(a:start)
252-
if line
253-
return s:sub(matchstr(self.getline(line),'\%('.self.define_pattern().'\)\zs\h\%(\k\|[:.]\)*[?!=]\='),':$','')
254+
let lnum = self.last_method_line(a:start)
255+
let line = self.getline(lnum)
256+
if line =~# '^\s*test\s*\([''"]\).*\1'
257+
let string = matchstr(line,'^\s*\w\+\s*\([''"]\)\zs.*\ze\1')
258+
return 'test_'.s:gsub(string,' +','_')
259+
elseif lnum
260+
return s:sub(matchstr(lnum,'\%('.self.define_pattern().'\)\zs\h\%(\k\|[:.]\)*[?!=]\='),':$','')
254261
else
255262
return ""
256263
endif

0 commit comments

Comments
 (0)