diff src/testdir/test_buffer.vim @ 25234:34a6db7af738 v8.2.3153

patch 8.2.3153: URLs with a dash in the scheme are not recognized Commit: https://github.com/vim/vim/commit/7b7a118e74d25ff35cd277c2bb5191ae44bb20b2 Author: Tsuyoshi CHO <Tsuyoshi.CHO@Gmail.com> Date: Sun Jul 11 21:51:17 2021 +0200 patch 8.2.3153: URLs with a dash in the scheme are not recognized Problem: URLs with a dash in the scheme are not recognized. Solution: Allow for a scheme with a dash, but not at the start or end. (Tsuyoshi CHO, closes #8299)
author Bram Moolenaar <Bram@vim.org>
date Sun, 11 Jul 2021 22:00:05 +0200
parents d7644bffe128
children 856b56468157
line wrap: on
line diff
--- a/src/testdir/test_buffer.vim
+++ b/src/testdir/test_buffer.vim
@@ -381,6 +381,35 @@ func Test_balt()
   call assert_equal('OtherBuffer', bufname())
 endfunc
 
+" Test for buffer match URL(scheme) check
+" scheme is alpha and inner hyphen only.
+func Test_buffer_scheme()
+  CheckMSWindows
+
+  set noshellslash
+  %bwipe!
+  let bufnames = [
+    \ #{id: 'b0', name: 'test://xyz/foo/b0'    , match: 1},
+    \ #{id: 'b1', name: 'test+abc://xyz/foo/b1', match: 0},
+    \ #{id: 'b2', name: 'test_abc://xyz/foo/b2', match: 0},
+    \ #{id: 'b3', name: 'test-abc://xyz/foo/b3', match: 1},
+    \ #{id: 'b4', name: '-test://xyz/foo/b4'   , match: 0},
+    \ #{id: 'b5', name: 'test-://xyz/foo/b5'   , match: 0},
+    \]
+  for buf in bufnames
+    new `=buf.name`
+    if buf.match
+      call assert_equal(buf.name,    getbufinfo(buf.id)[0].name)
+    else
+      " slashes will have become backslashes
+      call assert_notequal(buf.name, getbufinfo(buf.id)[0].name)
+    endif
+    bwipe
+  endfor
+
+  set shellslash&
+endfunc
+
 " Test for the 'maxmem' and 'maxmemtot' options
 func Test_buffer_maxmem()
   " use 1KB per buffer and 2KB for all the buffers