Q: kotestを使ってテストを書く時、以下のようにinit{}
を用いて書くことができますが、
class Test : DescribeSpec() {
init {
describe("test") {
it("test") {
println("test")
}
}
}
}
以下のように引数にいれることでインデントを1段階浅くすることができます。
class Test : DescribeSpec({
describe("test") {
it("test") {
println("test")
}
}
})
A: なぜこのようなことができるかというと、以下で引数にblockを渡すとinit内で実行できるという実装がkotest側で行われているからです。