aboutsummaryrefslogtreecommitdiff
path: root/tests/src/com/android/providers/contacts/ContactsDatabaseHelperTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src/com/android/providers/contacts/ContactsDatabaseHelperTest.java')
-rw-r--r--tests/src/com/android/providers/contacts/ContactsDatabaseHelperTest.java43
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/src/com/android/providers/contacts/ContactsDatabaseHelperTest.java b/tests/src/com/android/providers/contacts/ContactsDatabaseHelperTest.java
index a9867c53..2e2e9242 100644
--- a/tests/src/com/android/providers/contacts/ContactsDatabaseHelperTest.java
+++ b/tests/src/com/android/providers/contacts/ContactsDatabaseHelperTest.java
@@ -18,6 +18,7 @@ package com.android.providers.contacts;
import android.content.ContentValues;
import android.database.ContentObserver;
+import android.accounts.Account;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
@@ -508,4 +509,46 @@ public class ContactsDatabaseHelperTest extends BaseContactsProvider2Test {
assertEquals(creationTime, dbHelper2.getDatabaseCreationTime());
}
+
+ public void testGetAndSetDefaultAccount() {
+ Account account = mDbHelper.getDefaultAccount();
+ assertNull(account);
+
+ mDbHelper.setDefaultAccount("a", "b");
+ account = mDbHelper.getDefaultAccount();
+ assertEquals("a", account.name);
+ assertEquals("b", account.type);
+
+ mDbHelper.setDefaultAccount("c", "d");
+ account = mDbHelper.getDefaultAccount();
+ assertEquals("c", account.name);
+ assertEquals("d", account.type);
+
+ mDbHelper.setDefaultAccount(null, null);
+ account = mDbHelper.getDefaultAccount();
+ assertNull(account);
+
+ // Invalid account (not-null account name and null account type) throws exception.
+ try {
+ mDbHelper.setDefaultAccount("name", null);
+ fail("Setting default account to an invalid account should fail.");
+ } catch (IllegalArgumentException e) {
+ // expected.
+ }
+ account = mDbHelper.getDefaultAccount();
+ assertNull(account);
+
+ // Update default account to an existing account
+ mDbHelper.setDefaultAccount("a", "b");
+ account = mDbHelper.getDefaultAccount();
+ assertEquals("a", account.name);
+ assertEquals("b", account.type);
+
+ try (Cursor cursor = mDbHelper.getReadableDatabase().query(Tables.ACCOUNTS, new String[]{
+ ContactsDatabaseHelper.AccountsColumns.ACCOUNT_NAME,
+ ContactsDatabaseHelper.AccountsColumns.ACCOUNT_TYPE
+ }, null, null, null, null, null)) {
+ assertEquals(3, cursor.getCount());
+ }
+ }
}