Как работают фигурные скобки после создания экземпляра черты?

Я нахожу некоторое запутанное использование черты в некотором коде тестирования юнитов, например:

trait MyTrait {
  val t1 = ... //some expression
  val t2 = ... //some expression
}

И затем создайте экземпляр этой черты, используя new, и в то же время некоторые выражения, заключенные в фигурные скобки, следуют за экземпляром.

test("it is a test") {
  new MyTrait {
    // do something with t1 and t2
  }
}

Я смущен этим странным синтаксисом.

Мой вопрос:

зачем использовать следование чертам фигурными скобками?

Какова цель создания экземпляра черты в этом случае, и другие случаи также могут быть полезны?

Ответы на вопрос(3)

Ваш ответ на вопрос