patch 7.4.2174
Problem:    Adding duplicate flags to 'whichwrap' leaves commas behind.
Solution:   Also remove the commas. (Naruhiko Nishino)
diff --git a/src/testdir/test_options.vim b/src/testdir/test_options.vim
new file mode 100644
index 0000000..cceb180
--- /dev/null
+++ b/src/testdir/test_options.vim
@@ -0,0 +1,40 @@
+" Test for options
+
+function! Test_whichwrap()
+  set whichwrap=b,s
+  call assert_equal('b,s', &whichwrap)
+
+  set whichwrap+=h,l
+  call assert_equal('b,s,h,l', &whichwrap)
+
+  set whichwrap+=h,l
+  call assert_equal('b,s,h,l', &whichwrap)
+
+  set whichwrap+=h,l
+  call assert_equal('b,s,h,l', &whichwrap)
+
+  set whichwrap&
+endfunction
+
+function! Test_options()
+  let caught = 'ok'
+  try
+    options
+  catch
+    let caught = v:throwpoint . "\n" . v:exception
+  endtry
+  call assert_equal('ok', caught)
+
+  " close option-window
+  close
+endfunction
+
+function! Test_path_keep_commas()
+  " Test that changing 'path' keeps two commas.
+  set path=foo,,bar
+  set path-=bar
+  set path+=bar
+  call assert_equal('foo,,bar', &path)
+
+  set path&
+endfunction