使用.withIntent()Robolectric 2中的无效工作创建活动吗?我正在做以下事情
activity = Robolectric.buildActivity(MyActivity.class)
.create()
.withIntent(intent)
.get();
Run Code Online (Sandbox Code Playgroud)
而我得到一个NullPointerException在执行以下操作时,onCreate()我的活动.
Bundle bundle = getIntent().getExtras();
Run Code Online (Sandbox Code Playgroud)
我可以在我的代码中进行空检查onCreate()并通过执行以下操作来设置意图,但是onCreate()当Robolectric在创建Activity实例时已经这样做时,设置意图并再次调用方法似乎是多余的.这似乎是一项不必要的工作.
Robolectric.shadowOf(activity).setIntent(intent);
activity.onCreate(null);
Run Code Online (Sandbox Code Playgroud)
这种情况下,一种流畅的API类型会导致你走错路......
你想要:
activity = Robolectric.buildActivity(MyActivity.class)
.withIntent(intent)
.create()
.get();
Run Code Online (Sandbox Code Playgroud)
以便在调用onCreate()之前将构造提供给构建器.
| 归档时间: |
|
| 查看次数: |
4634 次 |
| 最近记录: |