У меня есть частичная функция как exceptionHandler
, которая соответствует соответствующему исключению и выдает соответственно
Я должен написать контрольный пример для NoHostAvailableException
, но не могу выбросить исключение с помощью насмешек.
Я уже создал фиктивный сервер, который превращает встроенную Cassandra в Lagom.
Это частичная функция.
private val handleException: PartialFunction[Throwable, Future[List[MonitoringData]]] = {
case noHostAvailableException: NoHostAvailableException => throw new CassandraNotAvailableException(TransportErrorCode
.fromHttp(Error.CassandraNotAvailableErrorCode), Error.ErrorMessageForCassandraNotAvailable)
case _ => throw new TransportException(TransportErrorCode.InternalServerError, Error.ErrorMessageForInternalServerError)
}
Это тестовый пример.
"not be able to interact with the database in" {
when(mockReadDAO.getData)
.thenThrow(NoHostAvailableException)
assert(thrown.isInstanceOf[NoHostAvailableException])
}
Компилятор не принимает NoHostAvailableException
в качестве значения.