view src/testdir/test_display.vim @ 11199:e08ead1d269f v8.0.0486

patch 8.0.0486: crash and endless loop when closing windows in autocmd commit https://github.com/vim/vim/commit/8c752bd6c4af54c0b7bac35a39acc2bf16015f85 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Mar 19 17:09:56 2017 +0100 patch 8.0.0486: crash and endless loop when closing windows in autocmd Problem: Crash and endless loop when closing windows in a SessionLoadPost autocommand. Solution: Check for valid tabpage. (partly neovim #6308)
author Christian Brabandt <cb@256bit.org>
date Sun, 19 Mar 2017 17:15:05 +0100
parents 232a0d1d8f24
children b25895ab67be
line wrap: on
line source

" Test for displaying stuff
if !has('gui_running') && has('unix')
  set term=ansi
endif

function! s:screenline(lnum, nr) abort
  let line = []
  for j in range(a:nr)
    for c in range(1, winwidth(0))
        call add(line, nr2char(screenchar(a:lnum+j, c)))
    endfor
    call add(line, "\n")
  endfor
  return join(line, '')
endfunction

function! Test_display_foldcolumn()
  new
  vnew
  vert resize 25
  call assert_equal(25, winwidth(winnr()))
  set isprint=@

  1put='e more noise blah blah‚ more stuff here'

  let expect = "e more noise blah blah<82\n> more stuff here        \n"

  call cursor(2, 1)
  norm! zt
  redraw!
  call assert_equal(expect, s:screenline(1,2))
  set fdc=2
  redraw!
  let expect = "  e more noise blah blah<\n  82> more stuff here    \n"
  call assert_equal(expect, s:screenline(1,2))

  quit!
  quit!
endfunction