Тестирование панели инструментов AppCompatActivity с помощью FragmentScenario.EmptyFragmentActivity

Для моего теста я запускаю фрагмент в контейнере корневого представления активности emtpy

@Before
fun init() {
    scenario = launchFragmentInContainer(null, R.style.Theme_AppCompat) {
        MyFragment()
    }
}

и в моем фрагменте я настраиваю панель инструментов для обеспечения кнопки возврата

(activity as AppCompatActivity).setSupportActionBar(binding.toolbar)
(activity as AppCompatActivity).supportActionBar?.setDisplayHomeAsUpEnabled(true)

поэтому, когда я запускаю свой тест, я получаю исключение приведения класса

java.lang.ClassCastException: androidx.fragment.app.testing.FragmentScenario$EmptyFragmentActivity cannot be cast to androidx.appcompat.app.AppCompatActivity

так что я должен добавить gaurd

if(requireActivity() !is FragmentScenario.EmptyFragmentActivity)
    configureToolBar()    

Так есть ли другой способ настроить панель инструментов, чтобы я мог проверить запуск намерения кнопки возврата с помощью эспрессо?

редактировать

По-видимому, есть способ создать настраиваемое действие / контейнер.

0 ответов

Другие вопросы по тегам