diff options
author | Tom Feist <shabble@metavore.org> | 2011-03-01 20:27:44 +0000 |
---|---|---|
committer | Tom Feist <shabble@metavore.org> | 2011-03-01 20:27:44 +0000 |
commit | 776cd8157739496eff1c128e4404992719354cfe (patch) | |
tree | 8764fa6120768393bd9b8fb4d4051dbda056b8c9 /vim-mode/tests.pl | |
parent | uberprompt: updated docs to clarify $uber variable, and polish help stirngs. (diff) | |
parent | vim-mode: Add tests.pl. (diff) | |
download | irssi-scripts-776cd8157739496eff1c128e4404992719354cfe.tar.gz irssi-scripts-776cd8157739496eff1c128e4404992719354cfe.zip |
Merge branch 'master' of github.com:shabble/irssi-scripts
Diffstat (limited to 'vim-mode/tests.pl')
-rw-r--r-- | vim-mode/tests.pl | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/vim-mode/tests.pl b/vim-mode/tests.pl new file mode 100644 index 0000000..2a85b29 --- /dev/null +++ b/vim-mode/tests.pl @@ -0,0 +1,48 @@ +#!/usr/bin/perl + +# Must be run in a 80x24 terminal unless a fixed POE is released. + + +use strict; +use warnings; + +use lib '../testing/blib/lib'; + +use Test::Irssi; + + +sub statusbar_mode { + my ($test, $mode) = @_; + + $test->add_pattern_match(qr/^ \[\d{2}:\d{2}\] \[\] \[1\] \[$mode\]\s+$/, + 'window_sbar', "[$mode] in vim-mode statusbar"); +} + +my $tester = Test::Irssi->new + (irssi_binary => "irssi", + irssi_homedir => "irssi"); + + +my $test; + + +$test = $tester->new_test('insert-command-mode'); + +# Make sure irssi is finished - not entirely sure why this is necessary. +$test->add_delay(3); + +# We start in insert mode. +statusbar_mode($test, 'Insert'); + +$test->add_input_sequence("\e"); +$test->add_delay(1); +statusbar_mode($test, 'Command'); + +$test->add_input_sequence("i"); +$test->add_delay(1); +statusbar_mode($test, 'Insert'); + +# Quit irssi, necessary to terminate the test. +$test->add_input_sequence("\n/quit\n"); + +$tester->run; |