]> granicus.if.org Git - vim/commitdiff
patch 8.0.0682: no test for synIDtrans() v8.0.0682
authorBram Moolenaar <Bram@vim.org>
Tue, 27 Jun 2017 13:43:49 +0000 (15:43 +0200)
committerBram Moolenaar <Bram@vim.org>
Tue, 27 Jun 2017 13:43:49 +0000 (15:43 +0200)
Problem:    No test for synIDtrans().
Solution:   Add a test. (Dominique Pelle, closes #1796)

src/testdir/test_syntax.vim
src/version.c

index fef63418fd0b7ba99891b64c69043f75986dd9cb..33d7203e3323677dcbf30fd7fd690ebae65eed85 100644 (file)
@@ -418,7 +418,7 @@ func Test_bg_detection()
   hi Normal ctermbg=15
   call assert_equal('light', &bg)
 
-  " manually-set &bg takes precendence over auto-detection
+  " manually-set &bg takes precedence over auto-detection
   set bg=light
   hi Normal ctermbg=4
   call assert_equal('light', &bg)
@@ -461,7 +461,6 @@ func Test_syntax_hangs()
   bwipe!
 endfunc
 
-
 func Test_conceal()
   if !has('conceal')
     return
@@ -497,3 +496,27 @@ func Test_conceal()
   set conceallevel&
   bw!
 endfunc
+
+fun Test_synstack_synIDtrans()
+  new
+  setfiletype c
+  syntax on
+  call setline(1, ' /* A comment with a TODO */')
+
+  call assert_equal([], synstack(1, 1))
+
+  norm f/
+  call assert_equal(['cComment', 'cCommentStart'], map(synstack(line("."), col(".")), 'synIDattr(v:val, "name")'))
+  call assert_equal(['Comment', 'Comment'],        map(synstack(line("."), col(".")), 'synIDattr(synIDtrans(v:val), "name")'))
+
+  norm fA
+  call assert_equal(['cComment'], map(synstack(line("."), col(".")), 'synIDattr(v:val, "name")'))
+  call assert_equal(['Comment'],  map(synstack(line("."), col(".")), 'synIDattr(synIDtrans(v:val), "name")'))
+
+  norm fT
+  call assert_equal(['cComment', 'cTodo'], map(synstack(line("."), col(".")), 'synIDattr(v:val, "name")'))
+  call assert_equal(['Comment', 'Todo'],   map(synstack(line("."), col(".")), 'synIDattr(synIDtrans(v:val), "name")'))
+
+  syn clear
+  bw!
+endfunc
index b06f9383ffe52375af69531829ef2acdd55877c2..c1d5ec84146361fa8e171ea0378b221d59126ee5 100644 (file)
@@ -764,6 +764,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    682,
 /**/
     681,
 /**/