Robolectric允許使用shadowOf(activity).peekNextStartedActivity()
測試已啓動Activity
。但是,如果Activity
從FLAG_ACTIVITY_CLEAR_TOP
開始,此方法似乎不起作用。這很直觀,因爲這個標誌的目的不是開始一個新的Activity
,而是將現有的Activity
放回前面。有什麼方法可以測試這種情況嗎?測試FLAG_ACTIVITY_CLEAR_TOP的活動已啓動
UPDATE
我的測試環境如下:
有涉及3個活動,讓我們稱他們爲A,測試B和C.活動是B,這是由A,B開始現在開始C作爲結果,並且當收到結果時使用FLAG_ACTIVITY_CLEAR_TOP
標誌返回到A.儘管當時堆棧中沒有活動A,但我預計它會啓動並通過peekNextStartedActivity()
提供。
在我的情況下,即使檢查Activity已經通過檢查它的ComponentName開始,我也會很高興,但是,如果我使用FLAG_ACTIVITY_CLEAR_TOP啓動它,peekNextStartedActivity()不會返回正確的Activity。 – Egor 2014-11-27 10:57:17