tests: Migrate legacy test 10.

This commit is contained in:
Lucas Hoffmann 2015-05-15 19:03:44 +02:00
parent 176f223ea3
commit 7d6b9ddc15
4 changed files with 156 additions and 134 deletions

View File

@ -9,7 +9,6 @@ SCRIPTSOURCE := ../../../runtime
SCRIPTS := \
test8.out \
test10.out \
test12.out \
test13.out \
test14.out \

View File

@ -1,110 +0,0 @@
Test for 'errorformat'. This will fail if the quickfix feature was disabled.
STARTTEST
:7/start of errorfile/,/end of errorfile/w! Xerrorfile1
:7/start of errorfile/,/end of errorfile/-1w! Xerrorfile2
:/start of testfile/,/end of testfile/w! Xtestfile
:set efm+==%f=\\,\ line\ %l%*\\D%v%*[^\ ]\ %m
:set efm^=%AError\ in\ \"%f\"\ at\ line\ %l:,%Z%p^,%C%m
:cf Xerrorfile2
:clast
:copen
:let a=w:quickfix_title
:wincmd p
lgR=a 
:cf Xerrorfile1
grA
:cn
gRLINE 6, COL 19
:cn
gRNO COLUMN SPECIFIED
:cn
gRAGAIN NO COLUMN
:cn
gRCOL 1
:cn
gRCOL 2
:cn
gRCOL 10
:cn
gRVCOL 10
:cn
grI
:cn
gR. SPACE POINTER
:cn
gR. DOT POINTER
:cn
gR. DASH POINTER
:cn
gR. TAB-SPACE POINTER
:clast
:cprev
:cprev
:wincmd w
:let a=w:quickfix_title
:wincmd p
lgR=a 
:w! test.out " Write contents of this file
:qa!
ENDTEST
start of errorfile
"Xtestfile", line 4.12: 1506-045 (S) Undeclared identifier fd_set.
"Xtestfile", line 6 col 19; this is an error
gcc -c -DHAVE_CONFIsing-prototypes -I/usr/X11R6/include version.c
Xtestfile:9: parse error before `asd'
make: *** [vim] Error 1
in file "Xtestfile" linenr 10: there is an error
2 returned
"Xtestfile", line 11 col 1; this is an error
"Xtestfile", line 12 col 2; this is another error
"Xtestfile", line 14:10; this is an error in column 10
=Xtestfile=, line 15:10; this is another error, but in vcol 10 this time
"Xtestfile", linenr 16: yet another problem
Error in "Xtestfile" at line 17:
x should be a dot
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 17
^
Error in "Xtestfile" at line 18:
x should be a dot
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 18
.............^
Error in "Xtestfile" at line 19:
x should be a dot
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 19
--------------^
Error in "Xtestfile" at line 20:
x should be a dot
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 20
^
Does anyone know what is the problem and how to correction it?
"Xtestfile", line 21 col 9: What is the title of the quickfix window?
"Xtestfile", line 22 col 9: What is the title of the quickfix window?
end of errorfile
start of testfile
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 2
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 3
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 4
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 5
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 6
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 7
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 8
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 9
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 10
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 11
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 12
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 13
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 14
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 15
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 16
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 17
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 18
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 19
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 20
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 21
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 22
end of testfile

View File

@ -1,23 +0,0 @@
start of testfile
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 2
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 3
xxxxxxxxxxAxxxxxxxxxxxxxxxxxxx line 4
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 5
xxxxxxxxxxxxxxxxxLINE 6, COL 19 line 6
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 7
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 8
NO COLUMN SPECIFIEDxxxxxxxxxxx line 9
AGAIN NO COLUMNxxxxxxxxxxxxxxx line 10
COL 1 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 11
COL 2xxxxxxxxxxxxxxxxxxxxxxxxx line 12
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 13
xxxxxxxxCOL 10xxxxxxxxxxxxxxxx line 14
xVCOL 10xxxxxxxxxxxxxxxxxxxxxx line 15
Ixxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 16
xxxx. SPACE POINTERxxxxxxxxxxx line 17
xxxxx. DOT POINTERxxxxxxxxxxxx line 18
xxxxxx. DASH POINTERxxxxxxxxxx line 19
xxxxxxx. TAB-SPACE POINTERxxxx line 20
xxxxxxxx:cf Xerrorfile1xxxxxxx line 21
xxxxxxxx:cf Xerrorfile2xxxxxxx line 22
end of testfile

View File

@ -0,0 +1,156 @@
-- Test for 'errorformat'. This will fail if the quickfix feature was
-- disabled.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect, write_file = helpers.clear, helpers.execute, helpers.expect, helpers.write_file
describe('errorformat', function()
setup(function()
clear()
local error_file_text = [[
start of errorfile
"Xtestfile", line 4.12: 1506-045 (S) Undeclared identifier fd_set.
"Xtestfile", line 6 col 19; this is an error
gcc -c -DHAVE_CONFIsing-prototypes -I/usr/X11R6/include version.c
Xtestfile:9: parse error before `asd'
make: *** [vim] Error 1
in file "Xtestfile" linenr 10: there is an error
2 returned
"Xtestfile", line 11 col 1; this is an error
"Xtestfile", line 12 col 2; this is another error
"Xtestfile", line 14:10; this is an error in column 10
=Xtestfile=, line 15:10; this is another error, but in vcol 10 this time
"Xtestfile", linenr 16: yet another problem
Error in "Xtestfile" at line 17:
x should be a dot
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 17
^
Error in "Xtestfile" at line 18:
x should be a dot
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 18
.............^
Error in "Xtestfile" at line 19:
x should be a dot
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 19
--------------^
Error in "Xtestfile" at line 20:
x should be a dot
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 20
^
Does anyone know what is the problem and how to correction it?
"Xtestfile", line 21 col 9: What is the title of the quickfix window?
"Xtestfile", line 22 col 9: What is the title of the quickfix window?
]]
write_file('Xerrorfile1', error_file_text .. 'end of errorfile\n')
write_file('Xerrorfile2', error_file_text)
write_file('Xtestfile', [[
start of testfile
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 2
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 3
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 4
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 5
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 6
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 7
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 8
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 9
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 10
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 11
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 12
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 13
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 14
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 15
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 16
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 17
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 18
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 19
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 20
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 21
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 22
end of testfile
]])
end)
teardown(function()
os.remove('Xerrorfile1')
os.remove('Xerrorfile2')
os.remove('Xtestfile')
end)
it('is working', function()
-- Also test a BOM is ignored.
execute(
'set encoding=utf-8',
[[set efm+==%f=\\,\ line\ %l%*\\D%v%*[^\ ]\ %m]],
[[set efm^=%AError\ in\ \"%f\"\ at\ line\ %l:,%Z%p^,%C%m]],
'cf Xerrorfile2',
'clast',
'copen',
'let a=w:quickfix_title',
'wincmd p'
)
feed('lgR<C-R>=a<CR><esc>')
execute('cf Xerrorfile1')
feed('grA<cr>')
execute('cn')
feed('gRLINE 6, COL 19<esc>')
execute('cn')
feed('gRNO COLUMN SPECIFIED<esc>')
execute('cn')
feed('gRAGAIN NO COLUMN<esc>')
execute('cn')
feed('gRCOL 1<esc>')
execute('cn')
feed('gRCOL 2<esc>')
execute('cn')
feed('gRCOL 10<esc>')
execute('cn')
feed('gRVCOL 10<esc>')
execute('cn')
feed('grI<cr>')
execute('cn')
feed('gR. SPACE POINTER<esc>')
execute('cn')
feed('gR. DOT POINTER<esc>')
execute('cn')
feed('gR. DASH POINTER<esc>')
execute('cn')
feed('gR. TAB-SPACE POINTER<esc>')
execute(
'clast',
'cprev',
'cprev',
'wincmd w',
'let a=w:quickfix_title',
'wincmd p'
)
feed('lgR<C-R>=a<CR><esc>')
-- Assert buffer contents.
expect([[
start of testfile
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 2
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 3
xxxxxxxxxxAxxxxxxxxxxxxxxxxxxx line 4
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 5
xxxxxxxxxxxxxxxxxLINE 6, COL 19 line 6
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 7
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 8
NO COLUMN SPECIFIEDxxxxxxxxxxx line 9
AGAIN NO COLUMNxxxxxxxxxxxxxxx line 10
COL 1 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 11
COL 2xxxxxxxxxxxxxxxxxxxxxxxxx line 12
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 13
xxxxxxxxCOL 10xxxxxxxxxxxxxxxx line 14
xVCOL 10xxxxxxxxxxxxxxxxxxxxxx line 15
Ixxxxxxxxxxxxxxxxxxxxxxxxxxxxx line 16
xxxx. SPACE POINTERxxxxxxxxxxx line 17
xxxxx. DOT POINTERxxxxxxxxxxxx line 18
xxxxxx. DASH POINTERxxxxxxxxxx line 19
xxxxxxx. TAB-SPACE POINTERxxxx line 20
xxxxxxxx:cf Xerrorfile1xxxxxxx line 21
xxxxxxxx:cf Xerrorfile2xxxxxxx line 22
end of testfile]])
end)
end)