Как издеваться над телом StreamedResponse? - PullRequest
0 голосов
/ 23 сентября 2019

Я писал тест для следующего фрагмента кода, я получаю исключение nullPointerException для тела StreamedResponse.Я не могу смоделировать тело StreamedResponse.

Я пытался mock[StreamedResponse].body returns Source[ByteString("")] Но получение Source.type не принимает ошибку параметров.

streamResponse map {
      case StreamedResponse(response, body) =>
        if (response.status == 200) {
          val contentType = response.headers.get("Content-Type").flatMap(_.headOption).getOrElse("application/pdf")
          response.headers.get("Content-Length") match {
            case Some(Seq(length)) =>
              Ok.sendEntity(HttpEntity.Streamed(body, Some(length.toLong), Some(contentType)))
            case _ =>
              Ok.chunked(body).as(contentType)
          }
        } else {
          Redirect(pdfService.buildEspacenetLink(ucid))
        }
    } 

Это код, в котором я использовал StreamResponse.

Я хочу проверить case _ => Ok.chunked(body).as(contentType) эту часть кода с некоторыми данными в качестве тела ответа.

...