view src/testdir/test_hardcopy.vim @ 11313:327a04a762f6 v8.0.0542

patch 8.0.0542: getpos() can return a negative line number commit https://github.com/vim/vim/commit/a1d5fa65bc7e8a548858e9c295a192b63dcd011b Author: Bram Moolenaar <Bram@vim.org> Date: Mon Apr 3 22:02:55 2017 +0200 patch 8.0.0542: getpos() can return a negative line number Problem: getpos() can return a negative line number. (haya14busa) Solution: Handle a zero topline and botline. (closes https://github.com/vim/vim/issues/1613)
author Christian Brabandt <cb@256bit.org>
date Mon, 03 Apr 2017 22:15:05 +0200
parents a2c27f6aaf3a
children 6fff8b86e9bd
line wrap: on
line source

" Test :hardcopy

func Test_printoptions_parsing()
  " Only test that this doesn't throw an error.
  set printoptions=left:5in,right:10pt,top:8mm,bottom:2pc
  set printoptions=left:2in,top:30pt,right:16mm,bottom:3pc
  set printoptions=header:3,syntax:y,number:7,wrap:n
  set printoptions=duplex:short,collate:n,jobsplit:y,portrait:n
  set printoptions=paper:10x14
  set printoptions=paper:A3
  set printoptions=paper:A4
  set printoptions=paper:A5
  set printoptions=paper:B4
  set printoptions=paper:B5
  set printoptions=paper:executive
  set printoptions=paper:folio
  set printoptions=paper:ledger
  set printoptions=paper:legal
  set printoptions=paper:letter
  set printoptions=paper:quarto
  set printoptions=paper:statement
  set printoptions=paper:tabloid
  set printoptions=formfeed:y
  set printoptions=
  set printoptions&

  call assert_fails('set printoptions=paper', 'E550:')
  call assert_fails('set printoptions=shredder:on', 'E551:')
  call assert_fails('set printoptions=left:no', 'E552:')
endfunc

func Test_printmbfont_parsing()
  " Only test that this doesn't throw an error.
  set printmbfont=r:WadaMin-Regular,b:WadaMin-Bold,i:WadaMin-Italic,o:WadaMin-Bold-Italic,c:yes,a:no
  set printmbfont=
  set printmbfont&
endfunc

func Test_printheader_parsing()
  " Only test that this doesn't throw an error.
  set printheader=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
  set printheader=%<%f%h%m%r%=%b\ 0x%B\ \ %l,%c%V\ %P
  set printheader=%<%f%=\ [%1*%M%*%n%R%H]\ %-19(%3l,%02c%03V%)%O'%02b'
  set printheader=...%r%{VarExists('b:gzflag','\ [GZ]')}%h...
  set printheader=
  set printheader&
endfunc

" Test that :hardcopy produces a non-empty file.
" We don't check much of the contents.
func Test_with_syntax()
  if has('postscript')
    set printoptions=syntax:y
    syn on
    hardcopy > Xhardcopy
    let lines = readfile('Xhardcopy')
    call assert_true(len(lines) > 20)
    call assert_true(lines[0] =~ 'PS-Adobe')
    call delete('Xhardcopy')
    set printoptions&
  endif
endfunc