Testen im Vim script-Track

Lerne, wie du deine Übungen zu Vim script auf Exercism testest


Dieser Track verwendet zwei Tools, um die Testsuite auszuführen und bewährte Vorgehensweisen sicherzustellen:

  1. vader.vim
  2. vint

Tests ausführen

  1. Installiere vader.vim.
  2. Öffne deine Lösung:
    $ vim exercise.vim
    
  3. Lade die aktuelle Datei, damit ihre globalen Funktionen für Vim verfügbar werden:
    :source %
    
  4. Führe die Tests aus:
    :Vader exercise.vader
    

Die Pfade können variieren.

Wenn du eine bequeme Abkürzung für die obigen Schritte möchtest, schreib Folgendes in deine 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()

Öffne danach eine beliebige .vim- oder .vader-Datei aus einem Übungsverzeichnis und führe den Befehl :Test aus.

Vim-Dateien linten

  1. Installiere vint.
  2. Linte alle Vim-Dateien rekursiv:
    $ vint .
    

Ausführlichere Informationen zum Vim-script-Track findest du auf der Hilfeseite.