Правила ScalaFix помогают в переписывании исходного кода Scala.ScalaFix использует ScalaMeta и SemanticDB.С помощью этих ресурсов можно анализировать синтаксические и семантические элементы исходного кода и преобразовывать их по своему желанию.
У меня есть проект, в котором я хотел бы провести статический анализ исходного кода Scala Akka с цельюусилительные тесты, написанные для исходного кода.Усиление будет в основном пытаться улучшить охват ветвей тестов.
Однако, глядя на настройку ScalaFix в документации, я вижу следующую настройку:
Естькаталог правил, в котором существуют правила linter и rewrite
Входной каталог, являющийся независимым проектом, в котором существуют файлы Scala для перезаписи.
Anвыходной каталог, который является другим независимым проектом, в котором
существует перезаписанные файлы, соответствующие входным данным.Это результат применения правил ScalaFix для входного проекта
Для моей установки я хочу, чтобы мое приложение получило исходный код Akka и тест, написанный для исходного кода.Затем мое приложение будет статически анализировать исходный код для актеров и их сообщений, используя ScalaMeta, а затем использовать ScalaFix для усиления предоставленного теста, чтобы охватить больше ветвей исходного кода.
В соответствии с документацией, исходный код Akka и его тестирование должны будут входить во входной каталог как самостоятельный проект, а выходной проект должен соответствовать входному проекту.Это не похоже на возможность для моего случая.
Я думаю, что ScalaFix должен иметь возможность работать с файлом, учитывая его путь.Модифицированные тесты могут быть написаны в месте, которое я выберу.Например, когда я использую только ScalaMeta, можно статически анализировать файл, просто указав его путь.