changeset 7939:dcc0bd6b1574 v7.4.1265

commit https://github.com/vim/vim/commit/f416086f264c1d998863b2e600f4c14f799d0d99 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Feb 5 23:09:12 2016 +0100 patch 7.4.1265 Problem: Not all channel commands are tested. Solution: Add a test for "normal", "expr" and "redraw".
author Christian Brabandt <cb@256bit.org>
date Fri, 05 Feb 2016 23:15:04 +0100
parents f53e542f645f
children 6705a339db38
files src/testdir/test_channel.py src/testdir/test_channel.vim src/version.c
diffstat 3 files changed, 41 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/test_channel.py
+++ b/src/testdir/test_channel.py
@@ -75,6 +75,12 @@ class ThreadedTCPRequestHandler(socketse
                         print("sending: {}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
+                    elif decoded[1] == 'do normal':
+                        # Send a normal command.
+                        cmd = '["normal","G$s more\u001b"]'
+                        print("sending: {}".format(cmd))
+                        self.request.sendall(cmd.encode('utf-8'))
+                        response = "ok"
                     elif decoded[1] == 'eval-works':
                         # Send an eval request.  We ignore the response.
                         cmd = '["eval","\\"foo\\" . 123", -1]'
@@ -93,6 +99,22 @@ class ThreadedTCPRequestHandler(socketse
                         print("sending: {}".format(cmd))
                         self.request.sendall(cmd.encode('utf-8'))
                         response = "ok"
+                    elif decoded[1] == 'an expr':
+                        # Send an expr request.
+                        cmd = '["expr","setline(\\"$\\", [\\"one\\",\\"two\\",\\"three\\"])"]'
+                        print("sending: {}".format(cmd))
+                        self.request.sendall(cmd.encode('utf-8'))
+                        response = "ok"
+                    elif decoded[1] == 'redraw':
+                        cmd = '["redraw",""]'
+                        print("sending: {}".format(cmd))
+                        self.request.sendall(cmd.encode('utf-8'))
+                        response = "ok"
+                    elif decoded[1] == 'redraw!':
+                        cmd = '["redraw","force"]'
+                        print("sending: {}".format(cmd))
+                        self.request.sendall(cmd.encode('utf-8'))
+                        response = "ok"
                     elif decoded[1] == 'empty-request':
                         cmd = '[]'
                         print("sending: {}".format(cmd))
--- a/src/testdir/test_channel.vim
+++ b/src/testdir/test_channel.vim
@@ -93,6 +93,10 @@ func Test_communicate()
   call assert_equal('added1', getline(line('$') - 1))
   call assert_equal('added2', getline('$'))
 
+  call assert_equal('ok', ch_sendexpr(handle, 'do normal'))
+  sleep 10m
+  call assert_equal('added more', getline('$'))
+
   " Send a request with a specific handler.
   call ch_sendexpr(handle, 'hello!', 's:RequestHandler')
   sleep 10m
@@ -114,6 +118,19 @@ func Test_communicate()
   sleep 10m
   call assert_equal([-2, 'ERROR'], ch_sendexpr(handle, 'eval-result'))
 
+  " Send an expr request
+  call assert_equal('ok', ch_sendexpr(handle, 'an expr'))
+  sleep 10m
+  call assert_equal('one', getline(line('$') - 2))
+  call assert_equal('two', getline(line('$') - 1))
+  call assert_equal('three', getline('$'))
+
+  " Request a redraw, we don't check for the effect.
+  call assert_equal('ok', ch_sendexpr(handle, 'redraw'))
+  call assert_equal('ok', ch_sendexpr(handle, 'redraw!'))
+
+  call assert_equal('ok', ch_sendexpr(handle, 'empty-request'))
+
   " make the server quit, can't check if this works, should not hang.
   call ch_sendexpr(handle, '!quit!', 0)
 
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1265,
+/**/
     1264,
 /**/
     1263,