Fixed flaky tests

This commit is contained in:
Eugene Zadyra
2018-06-06 00:18:14 +02:00
parent 841ecc7740
commit d10db80a61
2 changed files with 16 additions and 19 deletions

View File

@@ -1,18 +1,27 @@
package com.lbs.server.actor
import akka.actor.ActorRef
import akka.testkit.TestProbe
import com.lbs.bot.model.{Command, Message, MessageSource, TelegramMessageSourceSystem}
import com.lbs.server.actor.Chat.Init
import com.lbs.server.actor.Login.{ForwardCommand, LoggedIn, UserId}
import com.lbs.server.service.DataService
import org.mockito.Mockito._
class AuthSpec extends AkkaTestKit with Mocks {
class AuthSpec extends AkkaTestKit {
"An Auth actor " when {
val source = MessageSource(TelegramMessageSourceSystem, "1")
val userId = UserId(1L, source)
"user is unauthorized" must {
val unauthorizedHelpActor = TestProbe()
val loginActor = TestProbe()
val chatActor = TestProbe()
val unauthorizedHelpFactory: MessageSource => ActorRef = _ => unauthorizedHelpActor.ref
val loginActorFactory: (MessageSource, ActorRef) => ActorRef = (_, _) => loginActor.ref
val chatActorFactory: UserId => ActorRef = _ => chatActor.ref
val dataService = mock(classOf[DataService])
val auth = system.actorOf(Auth.props(source, dataService, unauthorizedHelpFactory, loginActorFactory, chatActorFactory))
@@ -63,6 +72,12 @@ class AuthSpec extends AkkaTestKit with Mocks {
}
"user is authorized" must {
val unauthorizedHelpActor = TestProbe()
val loginActor = TestProbe()
val chatActor = TestProbe()
val unauthorizedHelpFactory: MessageSource => ActorRef = _ => unauthorizedHelpActor.ref
val loginActorFactory: (MessageSource, ActorRef) => ActorRef = (_, _) => loginActor.ref
val chatActorFactory: UserId => ActorRef = _ => chatActor.ref
val dataService = mock(classOf[DataService])
val auth = system.actorOf(Auth.props(source, dataService, unauthorizedHelpFactory, loginActorFactory, chatActorFactory))

View File

@@ -1,18 +0,0 @@
package com.lbs.server.actor
import akka.actor.{ActorRef, ActorSystem}
import akka.testkit.TestProbe
import com.lbs.bot.model.MessageSource
import com.lbs.server.actor.Login.UserId
trait Mocks {
protected implicit val system: ActorSystem
protected val unauthorizedHelpActor = TestProbe()
protected val loginActor = TestProbe()
protected val chatActor = TestProbe()
protected val unauthorizedHelpFactory: MessageSource => ActorRef = _ => unauthorizedHelpActor.ref
protected val loginActorFactory: (MessageSource, ActorRef) => ActorRef = (_, _) => loginActor.ref
protected val chatActorFactory: UserId => ActorRef = _ => chatActor.ref
}