diff options
Diffstat (limited to 'tests/src/com/android/providers/contacts/VoicemailProviderTest.java')
-rw-r--r-- | tests/src/com/android/providers/contacts/VoicemailProviderTest.java | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/src/com/android/providers/contacts/VoicemailProviderTest.java b/tests/src/com/android/providers/contacts/VoicemailProviderTest.java index 9f9ef002..d20b9b3c 100644 --- a/tests/src/com/android/providers/contacts/VoicemailProviderTest.java +++ b/tests/src/com/android/providers/contacts/VoicemailProviderTest.java @@ -21,8 +21,10 @@ import static org.mockito.Mockito.verify; import android.content.ContentUris; import android.content.ContentValues; +import android.database.ContentObserver; import android.database.Cursor; import android.net.Uri; +import android.os.Handler; import android.os.ParcelFileDescriptor; import android.os.Process; import android.provider.CallLog; @@ -739,6 +741,28 @@ public class VoicemailProviderTest extends BaseVoicemailProviderTest { assertStoredValues(uri, values); } + public void testStatusUpdate_observerNotified() throws Exception { + Uri uri = insertTestStatusEntry(); + ContentValues values = getTestStatusValues(); + values.put(Status.DATA_CHANNEL_STATE, Status.DATA_CHANNEL_STATE_NO_CONNECTION); + values.put(Status.NOTIFICATION_CHANNEL_STATE, + Status.NOTIFICATION_CHANNEL_STATE_MESSAGE_WAITING); + values.put(Status.SOURCE_TYPE, + "vvm_type_test2"); + Boolean[] observerTriggered = new Boolean[]{false}; + mResolver.registerContentObserver(Status.CONTENT_URI, true, + new ContentObserver(new Handler()) { + @Override + public void onChange(boolean selfChange, Uri uri) { + observerTriggered[0] = true; + } + }); + + mResolver.update(uri, values, null, null); + + assertTrue(observerTriggered[0]); + } + public void testStatusUpsert() throws Exception { ContentValues values = getTestStatusValues(); mResolver.insert(statusUri(), values); |