diff src/testdir/test_startup.vim @ 9804:4ef933b816e7 v7.4.2177

commit https://github.com/vim/vim/commit/ba98bef1910094179bf90b9467b6e2d2f9462601 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Aug 7 15:51:39 2016 +0200 patch 7.4.2177 Problem: No testing for -C and -N command line flags, file arguments, startuptime. Solution: Add tests.
author Christian Brabandt <cb@256bit.org>
date Sun, 07 Aug 2016 16:00:05 +0200
parents 1f1ed7959860
children 108b62925cb0
line wrap: on
line diff
--- a/src/testdir/test_startup.vim
+++ b/src/testdir/test_startup.vim
@@ -69,7 +69,7 @@ func Test_help_arg()
   if RunVim([], [], '--help >Xtestout')
     let lines = readfile('Xtestout')
     call assert_true(len(lines) > 20)
-    call assert_true(lines[0] =~ 'Vi IMproved')
+    call assert_match('Vi IMproved', lines[0])
 
     " check if  couple of lines are there
     let found = 0
@@ -85,3 +85,87 @@ func Test_help_arg()
   endif
   call delete('Xtestout')
 endfunc
+
+func Test_compatible_args()
+  let after = [
+	\ 'call writefile([string(&compatible)], "Xtestout")',
+	\ 'set viminfo+=nviminfo',
+	\ 'quit',
+	\ ]
+  if RunVim([], after, '-C')
+    let lines = readfile('Xtestout')
+    call assert_equal('1', lines[0])
+  endif
+
+  if RunVim([], after, '-N')
+    let lines = readfile('Xtestout')
+    call assert_equal('0', lines[0])
+  endif
+
+  call delete('Xtestout')
+endfunc
+
+func Test_file_args()
+  let after = [
+	\ 'call writefile(argv(), "Xtestout")',
+	\ 'qall',
+	\ ]
+  if RunVim([], after, '')
+    let lines = readfile('Xtestout')
+    call assert_equal(0, len(lines))
+  endif
+
+  if RunVim([], after, 'one')
+    let lines = readfile('Xtestout')
+    call assert_equal(1, len(lines))
+    call assert_equal('one', lines[0])
+  endif
+
+  if RunVim([], after, 'one two three')
+    let lines = readfile('Xtestout')
+    call assert_equal(3, len(lines))
+    call assert_equal('one', lines[0])
+    call assert_equal('two', lines[1])
+    call assert_equal('three', lines[2])
+  endif
+
+  if RunVim([], after, 'one -c echo two')
+    let lines = readfile('Xtestout')
+    call assert_equal(2, len(lines))
+    call assert_equal('one', lines[0])
+    call assert_equal('two', lines[1])
+  endif
+
+  if RunVim([], after, 'one -- -c echo two')
+    let lines = readfile('Xtestout')
+    call assert_equal(4, len(lines))
+    call assert_equal('one', lines[0])
+    call assert_equal('-c', lines[1])
+    call assert_equal('echo', lines[2])
+    call assert_equal('two', lines[3])
+  endif
+
+  call delete('Xtestout')
+endfunc
+
+func Test_startuptime()
+  if !has('startuptime')
+    return
+  endif
+  let after = ['qall']
+  if RunVim([], after, '--startuptime Xtestout one')
+    let lines = readfile('Xtestout')
+    let expected = ['--- VIM STARTING ---', 'parsing arguments',
+	  \ 'shell init', 'inits 3', 'start termcap', 'opening buffers']
+    let found = []
+    for line in lines
+      for exp in expected
+	if line =~ exp
+	  call add(found, exp)
+	endif
+      endfor
+    endfor
+    call assert_equal(expected, found)
+  endif
+  call delete('Xtestout')
+endfunc