package droidkit.sqlite; import android.test.ActivityInstrumentationTestCase2; import junit.framework.Assert; import droidkit.sqlite.mock.User; import droidkit.test.BuildConfig; /** * @author Daniel Serdyukov */ public class LoaderCallbacksTest extends ActivityInstrumentationTestCase2<LoaderCallbacksActivity> { private SQLite mSQLite; private LoaderCallbacksActivity mActivity; public LoaderCallbacksTest() { super(LoaderCallbacksActivity.class); SQLite.attach(BuildConfig.APPLICATION_ID); } @Override public void setUp() throws Exception { super.setUp(); mSQLite = SQLite.with(getInstrumentation().getContext()); final User user = new User(); user.setName("John"); user.setAge(25); mSQLite.insert(user); mActivity = getActivity(); } public void testLoaderCallbacks() throws Exception { SQLiteResult<User> users = mActivity.mLoadedData.take(); Assert.assertEquals(1, users.size()); final User user = new User(); user.setName("John"); user.setAge(25); mSQLite.insert(user); users = mActivity.mLoadedData.take(); Assert.assertEquals(2, users.size()); Assert.assertEquals(2, mActivity.mOnLoadFinishedCalls.get()); } @Override public void tearDown() throws Exception { getInstrumentation().getContext().getContentResolver().delete(User.URI, null, null); super.tearDown(); } }