28 lines
919 B
Scala
28 lines
919 B
Scala
package akka;
|
|
|
|
import akka.actor._
|
|
import org.scalatest.matchers.MustMatchers
|
|
import org.scalatest.WordSpec;
|
|
|
|
/**
|
|
* A spec that verified that the AkkaException has at least a single argument constructor of type String.
|
|
*
|
|
* This is required to make Akka Exceptions be friends with serialization/deserialization.
|
|
*/
|
|
class AkkaExceptionSpec extends WordSpec with MustMatchers {
|
|
|
|
"AkkaException" must {
|
|
"have a AkkaException(String msg) constructor to be serialization friendly" in {
|
|
//if the call to this method completes, we know what there is at least a single constructor which has
|
|
//the expected argument type.
|
|
verify(classOf[AkkaException])
|
|
|
|
//lets also try it for the exception that triggered this bug to be discovered.
|
|
verify(classOf[ActorKilledException])
|
|
}
|
|
}
|
|
|
|
def verify(clazz:java.lang.Class[_]):Unit = {
|
|
clazz.getConstructor(Array(classOf[String]): _*)
|
|
}
|
|
}
|