Scalatest 2.10 с akka.TestKit, странная ошибка компилятора
Я использую Scala IDE для разработки. У меня есть несколько актеров, которых я проверяю. Я написал один набор тестов Scala со следующим определением, и у меня не было никаких проблем:
import org.scalatest._
import akka.testkit._
import akka.actor.ActorSystem
import org.scalatest.BeforeAndAfterAll
import org.scalatest._
import scala.concurrent.duration._
import akka.actor.Props
import filters._
class ReaderSourceTest( _system: ActorSystem ) extends TestKit( _system ) with FunSuiteLike with BeforeAndAfterAll with ImplicitSender {
import ReaderSource._
//Must have a zero argument constructor
def this() = this( ActorSystem( "ReaderSourceSuite" ) )
override def afterAll = TestKit.shutdownActorSystem( system )
test( "Reader should be alive as an actor" ) {
val reader = system.actorOf( Props( classOf[ ReaderSource ], "dummy/file/name" ), "tstReaderA" )
reader ! Ping( "Hello" )
expectMsg( Pong( "Hello" ) )
}
}
Затем я создал еще один тестовый файл для тестирования другого актера, который выглядит следующим образом:
import socketclient._
import org.scalatest._
import akka.testkit._
import akka.actor.ActorSystem
import org.scalatest.BeforeAndAfterAll
import scala.concurrent.duration._
import akka.actor.Props
import org.scalatest.fixture.FunSuiteLike
import java.net.InetAddress
import org.kdawg.CommProtocol.CommMessages._
import org.kdawg.CommProtocol.CommMessages
class NetworkTest( _system: ActorSystem ) extends TestKit( _system ) with FunSuiteLike with BeforeAndAfterAll with ImplicitSender
{
import NetworkTalker._
def this() = this( ActorSystem( "NetworkTalkerTest") )
override def afterAll = TestKit.shutdownActorSystem( system )
test( "Can Send a Packet" )
{
val net = system.actorOf( NetworkTalker.props("10.1.0.5", 31000), "TestA" )
val pktBuilder = CommMessage.newBuilder
pktBuilder.setType( MessageType.STATUS_REQUEST )
pktBuilder.setStatusRequest( CommProtocol.CommandsProtos.StatusRequest.newBuilder() )
val pkt = pktBuilder.build
net ! PktSend(1, pkt)
expectMsg( PktSent(1) )
}
}
Я продолжаю получать следующую ошибку в последней строке вышеупомянутого класса
Multiple markers at this line
- type mismatch; found : org.kdawg.socketclient.NetworkTalker.PktSent required: NetworkTalkerTest.this.FixtureParam =>
Any
- type mismatch; found : org.kdawg.socketclient.NetworkTalker.PktSent required: NetworkTalkerTest.this.FixtureParam =>
Может кто-нибудь помочь мне понять это?
1 ответ
Изменение импорта с
import org.scalatest.fixture.FunSuiteLike
в
import org.scalatest.FunSuiteLike
работал