Я пытался Войти вещи внутри моего scalaTest как таковой:Вход в Akka тестового набора внешних акторов
class ChangeSetActorTest extends PersistenceSpec(ActorSystem("Persistent-test-System")) with
PersistenceCleanup {
val log = Logging(system, this)
В принципе, давайте просто скажем, что ChansetActorTest наследуют от тестового набора (система)
К сожалению
Logging(system, this)
не работает с этим
Я получаю следующее Ошибка:
[error] /Users/maatary/Dev/IdeaProjects/PoolpartyConnector/src/test/scala/org/iadb/poolpartyconnector/changepropagation/ChangeSetActorTest.scala:22: Cannot find LogSource for org.iadb.poolpartyconnector.changepropagation.ChangeSetActorTest please see ScalaDoc for LogSource for how to obtain or construct one. [error] val log = Logging(system, this)
Я считаю, в Logging Doc Akka это следующий пункт: и во всех других случаях ошибка компиляции возникает, если и неявное LogSource [Т] не находится в области видимости для рассматриваемого типа.
Другими словами нет LogSource [тестового набора]
Я хотел бы самым простым решением для решения этого вопроса, с минимальной дополнительной конфигурации. До сих пор, что я сделал это следующий и все работает, как ожидалось:
class ChangeSetActorTest extends PersistenceSpec(ActorSystem("Persistent-test-System")) with
PersistenceCleanup {
val log = system.log
Оттуда я просто пойти и сделать что-то вроде
val received = chgtFetcher.receiveWhile((requestInterval + ProcessingLag).*(3)) {
case msg:FetchNewChangeSet => log.info(s"received: ${msg}") ; chgtFetcher.reply(NoAvailableChangeSet); msg
}
Мой вопрос, это рекомендуется appraoch. Пока порядок сообщения от моего актера и одного из теста хорошо упорядочен.
Пожалуйста облако вы дайте мне знать, рекомендуемое appraoch войти в единую appraoch:
1 - Из класса Test (например, выше) и актер в то же время?
2 - Если вы используете систему, в которой должен также регистрироваться внешний класс, и нам нужно одно унифицированное ведение журнала (асинхронное).
Большое спасибо
-M-