Before:
  Save g:ale_biome_options
  Save g:ale_biome_lsp_project_root

  let g:ale_biome_options = ''
  let g:ale_biome_lsp_project_root = ''

  call ale#assert#SetUpLinterTest('typescript', 'biome')
  call ale#test#SetFilename('test.ts')

After:
  call ale#assert#TearDownLinterTest()

Execute(The default biome command should be correct):
  AssertLinter 'biome', ale#Escape('biome') . ' lsp-proxy'

Execute(Uses the filetype as the language):
  call ale#test#SetFilename('test.ts')
  set filetype=typescript
  AssertLSPLanguage 'typescript'

  call ale#test#SetFilename('test.tsx')
  set filetype=typescriptreact
  AssertLSPLanguage 'typescriptreact'

  call ale#test#SetFilename('test.js')
  set filetype=javascript
  AssertLSPLanguage 'javascript'

  call ale#test#SetFilename('test.jsx')
  set filetype=javascriptreact
  AssertLSPLanguage 'javascriptreact'

Execute(Should find project root containing biome.json):
  call ale#test#SetFilename('../test-files/biome/json/src/test.ts')

  AssertLSPProject ale#path#Simplify(g:dir . '/../test-files/biome/json')

Execute(Should find project root containing biome.jsonc):
  call ale#test#SetFilename('../test-files/biome/jsonc/src/test.ts')

  AssertLSPProject ale#path#Simplify(g:dir . '/../test-files/biome/jsonc')

Execute(Should use user-specified project root):
  let g:ale_biome_lsp_project_root = '/'

  call ale#test#SetFilename('../test-files/biome/jsonc/src/test.ts')

  AssertLSPProject '/'
