Sto lavorando a un'applicazione Play (v. 2.4) con Guice come provider DI. Tutto funziona bene, tuttavia ho una serie di test funzionali in esecuzione con ScalaTestPlus e vorrei sostituire alcune dipendenze quando il test è in esecuzione. I test vengono scritti estendendo la classe OneServerPerSuite
mentre controllano la mia API REST.Come cambio i collegamenti Guice per i test funzionali?
C'è un modo per avere altre dipendenze durante i test?
EDIT: Codice di esempio:
regolatore del campione:
class UserController @Inject()(userService: UserService) extends AbstractController { ... }
E dependecy definizione nel modulo:
bind(classOf[UserService]) to (classOf[ProdUserService])
miei test sono come questo:
class ApiTest extends PlaySpec with OneServerPerSuite {
"User API should" must {
"get User's data" in {
(...) //calling to an endpoint and verifying response
}
}
}
Mi piacerebbe avere ProdUserService
sostituito con altra implementazione ma solo nei test.
Avete qualche codice di esempio? – Kmeixner
Ho aggiornato la domanda con un codice di esempio. – walak