Before:
let g:ale_some_variable = 'abc'
After:
unlet! g:ale_some_variable
unlet! b:undefined_variable_name
Execute(ale#Var should return global variables):
AssertEqual 'abc', ale#Var(bufnr(''), 'some_variable')
Execute(ale#Var should return buffer overrides):
let b:ale_some_variable = 'def'
AssertEqual 'def', ale#Var(bufnr(''), 'some_variable')
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')