I am attempting to test the update() method of my custom content
provider. I receive a null pointer exception due to the getContext()
method call within the update() method being null. To alleviate this
issue I have attempted implementing
http://stackoverflow.com/questions/6516441/why-does-androidtestcase-getcontext-getapplicationcontext-return-null
to no avail. My test class looks like the following:
public class AddressContentProviderTest extends
ProviderTestCase2<AddressContentProvider> {
public void testInsert() {
Uri CONTENT_URI = Uri.parse("content://" +
AddressContentProvider.AUTHORITY + "/address");
AddressContentProvider addressContentProvider = new
AddressContentProvider();
ContentValues initialValues = new ContentValues();
boolean isException = false;
Uri returnURI = null;
initialValues.put("country", "USA");
initialValues.put("region", "test");
initialValues.put("city", "Jacksonville");
initialValues.put("state", "FL");
initialValues.put("zip", "32258");
initialValues.put("province", "test");
initialValues.put("geo_location_id", "");
returnURI = addressContentProvider.insert(CONTENT_URI,
initialValues);
assertTrue(returnURI != null);
}
The insert method looks like the following:
@Override
public int update(Uri uri, ContentValues values, String where,
String[] whereArgs) {
SQLiteDatabase db =dbHelper.getWritableDatabase();
int count;
switch (sUriMatcher.match(uri)) {
case ADDRESS:
count = db.update(ADDRESS_TABLE_NAME, values, where,
whereArgs);
break;
default:
throw new IllegalArgumentException("Unknown URI " +
uri);
}
getContext().getContentResolver().notifyChange(uri, null);
return count;
}
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en