情况如下:
我有一个ListView,当对项目执行长按时,会显示一个上下文菜单。我已经在模拟器上检查了它,但现在我想断言上下文菜单出现了。
有没有办法断言使用Robolectric显示了上下文菜单?
答案 0 :(得分:1)
您可以模拟元素点击并检查onCreateContextMenu
是否被调用
<强> UPD 强> 我不太可能听从我的建议。我会做什么 - 有两个测试:
这种方法不需要间谍
答案 1 :(得分:0)
最后,我结束了public void registerForContextMenu(View view)
的真正基本版本的实现:
view.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View arg0) {
realActivity.onCreateContextMenu(new TestContextMenu(), null,
null);
return true;
}
});
制作一个非常简单的TestContextMenu实现,扩展TestMenu并添加静态引用到最后一个通过覆盖add和addSubMenu方法创建的TestContextMenu。