@@ -2268,7 +2268,12 @@ function! s:observerList(A,L,P)
22682268endfunction
22692269
22702270function ! s: fixturesList (A,L,P )
2271- return s: completion_filter (rails#app ().relglob (" test/fixtures/" ," **/*" )+ rails#app ().relglob (" spec/fixtures/" ," **/*" ),a: A )
2271+ return s: completion_filter (
2272+ \ rails#app ().relglob (' test/fixtures/' , ' **/*' ) +
2273+ \ rails#app ().relglob (' spec/fixtures/' , ' **/*' ) +
2274+ \ rails#app ().relglob (' test/factories/' , ' **/*' ) +
2275+ \ rails#app ().relglob (' spec/factories/' , ' **/*' ),
2276+ \ a: A )
22722277endfunction
22732278
22742279function ! s: localeList (A,L,P )
@@ -2551,11 +2556,12 @@ function! s:fixturesEdit(cmd,...)
25512556 let e = fnamemodify (c ,' :e' )
25522557 let e = e == ' ' ? e : ' .' .e
25532558 let c = fnamemodify (c ,' :r' )
2554- let file = get (rails#app ().test_suites (),0 ,' test' ).' /fixtures/' .c .e
2555- if file = ~ ' \.\w\+$' && rails#app ().find_file (c .e ,[" test/fixtures" ," spec/fixtures" ]) == # ' '
2559+ let dirs = [' test/fixtures' , ' spec/fixtures' , ' test/factories' , ' spec/factories' ]
2560+ let file = get (filter (copy (dirs), ' isdirectory(rails#app().path(v:val))' ), 0 , dirs[0 ]).' /' .c .e
2561+ if file = ~ ' \.\w\+$' && rails#app ().find_file (c .e , dirs) == # ' '
25562562 call s: edit (a: cmd ,file )
25572563 else
2558- call s: findedit (a: cmd ,rails#app ().find_file (c .e ,[ " test/fixtures " , " spec/fixtures " , " test/factories " , " spec/factories " ],[ " .yml" , " .csv" , " .rb" ], file ))
2564+ call s: findedit (a: cmd , rails#app ().find_file (c .e , dirs, [ ' .yml' , ' .csv' , ' .rb' ], file ))
25592565 endif
25602566endfunction
25612567
0 commit comments