aboutsummaryrefslogtreecommitdiffstats
path: root/tests/indent/dart_spec.lua
blob: c1d01873897dbd2e3da8ef3ca5a65a980af5f705 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
local Runner = require("tests.indent.common").Runner
local XFAIL = require("tests.indent.common").XFAIL

local run = Runner:new(it, "tests/indent/dart", {
  tabstop = 2,
  shiftwidth = 2,
  softtabstop = 2,
  expandtab = true,
})

describe("indent Lua:", function()
  describe("whole file:", function()
    run:whole_file(".", {
      expected_failures = {
        "./multiple_arguments.dart",
        "./class.dart",
        "./class_function_argument.dart",
      },
    })
  end)
end)

describe("new line:", function()
  run:new_line("class.dart", { on_line = 4, text = "int five;", indent = 2 })
  run:new_line("class.dart", { on_line = 6, text = "'100'", indent = 8 }, "expected failure", XFAIL)
  run:new_line("class.dart", { on_line = 7, text = "int five = 5", indent = 2 }, "expected failure", XFAIL)
  run:new_line("try.dart", { on_line = 2, text = "var x;", indent = 4 })
  for _, content in ipairs { "var x;", "var x" } do
    run:new_line("try.dart", { on_line = 10, text = content, indent = 6 })
  end
  run:new_line("switch.dart", { on_line = 3, text = "x = 1;", indent = 6 })
  run:new_line("switch.dart", { on_line = 9, text = "x = 1;", indent = 6 })
  run:new_line("switch.dart", { on_line = 3, text = "case 2:", indent = 4 })
  run:new_line("switch.dart", { on_line = 16, text = "abc;", indent = 4 })
  run:new_line("switch.dart", { on_line = 20, text = "abc;", indent = 4 })
  run:new_line("switch.dart", { on_line = 28, text = "y++;", indent = 6 })

  run:new_line("multiple_arguments.dart", { on_line = 10, text = "var x;", indent = 4 })
  run:new_line(
    "multiple_arguments.dart",
    { on_line = 11, text = "var x;", indent = 4 },
    "expected failure issue #4637",
    XFAIL
  )
  run:new_line("class_function_argument.dart", { on_line = 11, text = "}", indent = 4 })
end)