Skip to content

camelpunch/test_server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Test Server

DEPRECATED in favour of Luan's fork and overhaul: https://github.com/luan/vipe

This was borne out of frustration with the current state of DRB, autospec / test / rspactor et al. They were just taking too long to set up for me.

Maybe someone else can use this as a base for their own particular solution. You can use this approach to do anything you like with the file you're currently editing, or anything you like with whatever you throw at the named pipe.

Installation

  • Install into your ~/.vim/bundle (assuming you use Pathogen)
  • Run test_server.rb in a terminal
  • Fire up Vim and open a model, controller, spec or feature file.
  • Type ':RunTest' or ':RunTestLine' for example under line, ':RunTestAgain' for previous run
  • See your test run in the console you ran the server in
  • ???
  • Eat flapjacks

I recommend binding commands to keys, for example:

map <F12> :w<CR>:RunTest<CR>
imap <F12> <ESC><F12>
map <F11> :w<CR>:RunTestLine<CR>
imap <F11> <ESC><F11>
map <F10> :w<CR>:RunTestAgain<CR>
imap <F10> <ESC><F10>
map <F9> :w<CR>:RunTestPrevious<CR>
imap <F9> <ESC><F9>

In your ~/.vimrc will bind F12 to save-and-run-test, F11 to save-and-run-line, F10 to save-and-run-test-again and F9 to save-and-run-previous-test.

Further configuration

Say you wanted to add the ability to run JavaScript testing with jasmine-headless-webkit. You'd want to add a new test command for a test type:

:let g:test_cmd_for_test_pattern['.js$'] = 'jasmine-headless-webkit'

If you also wanted to run tests from an associated source file, and if your source JavaScript files were in public/javascripts, you'd do:

:let g:test_cmd_for_src_types['.js$'] = 'jasmine-headless-webkit'
:call add(g:non_test_file_replacements, ['app/assets/javascripts/', 'spec/javascripts/'])

Alternatively, exhaustively set these globals before the plugin is loaded, or crack open the test_client.vim file and edit the globals to taste.

About

Send test commands to rspec / cucumber over a named pipe

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published