/ / Le test de lecture de Scala ne trouve pas WSClient lors de l’injection de dépendance - scala, test, cadre de jeu, injection de dépendance

Scala Play test ne peut pas trouver WSClient pendant l'injection de dépendance - scala, test, playframework, injection de dépendance

J'essaie de transformer une classe en test unitaire en utilisant ce qui suit:

val injector = new GuiceInjectorBuilder().injector()
val secured = injector.instanceOf[Secured]

Cependant, lorsque j'essaie de l'exécuter, j'obtiens le message d'erreur suivant:

[info] Exception encountered when attempting to run a suite with class name: org.scalatest.DeferredAbortedSuite *** ABORTED ***
[info]   com.google.inject.ConfigurationException: Guice configuration errors:
[info]
[info] 1) No implementation for play.api.libs.ws.WSClient was bound.
[info]   while locating play.api.libs.ws.WSClient
[info]     for parameter 3 at com.fredley.Secured.<init>(Secured.scala:36)
[info]   while locating com.fredley.Secured

...

Qu'est-ce que je fais mal?

Réponses:

1 pour la réponse № 1

Le problème ne construisait pas l'injecteur à partir de l'application (ce qui signifie que les dépendances de lecture n'étaient pas chargées). Cela a résolu le problème:

val application = new GuiceApplicationBuilder().build
val secured = application.injector.instanceOf[Secured]