嗨我正在构建一个简单的RecycleView适配器,我正在尝试测试适配器的所有方法,但onCreateViewHolder对我来说很难.
@Override
public NewsViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.fragment_news,parent,false);
return new NewsViewHolder(v);
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用mockito构建一个viewGroup类的模拟,并在调用getContext()时返回MockContext的间谍,但似乎是因为我返回一个MockContext,LayoutInflater.from()返回一个空指针异常.
这是我的考验
@Test
public void testOnCreateViewHolder() throws Exception {
ViewGroup vg = mock(ViewGroup.class);
MockContext mockContext = new MockContext();
MockContext spyContext = spy(mockContext);
when(vg.getContext()).thenReturn(spyContext);
NewsViewHolder vh = adapter.onCreateViewHolder(vg, 0);
Assert.assertNotNull("Response cant be null",vh);
}
Run Code Online (Sandbox Code Playgroud)
提前致谢.