-
Notifications
You must be signed in to change notification settings - Fork 0
/
MyActorTest.scala
44 lines (30 loc) · 1.17 KB
/
MyActorTest.scala
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package akka.examples.actor
import akka.actor.{ActorSystem, Props}
import akka.testkit.EventFilter
import com.typesafe.config.ConfigFactory
import org.scalatest.{BeforeAndAfterAll, FunSuite}
import scala.concurrent.duration._
class MyActorTest extends FunSuite with BeforeAndAfterAll {
import akka.examples.actor.MyActor._
implicit val system = ActorSystem(
"testsystem",
ConfigFactory.parseString("""akka.loggers = ["akka.testkit.TestEventListener"]""")
)
test("MyActor should log a message when receiving a Greeting message") {
val actor = system.actorOf(Props[MyActor], "myactor-greeting")
val eventFilter = EventFilter.info(occurrences = 1, start = "I was greeted by")
eventFilter intercept {
actor ! Greeting("Someone")
}
eventFilter assertDone Duration.Inf
}
test("MyActor should log a message when receiving a Goodbye message") {
val actor = system.actorOf(Props[MyActor], "myactor-goodbye")
val eventFilter = EventFilter.info(occurrences = 1, start = "Someone said")
eventFilter intercept {
actor ! Goodbye
}
eventFilter assertDone Duration.Inf
}
override def afterAll = system.terminate()
}