view src/testdir/test_source_utf8.vim @ 12568:440d934bd616 v8.0.1162

patch 8.0.1162: shared script for tests cannot be included twice commit https://github.com/vim/vim/commit/660b85e39a48a9f2e3bd7e4d8b97d0a1b4842997 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Sep 30 14:26:58 2017 +0200 patch 8.0.1162: shared script for tests cannot be included twice Problem: Shared script for tests cannot be included twice. Solution: Include it where needed, it will "finish" if loaded again.
author Christian Brabandt <cb@256bit.org>
date Sat, 30 Sep 2017 14:30:05 +0200
parents bff8a09016a5
children aa658b33f25a
line wrap: on
line source

" Test the :source! command
if !has('multi_byte')
  finish
endif

func Test_source_utf8()
  " check that sourcing a script with 0x80 as second byte works
  new
  call setline(1, [':%s/àx/--à1234--/g', ':%s/Àx/--À1234--/g'])
  write! Xscript
  bwipe!
  new
  call setline(1, [' àx ', ' Àx '])
  source! Xscript | echo
  call assert_equal(' --à1234-- ', getline(1))
  call assert_equal(' --À1234-- ', getline(2))
  bwipe!
  call delete('Xscript')
endfunc

func Test_source_latin()
  " check that sourcing a latin1 script with a 0xc0 byte works
  new
  call setline(1, ["call feedkeys('r')", "call feedkeys('\xc0', 'xt')"])
  write! Xscript
  bwipe!
  new
  call setline(1, ['xxx'])
  source Xscript
  call assert_equal("\u00c0xx", getline(1))
  bwipe!
  call delete('Xscript')
endfunc