Android/Testing/Unit Testing/委派 Finals
外观
'showDialog()' 等方法是 final 的,且无法覆盖。虽然 Robolectric 提供了一种可让你更改其实现的方法,但有时使用一个更简单的模式更方便 - 扩展受测类并覆盖新的非 final 方法
public class MyActivity extends Activity {
public void onResume(Bundle bundle) {
Intent intent = getIntent();
int id = selectDialog(intent);
boolean result = nonFinalShowDialog(id, bundle);
}
public boolean nonFinalShowDialog(int id, Bundle bundle) {
return showDialog(id, bundle);
}
}