34
test/command_callback/test_cuda_nvcc_command_callbacks.vader
Normal file
34
test/command_callback/test_cuda_nvcc_command_callbacks.vader
Normal file
@@ -0,0 +1,34 @@
|
||||
Before:
|
||||
Save g:ale_cuda_nvcc_executable
|
||||
Save g:ale_cuda_nvcc_options
|
||||
|
||||
unlet! g:ale_cuda_nvcc_executable
|
||||
unlet! b:ale_cuda_nvcc_executable
|
||||
unlet! g:ale_cuda_nvcc_options
|
||||
unlet! b:ale_cuda_nvcc_options
|
||||
|
||||
runtime ale_linters/cuda/nvcc.vim
|
||||
|
||||
After:
|
||||
Restore
|
||||
unlet! b:ale_cuda_nvcc_executable
|
||||
unlet! b:ale_cuda_nvcc_options
|
||||
call ale#linter#Reset()
|
||||
|
||||
Execute(The executable should be configurable):
|
||||
AssertEqual 'nvcc', ale_linters#cuda#nvcc#GetExecutable(bufnr(''))
|
||||
|
||||
let b:ale_cuda_nvcc_executable = 'foobar'
|
||||
|
||||
AssertEqual 'foobar', ale_linters#cuda#nvcc#GetExecutable(bufnr(''))
|
||||
|
||||
Execute(The executable should be used in the command):
|
||||
AssertEqual
|
||||
\ ale#Escape('nvcc') . ' -cuda -std=c++11 %s -o /dev/null',
|
||||
\ ale_linters#cuda#nvcc#GetCommand(bufnr(''))
|
||||
|
||||
let b:ale_cuda_nvcc_executable = 'foobar'
|
||||
|
||||
AssertEqual
|
||||
\ ale#Escape('foobar') . ' -cuda -std=c++11 %s -o /dev/null',
|
||||
\ ale_linters#cuda#nvcc#GetCommand(bufnr(''))
|
||||
29
test/handler/test_cuda_nvcc_handler.vader
Normal file
29
test/handler/test_cuda_nvcc_handler.vader
Normal file
@@ -0,0 +1,29 @@
|
||||
Execute(The cuda nvcc handler should parse errors from multiple files for NVCC 8.0):
|
||||
AssertEqual
|
||||
\ [
|
||||
\ {
|
||||
\ 'lnum': 1,
|
||||
\ 'type': 'E',
|
||||
\ 'text': 'this declaration has no storage class or type specifier',
|
||||
\ 'filename': '/tmp/cudatest/test.cu',
|
||||
\ },
|
||||
\ {
|
||||
\ 'lnum': 2,
|
||||
\ 'type': 'E',
|
||||
\ 'text': 'attribute "global" does not apply here',
|
||||
\ 'filename': '/tmp/cudatest/common.h',
|
||||
\ },
|
||||
\ {
|
||||
\ 'lnum': 2,
|
||||
\ 'type': 'E',
|
||||
\ 'text': 'expected a ";"',
|
||||
\ 'filename': '/tmp/cudatest/common.h',
|
||||
\ },
|
||||
\ ],
|
||||
\ ale_linters#cuda#nvcc#HandleNVCCFormat(0, [
|
||||
\ '/tmp/cudatest/test.cu(1): error: this declaration has no storage class or type specifier',
|
||||
\ '/tmp/cudatest/common.h(2): error: attribute "global" does not apply here',
|
||||
\ '/tmp/cudatest/common.h(2): error: expected a ";"',
|
||||
\ 'At end of source: warning: parsing restarts here after previous syntax error',
|
||||
\ '3 errors detected in the compilation of "/tmp/tmpxft_00003a9f_00000000-7_test.cpp1.ii".',
|
||||
\ ])
|
||||
Reference in New Issue
Block a user