summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominique Pelle <dominique.pelle@gmail.com>2021-07-12 21:43:19 +0200
committerBram Moolenaar <Bram@vim.org>2021-07-12 21:43:19 +0200
commit042414fa0053388f9a35cad61886405507554068 (patch)
tree58d2491f9d87b5edd328037651f8663a0adb29cf
parent841e498c5d1765eab17bce5242543b47dfc25b41 (diff)
downloadvim-git-042414fa0053388f9a35cad61886405507554068.tar.gz
patch 8.2.3155: some option related code not covered by testsv8.2.3155
Problem: Some option related code not covered by tests. Solution: Add a few test cases. (Dominique Pellé, closes #8552)
-rw-r--r--src/testdir/test_options.vim44
-rw-r--r--src/testdir/test_set.vim19
-rw-r--r--src/version.c2
3 files changed, 65 insertions, 0 deletions
diff --git a/src/testdir/test_options.vim b/src/testdir/test_options.vim
index dedac5a65..e10ad5445 100644
--- a/src/testdir/test_options.vim
+++ b/src/testdir/test_options.vim
@@ -933,6 +933,28 @@ func Test_opt_local_to_global()
set autoread&
endfunc
+func Test_set_in_sandbox()
+ " Some boolean options cannot be set in sandbox, some can.
+ call assert_fails('sandbox set modelineexpr', 'E48:')
+ sandbox set number
+ call assert_true(&number)
+ set number&
+
+ " Some boolean options cannot be set in sandbox, some can.
+ if has('python') || has('python3')
+ call assert_fails('sandbox set pyxversion=3', 'E48:')
+ endif
+ sandbox set tabstop=4
+ call assert_equal(4, &tabstop)
+ set tabstop&
+
+ " Some string options cannot be set in sandbox, some can.
+ call assert_fails('sandbox set backupdir=/tmp', 'E48:')
+ sandbox set filetype=perl
+ call assert_equal('perl', &filetype)
+ set filetype&
+endfunc
+
" Test for incrementing, decrementing and multiplying a number option value
func Test_opt_num_op()
set shiftwidth=4
@@ -1149,4 +1171,26 @@ func Test_opt_errorbells()
set noerrorbells
endfunc
+func Test_opt_scrolljump()
+ help
+ resize 10
+
+ " Test with positive 'scrolljump'.
+ set scrolljump=2
+ norm! Lj
+ call assert_equal({'lnum':11, 'leftcol':0, 'col':0, 'topfill':0,
+ \ 'topline':3, 'coladd':0, 'skipcol':0, 'curswant':0},
+ \ winsaveview())
+
+ " Test with negative 'scrolljump' (percentage of window height).
+ set scrolljump=-40
+ norm! ggLj
+ call assert_equal({'lnum':11, 'leftcol':0, 'col':0, 'topfill':0,
+ \ 'topline':5, 'coladd':0, 'skipcol':0, 'curswant':0},
+ \ winsaveview())
+
+ set scrolljump&
+ bw
+endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/testdir/test_set.vim b/src/testdir/test_set.vim
index 2b1e9eeee..7215772a0 100644
--- a/src/testdir/test_set.vim
+++ b/src/testdir/test_set.vim
@@ -26,4 +26,23 @@ function Test_set_add()
let &wig = wig_save
endfunction
+
+" :set, :setlocal, :setglobal without arguments show values of options.
+func Test_set_no_arg()
+ set textwidth=79
+ let a = execute('set')
+ call assert_match("^\n--- Options ---\n.*textwidth=79\\>", a)
+ set textwidth&
+
+ setlocal textwidth=78
+ let a = execute('setlocal')
+ call assert_match("^\n--- Local option values ---\n.*textwidth=78\\>", a)
+ setlocal textwidth&
+
+ setglobal textwidth=77
+ let a = execute('setglobal')
+ call assert_match("^\n--- Global option values ---\n.*textwidth=77\\>", a)
+ setglobal textwidth&
+endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index 9159011a7..f2f229f91 100644
--- a/src/version.c
+++ b/src/version.c
@@ -756,6 +756,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 3155,
+/**/
3154,
/**/
3153,