¿Cómo probar los métodos que devuelven el futuro?

Me gustaría probar un método que devuelve unFuture. Mis intentos fueron los siguientes:

import  org.specs2.mutable.Specification
import scala.concurrent.ExecutionContext.Implicits.global
import scala.util.{Failure, Success}

class AsyncWebClientSpec extends Specification{

  "WebClient when downloading images" should {
    "for a valid link return non-zero content " in {
      val testImage = AsyncWebClient.get("https://www.google.cz/images/srpr/logo11ww.png")
      testImage.onComplete { res => 
        res match {
          case Success(image) => image must not have length(0)
          case _ =>
        }
        AsyncWebClient.shutDown
      }
    }
  }
}

Además del hecho de que no puedo hacer que este código funcione, supongo que podría haber una mejor manera de probar un futuro con unFutureorientado al matcher.

¿Cómo hacerlo correctamente en specs2?

Respuestas a la pregunta(6)

Su respuesta a la pregunta