android studio 2.1. preview 4
I am creating a junit4 unit test to test for opening a file contained in the raw directory.
However, everytime the code runs I can a null pointer from openRawResource.
This is the function I am trying to test. This works when running on the actual device. But not in the unit test.
public String getNewsFeed(Context mContext) {
    InputStream inputStream = mContext.getResources().openRawResource(R.raw.news_list); // Null pointer
    Writer writer = new StringWriter();
    char[] buffer = new char[1024];
    try {
        InputStreamReader inputReader = new InputStreamReader(inputStream, "UTF-8");
        BufferedReader bufferReader = new BufferedReader(inputReader);
        int n;
        while ((n = bufferReader.read(buffer)) != -1) {
            writer.write(buffer, 0, n);
        }
        inputStream.close();
    }
    catch (IOException ioException) {
        return "";
    }
    return writer.toString();
}
This is my test case
@RunWith(MockitoJUnitRunner.class)
public class NewsListPresenterTest {
    @Mock
    private Context mContext;
    @Mock
    private NewsListPresenter mNewsListPresenter;
    @org.junit.Before
    public void setUp() throws Exception {
        MockitoAnnotations.initMocks(this);
        mNewsListPresenter = new NewsListPresenter(mContext);
    }
    @org.junit.Test
    public void testLoadNewsFeed() throws Exception {
        assertNotNull(mNewsListPresenter.getNewsFeed(mContext));
    }
}
Many thanks for any suggestions,
 
     
     
     
    