aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2020-10-23 00:52:29 -0400
committerJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2020-10-23 08:57:16 -0400
commit78ec28bca8eb868948ac4ad41b74148874f5a3bb (patch)
tree854f215a410fc60151ab58652dcb0c9baaf958e7
parent2894649c2ea89642705cfe3b1e7912335a13bad5 (diff)
downloadrneovim-78ec28bca8eb868948ac4ad41b74148874f5a3bb.tar.gz
rneovim-78ec28bca8eb868948ac4ad41b74148874f5a3bb.tar.bz2
rneovim-78ec28bca8eb868948ac4ad41b74148874f5a3bb.zip
vim-patch:8.2.0912: a few test cases for CJK formatting are disabled
Problem: A few test cases for CJK formatting are disabled. Solution: Fix the tests and enable them. (closes vim/vim#6212) https://github.com/vim/vim/commit/11f1ffd18282c44ca4b74cf7cf336da6d09e396d
-rw-r--r--src/nvim/testdir/test_cjk_linebreak.vim40
1 files changed, 23 insertions, 17 deletions
diff --git a/src/nvim/testdir/test_cjk_linebreak.vim b/src/nvim/testdir/test_cjk_linebreak.vim
index 7a1cedeeac..dfaa8fa1af 100644
--- a/src/nvim/testdir/test_cjk_linebreak.vim
+++ b/src/nvim/testdir/test_cjk_linebreak.vim
@@ -1,36 +1,39 @@
scriptencoding utf-8
-func Run_cjk_linebreak_after()
+func Run_cjk_linebreak_after(rigorous)
set textwidth=12
for punct in [
\ '!', '%', ')', ',', ':', ';', '>', '?', ']', '}', '’', '”', '†', '‡',
\ '…', '‰', '‱', '‼', '⁇', '⁈', '⁉', '℃', '℉', '、', '。', '〉', '》',
\ '」', '』', '】', '〕', '〗', '〙', '〛', '!', ')', ',', '.', ':',
\ ';', '?', ']', '}']
- call setline('.', '这是一个测试'.punct.'试试 CJK 行禁则补丁。')
+ call setline('.', '这是一个测试' .. punct.'试试 CJK 行禁则补丁。')
normal gqq
- call assert_equal('这是一个测试'.punct, getline(1))
+ if a:rigorous
+ call assert_equal('这是一个测', getline(1))
+ else
+ call assert_equal('这是一个测试' .. punct, getline(1))
+ endif
%d_
endfor
endfunc
func Test_cjk_linebreak_after()
set formatoptions=croqn2mB1j
- call Run_cjk_linebreak_after()
+ call Run_cjk_linebreak_after(0)
endfunc
-" TODO: this test fails
-"func Test_cjk_linebreak_after_rigorous()
-" set formatoptions=croqn2mB1j]
-" call Run_cjk_linebreak_after()
-"endfunc
+func Test_cjk_linebreak_after_rigorous()
+ set formatoptions=croqn2mB1j]
+ call Run_cjk_linebreak_after(1)
+endfunc
func Run_cjk_linebreak_before()
set textwidth=12
for punct in [
\ '(', '<', '[', '`', '{', '‘', '“', '〈', '《', '「', '『', '【', '〔',
\ '〖', '〘', '〚', '(', '[', '{']
- call setline('.', '这是个测试'.punct.'试试 CJK 行禁则补丁。')
+ call setline('.', '这是个测试' .. punct.'试试 CJK 行禁则补丁。')
normal gqq
call assert_equal('这是个测试', getline(1))
%d_
@@ -47,13 +50,16 @@ func Test_cjk_linebreak_before_rigorous()
call Run_cjk_linebreak_before()
endfunc
-func Run_cjk_linebreak_nobetween()
+func Run_cjk_linebreak_nobetween(rigorous)
" …… must not start a line
call setline('.', '这是个测试……试试 CJK 行禁则补丁。')
set textwidth=12 ambiwidth=double
normal gqq
- " TODO: this fails
- " call assert_equal('这是个测试……', getline(1))
+ if a:rigorous
+ call assert_equal('这是个测', getline(1))
+ else
+ call assert_equal('这是个测试……', getline(1))
+ endif
%d_
call setline('.', '这是一个测试……试试 CJK 行禁则补丁。')
@@ -71,21 +77,21 @@ endfunc
func Test_cjk_linebreak_nobetween()
set formatoptions=croqn2mB1j
- call Run_cjk_linebreak_nobetween()
+ call Run_cjk_linebreak_nobetween(0)
endfunc
func Test_cjk_linebreak_nobetween_rigorous()
set formatoptions=croqn2mB1j]
- call Run_cjk_linebreak_nobetween()
+ call Run_cjk_linebreak_nobetween(1)
endfunc
func Test_cjk_linebreak_join_punct()
for punct in ['——', '〗', ',', '。', '……']
- call setline(1, '文本文本'.punct)
+ call setline(1, '文本文本' .. punct)
call setline(2, 'English')
set formatoptions=croqn2mB1j
normal ggJ
- call assert_equal('文本文本'.punct.'English', getline(1))
+ call assert_equal('文本文本' .. punct.'English', getline(1))
%d_
endfor
endfunc