#591 Store buffer variables when fixing filess, and read them back in ale#Var
This commit is contained in:
@@ -11,6 +11,7 @@ Before:
|
||||
let g:ale_enabled = 0
|
||||
let g:ale_echo_cursor = 0
|
||||
let g:ale_run_synchronously = 1
|
||||
let g:ale_fix_buffer_data = {}
|
||||
let g:ale_fixers = {
|
||||
\ 'testft': [],
|
||||
\}
|
||||
@@ -75,6 +76,8 @@ After:
|
||||
call delete('fix_test_file')
|
||||
endif
|
||||
|
||||
let g:ale_fix_buffer_data = {}
|
||||
|
||||
Given testft (A file with three lines):
|
||||
a
|
||||
b
|
||||
@@ -291,3 +294,24 @@ Expect(The buffer should be the same):
|
||||
a
|
||||
b
|
||||
c
|
||||
|
||||
Given testft (A file with three lines):
|
||||
a
|
||||
b
|
||||
c
|
||||
|
||||
Execute(ale#fix#InitBufferData() should set up the correct data):
|
||||
noautocmd silent file fix_test_file
|
||||
|
||||
call ale#fix#InitBufferData(bufnr(''), 'save_file')
|
||||
|
||||
AssertEqual {
|
||||
\ bufnr(''): {
|
||||
\ 'temporary_directory_list': [],
|
||||
\ 'vars': b:,
|
||||
\ 'filename': simplify(getcwd() . '/fix_test_file'),
|
||||
\ 'done': 0,
|
||||
\ 'lines_before': ['a', 'b', 'c'],
|
||||
\ 'should_save': 1,
|
||||
\ },
|
||||
\}, g:ale_fix_buffer_data
|
||||
|
||||
@@ -3,6 +3,9 @@ Before:
|
||||
|
||||
After:
|
||||
unlet! g:ale_some_variable
|
||||
unlet! b:undefined_variable_name
|
||||
|
||||
let g:ale_fix_buffer_data = {}
|
||||
|
||||
Execute(ale#Var should return global variables):
|
||||
AssertEqual 'abc', ale#Var(bufnr(''), 'some_variable')
|
||||
@@ -18,4 +21,21 @@ Execute(ale#Var should return buffer overrides for buffer numbers as strings):
|
||||
AssertEqual 'def', ale#Var(string(bufnr('')), 'some_variable')
|
||||
|
||||
Execute(ale#Var should throw exceptions for undefined variables):
|
||||
let b:undefined_variable_name = 'def'
|
||||
|
||||
AssertThrows call ale#Var(bufnr(''), 'undefined_variable_name')
|
||||
|
||||
Execute(ale#Var return variables from deleted buffers, saved for fixing things):
|
||||
let g:ale_fix_buffer_data[1347347] = {'vars': {'ale_some_variable': 'def'}}
|
||||
|
||||
AssertEqual 'def', ale#Var(1347347, 'some_variable')
|
||||
|
||||
Execute(ale#Var should return the global variable for unknown variables):
|
||||
let g:ale_fix_buffer_data = {}
|
||||
|
||||
AssertEqual 'abc', ale#Var(1347347, 'some_variable')
|
||||
|
||||
Execute(ale#Var should return the global variables when the ALE fix variable is undefined):
|
||||
unlet! g:ale_fix_buffer_data
|
||||
|
||||
AssertEqual 'abc', ale#Var(1347347, 'some_variable')
|
||||
|
||||
Reference in New Issue
Block a user