|  |  |  | @@ -36,7 +36,7 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 1: Find this C-Symbol | 
		
	
		
			
				|  |  |  |  |     for cmd in ['cs find s main', 'cs find 0 main'] | 
		
	
		
			
				|  |  |  |  |       let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |       " Test 1.1 test where it moves the cursor | 
		
	
		
			
				|  |  |  |  |       call assert_equal('main(void)', getline('.')) | 
		
	
		
			
				|  |  |  |  |       " Test 1.2 test the output of the :cs command | 
		
	
	
		
			
				
					
					|  |  |  | @@ -51,21 +51,21 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 3: Find functions called by this function | 
		
	
		
			
				|  |  |  |  |     for cmd in ['cs find d test_mf_hash', 'cs find 2 test_mf_hash'] | 
		
	
		
			
				|  |  |  |  |       let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |       call assert_match('\n(1 of 42): <<mf_hash_init>> mf_hash_init(&ht);', a) | 
		
	
		
			
				|  |  |  |  |       call assert_equal('    mf_hash_init(&ht);', getline('.')) | 
		
	
		
			
				|  |  |  |  |     endfor | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 4: Find functions calling this function | 
		
	
		
			
				|  |  |  |  |     for cmd in ['cs find c test_mf_hash', 'cs find 3 test_mf_hash'] | 
		
	
		
			
				|  |  |  |  |       let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |       call assert_match('\n(1 of 1): <<main>> test_mf_hash();', a) | 
		
	
		
			
				|  |  |  |  |       call assert_equal('    test_mf_hash();', getline('.')) | 
		
	
		
			
				|  |  |  |  |     endfor | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 5: Find this text string | 
		
	
		
			
				|  |  |  |  |     for cmd in ['cs find t Bram', 'cs find 4 Bram'] | 
		
	
		
			
				|  |  |  |  |       let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |       call assert_match('(1 of 1): <<<unknown>>>  \* VIM - Vi IMproved^Iby Bram Moolenaar', a) | 
		
	
		
			
				|  |  |  |  |       call assert_equal(' * VIM - Vi IMproved	by Bram Moolenaar', getline('.')) | 
		
	
		
			
				|  |  |  |  |     endfor | 
		
	
	
		
			
				
					
					|  |  |  | @@ -73,7 +73,7 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     " Test 6: Find this egrep pattern | 
		
	
		
			
				|  |  |  |  |     " test all matches returned by cscope | 
		
	
		
			
				|  |  |  |  |     for cmd in ['cs find e ^\#includ.', 'cs find 6 ^\#includ.'] | 
		
	
		
			
				|  |  |  |  |       let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |       call assert_match('\n(1 of 3): <<<unknown>>> #include <assert.h>', a) | 
		
	
		
			
				|  |  |  |  |       call assert_equal('#include <assert.h>', getline('.')) | 
		
	
		
			
				|  |  |  |  |       cnext | 
		
	
	
		
			
				
					
					|  |  |  | @@ -84,7 +84,7 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     endfor | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 7: Find the same egrep pattern using lcscope this time. | 
		
	
		
			
				|  |  |  |  |     let a=execute('lcs find e ^\#includ.') | 
		
	
		
			
				|  |  |  |  |     let a = execute('lcs find e ^\#includ.') | 
		
	
		
			
				|  |  |  |  |     call assert_match('\n(1 of 3): <<<unknown>>> #include <assert.h>', a) | 
		
	
		
			
				|  |  |  |  |     call assert_equal('#include <assert.h>', getline('.')) | 
		
	
		
			
				|  |  |  |  |     lnext | 
		
	
	
		
			
				
					
					|  |  |  | @@ -96,7 +96,7 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     " Test 8: Find this file | 
		
	
		
			
				|  |  |  |  |     for cmd in ['cs find f Xmemfile_test.c', 'cs find 7 Xmemfile_test.c'] | 
		
	
		
			
				|  |  |  |  |       enew | 
		
	
		
			
				|  |  |  |  |       let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |       call assert_true(a =~ '"Xmemfile_test.c" \d\+L, \d\+C') | 
		
	
		
			
				|  |  |  |  |       call assert_equal('Xmemfile_test.c', @%) | 
		
	
		
			
				|  |  |  |  |     endfor | 
		
	
	
		
			
				
					
					|  |  |  | @@ -104,7 +104,7 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     " Test 9: Find files #including this file | 
		
	
		
			
				|  |  |  |  |     for cmd in ['cs find i assert.h', 'cs find 8 assert.h'] | 
		
	
		
			
				|  |  |  |  |       enew | 
		
	
		
			
				|  |  |  |  |       let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let alines = split(a, '\n', 1) | 
		
	
		
			
				|  |  |  |  |       call assert_equal('', alines[0]) | 
		
	
		
			
				|  |  |  |  |       call assert_true(alines[1] =~ '"Xmemfile_test.c" \d\+L, \d\+C') | 
		
	
	
		
			
				
					
					|  |  |  | @@ -118,11 +118,11 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     " Test 11: Find places where this symbol is assigned a value | 
		
	
		
			
				|  |  |  |  |     " this needs a cscope >= 15.8 | 
		
	
		
			
				|  |  |  |  |     " unfortunately, Travis has cscope version 15.7 | 
		
	
		
			
				|  |  |  |  |     let cscope_version=systemlist('cscope --version')[0] | 
		
	
		
			
				|  |  |  |  |     let cs_version=str2float(matchstr(cscope_version, '\d\+\(\.\d\+\)\?')) | 
		
	
		
			
				|  |  |  |  |     let cscope_version = systemlist('cscope --version')[0] | 
		
	
		
			
				|  |  |  |  |     let cs_version = str2float(matchstr(cscope_version, '\d\+\(\.\d\+\)\?')) | 
		
	
		
			
				|  |  |  |  |     if cs_version >= 15.8 | 
		
	
		
			
				|  |  |  |  |       for cmd in ['cs find a item', 'cs find 9 item'] | 
		
	
		
			
				|  |  |  |  |         let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |         let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |         call assert_equal(['', '(1 of 4): <<test_mf_hash>> item = (mf_hashitem_T *)lalloc_clear(sizeof(mf_hashtab_T), FALSE);'], split(a, '\n', 1)) | 
		
	
		
			
				|  |  |  |  |         call assert_equal('	item = (mf_hashitem_T *)lalloc_clear(sizeof(mf_hashtab_T), FALSE);', getline('.')) | 
		
	
		
			
				|  |  |  |  |         cnext | 
		
	
	
		
			
				
					
					|  |  |  | @@ -135,18 +135,18 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     endif | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 12: leading whitespace is not removed for cscope find text | 
		
	
		
			
				|  |  |  |  |     let a=execute('cscope find t     test_mf_hash') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cscope find t     test_mf_hash') | 
		
	
		
			
				|  |  |  |  |     call assert_equal(['', '(1 of 1): <<<unknown>>>     test_mf_hash();'], split(a, '\n', 1)) | 
		
	
		
			
				|  |  |  |  |     call assert_equal('    test_mf_hash();', getline('.')) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 13: test with scscope | 
		
	
		
			
				|  |  |  |  |     let a=execute('scs find t Bram') | 
		
	
		
			
				|  |  |  |  |     let a = execute('scs find t Bram') | 
		
	
		
			
				|  |  |  |  |     call assert_match('(1 of 1): <<<unknown>>>  \* VIM - Vi IMproved^Iby Bram Moolenaar', a) | 
		
	
		
			
				|  |  |  |  |     call assert_equal(' * VIM - Vi IMproved	by Bram Moolenaar', getline('.')) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 14: cscope help | 
		
	
		
			
				|  |  |  |  |     for cmd in ['cs', 'cs help', 'cs xxx'] | 
		
	
		
			
				|  |  |  |  |       let a=execute(cmd) | 
		
	
		
			
				|  |  |  |  |       let a = execute(cmd) | 
		
	
		
			
				|  |  |  |  |       call assert_match('^cscope commands:\n', a) | 
		
	
		
			
				|  |  |  |  |       call assert_match('\nadd  :', a) | 
		
	
		
			
				|  |  |  |  |       call assert_match('\nfind :', a) | 
		
	
	
		
			
				
					
					|  |  |  | @@ -155,25 +155,25 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |       call assert_match('\nreset: Reinit all connections', a) | 
		
	
		
			
				|  |  |  |  |       call assert_match('\nshow : Show connections', a) | 
		
	
		
			
				|  |  |  |  |     endfor | 
		
	
		
			
				|  |  |  |  |     let a=execute('scscope help') | 
		
	
		
			
				|  |  |  |  |     let a = execute('scscope help') | 
		
	
		
			
				|  |  |  |  |     call assert_match('This cscope command does not support splitting the window\.', a) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 15: reset connections | 
		
	
		
			
				|  |  |  |  |     let a=execute('cscope reset') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cscope reset') | 
		
	
		
			
				|  |  |  |  |     call assert_match('\nAdded cscope database.*Xcscope.out (#0)', a) | 
		
	
		
			
				|  |  |  |  |     call assert_match('\nAll cscope databases reset', a) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 16: cscope show | 
		
	
		
			
				|  |  |  |  |     let a=execute('cscope show') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cscope show') | 
		
	
		
			
				|  |  |  |  |     call assert_match('\n 0 \d\+.*Xcscope.out\s*<none>', a) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 17: cstag and 'csto' option | 
		
	
		
			
				|  |  |  |  |     set csto=0 | 
		
	
		
			
				|  |  |  |  |     let a=execute('cstag TEST_COUNT') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cstag TEST_COUNT') | 
		
	
		
			
				|  |  |  |  |     call assert_match('(1 of 1): <<TEST_COUNT>> #define TEST_COUNT 50000', a) | 
		
	
		
			
				|  |  |  |  |     call assert_equal('#define TEST_COUNT 50000', getline('.')) | 
		
	
		
			
				|  |  |  |  |     set csto=1 | 
		
	
		
			
				|  |  |  |  |     let a=execute('cstag index_to_key') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cstag index_to_key') | 
		
	
		
			
				|  |  |  |  |     call assert_match('(1 of 1): <<index_to_key>> #define index_to_key(i) ((i) ^ 15167)', a) | 
		
	
		
			
				|  |  |  |  |     call assert_equal('#define index_to_key(i) ((i) ^ 15167)', getline('.')) | 
		
	
		
			
				|  |  |  |  |     call assert_fails('cstag xxx', 'E257:') | 
		
	
	
		
			
				
					
					|  |  |  | @@ -183,10 +183,10 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     set nocst | 
		
	
		
			
				|  |  |  |  |     call assert_fails('tag TEST_COUNT', 'E426:') | 
		
	
		
			
				|  |  |  |  |     set cst | 
		
	
		
			
				|  |  |  |  |     let a=execute('tag TEST_COUNT') | 
		
	
		
			
				|  |  |  |  |     let a = execute('tag TEST_COUNT') | 
		
	
		
			
				|  |  |  |  |     call assert_match('(1 of 1): <<TEST_COUNT>> #define TEST_COUNT 50000', a) | 
		
	
		
			
				|  |  |  |  |     call assert_equal('#define TEST_COUNT 50000', getline('.')) | 
		
	
		
			
				|  |  |  |  |     let a=execute('tags') | 
		
	
		
			
				|  |  |  |  |     let a = execute('tags') | 
		
	
		
			
				|  |  |  |  |     call assert_match('1  1 TEST_COUNT\s\+\d\+\s\+#define index_to_key', a) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 19: this should trigger call to cs_print_tags() | 
		
	
	
		
			
				
					
					|  |  |  | @@ -198,17 +198,17 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     call assert_fails('cscope kill 2', 'E261:') | 
		
	
		
			
				|  |  |  |  |     call assert_fails('cscope kill xxx', 'E261:') | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     let a=execute('cscope kill 0') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cscope kill 0') | 
		
	
		
			
				|  |  |  |  |     call assert_match('cscope connection 0 closed', a) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     cscope add Xcscope.out | 
		
	
		
			
				|  |  |  |  |     let a=execute('cscope kill Xcscope.out') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cscope kill Xcscope.out') | 
		
	
		
			
				|  |  |  |  |     call assert_match('cscope connection Xcscope.out closed', a) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     cscope add Xcscope.out . | 
		
	
		
			
				|  |  |  |  |     let a=execute('cscope kill -1') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cscope kill -1') | 
		
	
		
			
				|  |  |  |  |     call assert_match('cscope connection .*Xcscope.out closed', a) | 
		
	
		
			
				|  |  |  |  |     let a=execute('cscope kill -1') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cscope kill -1') | 
		
	
		
			
				|  |  |  |  |     call assert_equal('', a) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |     " Test 21: 'csprg' option | 
		
	
	
		
			
				
					
					|  |  |  | @@ -220,7 +220,7 @@ func Test_cscopeWithCscopeConnections() | 
		
	
		
			
				|  |  |  |  |     " Test 22: multiple cscope connections | 
		
	
		
			
				|  |  |  |  |     cscope add Xcscope.out | 
		
	
		
			
				|  |  |  |  |     cscope add Xcscope2.out . -C | 
		
	
		
			
				|  |  |  |  |     let a=execute('cscope show') | 
		
	
		
			
				|  |  |  |  |     let a = execute('cscope show') | 
		
	
		
			
				|  |  |  |  |     call assert_match('\n 0 \d\+.*Xcscope.out\s*<none>', a) | 
		
	
		
			
				|  |  |  |  |     call assert_match('\n 1 \d\+.*Xcscope2.out\s*\.', a) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
	
		
			
				
					
					|  |  |  | @@ -294,7 +294,7 @@ func Test_withoutCscopeConnection() | 
		
	
		
			
				|  |  |  |  |   call assert_equal(cscope_connection(), 0) | 
		
	
		
			
				|  |  |  |  |  | 
		
	
		
			
				|  |  |  |  |   call assert_fails('cscope find s main', 'E567:') | 
		
	
		
			
				|  |  |  |  |   let a=execute('cscope show') | 
		
	
		
			
				|  |  |  |  |   let a = execute('cscope show') | 
		
	
		
			
				|  |  |  |  |   call assert_match('no cscope connections', a) | 
		
	
		
			
				|  |  |  |  | endfunc | 
		
	
		
			
				|  |  |  |  |  | 
		
	
	
		
			
				
					
					|  |  |  |   |