Cómo ejecutar las pruebas en la pista de Vim script

Aprende a probar tus ejercicios de Vim script en Exercism


Este track usa dos herramientas para ejecutar el conjunto de tests y garantizar las buenas prácticas:

  1. vader.vim
  2. vint

Ejecutar los tests

  1. Instala vader.vim.
  2. Abre tu solución:
    $ vim exercise.vim
    
  3. Carga el archivo actual para que sus funciones globales estén disponibles en Vim:
    :source %
    
  4. Ejecuta los tests:
    :Vader exercise.vader
    

Las rutas pueden variar.

Si quieres un atajo cómodo para los pasos anteriores, añade esto a tu vimrc:

function! s:exercism_tests()
  if expand('%:e') == 'vim'
    let testfile = printf('%s/%s.vader', expand('%:p:h'),
          \ tr(expand('%:p:h:t'), '-', '_'))
    if !filereadable(testfile)
      echoerr 'File does not exist: '. testfile
      return
    endif
    source %
    execute 'Vader' testfile
  else
    let sourcefile = printf('%s/%s.vim', expand('%:p:h'),
          \ tr(expand('%:p:h:t'), '-', '_'))
    if !filereadable(sourcefile)
      echoerr 'File does not exist: '. sourcefile
      return
    endif
    execute 'source' sourcefile
    Vader
  endif
endfunction

autocmd BufRead *.{vader,vim}
      \ command! -buffer Test call s:exercism_tests()

Después, abre cualquier archivo .vim o .vader desde el directorio de un ejercicio y ejecuta el comando :Test.

Linting de archivos de Vim

  1. Instala vint.
  2. Pasa el linter de forma recursiva a todos los archivos de Vim:
    $ vint .
    

Para obtener información más detallada sobre el track de Vim script, consulta la página de ayuda.