Como você unittest exceções no Dart?

Considere uma função que faz algum tratamento de exceção com base nos argumentos passados:

List range(start, stop) {
    if (start >= stop) {
      throw new ArgumentError("start must be less than stop");
    }
    // remainder of function
}

Como faço para testar se o tipo certo de exceção é levantado?