diff options
author | Ta-wei Yen <twyen@google.com> | 2018-06-01 16:03:01 -0700 |
---|---|---|
committer | Ta-wei Yen <twyen@google.com> | 2018-06-01 16:04:11 -0700 |
commit | 8c892903f8eac55db45cdbf232ec7c2bc697ff48 (patch) | |
tree | b6938731193cb50c5abbdd6606c1b9781d86dcb4 /tests | |
parent | 5759b04e94a87749a7626ec9d01334bef0ac320b (diff) | |
download | ContactsProvider-8c892903f8eac55db45cdbf232ec7c2bc697ff48.tar.gz |
Fix VoicemailContentProvider not notifying status changespie-dr1-devpie-dev
In ag/3423779 the VoicemailContentProvider is changed to only notify
changes that touches columns in the voicemail content table, and
voicemail status changes are no longer notified.
Change-Id: Iff71b4de7dc050a6928a73feafccee9699b61dec
Fixes: 80102094
Test: tradefed ContactsProviderTests
Diffstat (limited to 'tests')
-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); |