summaryrefslogtreecommitdiff
path: root/tests/src/com
diff options
context:
space:
mode:
authorMarcus Hagerott <mhagerott@google.com>2016-09-28 17:05:54 -0700
committerMarcus Hagerott <mhagerott@google.com>2016-10-13 10:28:52 -0700
commit073a091b4f94d7321b4e8f51e0ca240c5c264915 (patch)
treec508cf224a69ee44d230ab8f842e4c5a6563c3ad /tests/src/com
parentb3e609a74b6284addebfee7bf3b1b94edfd88d22 (diff)
downloadContacts-073a091b4f94d7321b4e8f51e0ca240c5c264915.tar.gz
Adjustments to MockContentProvider for tests.
Also add some helper methods to change the default account. Test Ran GoogleContactsTests Change-Id: Id14651f07cb0e046cc7b1e1dc387492cdb12bb18
Diffstat (limited to 'tests/src/com')
-rw-r--r--tests/src/com/android/contacts/RunMethodInstrumentation.java1
-rw-r--r--tests/src/com/android/contacts/common/database/SimContactDaoTests.java3
-rw-r--r--tests/src/com/android/contacts/common/test/mocks/MockContentProvider.java12
-rw-r--r--tests/src/com/android/contacts/tests/AccountsTestHelper.java31
4 files changed, 34 insertions, 13 deletions
diff --git a/tests/src/com/android/contacts/RunMethodInstrumentation.java b/tests/src/com/android/contacts/RunMethodInstrumentation.java
index 77f36ed08..11516b8ad 100644
--- a/tests/src/com/android/contacts/RunMethodInstrumentation.java
+++ b/tests/src/com/android/contacts/RunMethodInstrumentation.java
@@ -60,6 +60,7 @@ public class RunMethodInstrumentation extends Instrumentation {
start();
}
+ @Override
public void onStart() {
Log.d(TAG, "onStart");
super.onStart();
diff --git a/tests/src/com/android/contacts/common/database/SimContactDaoTests.java b/tests/src/com/android/contacts/common/database/SimContactDaoTests.java
index 5b25eb2b5..513f55145 100644
--- a/tests/src/com/android/contacts/common/database/SimContactDaoTests.java
+++ b/tests/src/com/android/contacts/common/database/SimContactDaoTests.java
@@ -26,6 +26,7 @@ import android.support.annotation.RequiresApi;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.LargeTest;
import android.support.test.filters.SdkSuppress;
+import android.support.test.filters.Suppress;
import android.support.test.runner.AndroidJUnit4;
import com.android.contacts.common.model.SimContact;
@@ -49,8 +50,6 @@ import static android.os.Build.VERSION_CODES;
import static org.hamcrest.Matchers.allOf;
import static org.junit.Assert.assertThat;
-import android.support.test.filters.Suppress;
-
@RunWith(Enclosed.class)
public class SimContactDaoTests {
diff --git a/tests/src/com/android/contacts/common/test/mocks/MockContentProvider.java b/tests/src/com/android/contacts/common/test/mocks/MockContentProvider.java
index 336467da7..d3950fc36 100644
--- a/tests/src/com/android/contacts/common/test/mocks/MockContentProvider.java
+++ b/tests/src/com/android/contacts/common/test/mocks/MockContentProvider.java
@@ -165,7 +165,7 @@ public class MockContentProvider extends android.test.mock.MockContentProvider {
public Cursor getResult(String[] projection) {
String[] columnNames;
if (mAnyProjection) {
- columnNames = projection;
+ columnNames = projection != null ? projection : mDefaultProjection;
} else {
columnNames = mProjection != null ? mProjection : mDefaultProjection;
}
@@ -176,9 +176,9 @@ public class MockContentProvider extends android.test.mock.MockContentProvider {
cursor.addRow((Object[]) row);
} else {
ContentValues values = (ContentValues) row;
- Object[] columns = new Object[projection.length];
- for (int i = 0; i < projection.length; i++) {
- columns[i] = values.get(projection[i]);
+ Object[] columns = new Object[columnNames.length];
+ for (int i = 0; i < columnNames.length; i++) {
+ columns[i] = values.get(columnNames[i]);
}
cursor.addRow(columns);
}
@@ -485,6 +485,10 @@ public class MockContentProvider extends android.test.mock.MockContentProvider {
return expect(new Query(contentUri));
}
+ public Query expectQuery(String contentUri) {
+ return expectQuery(Uri.parse(contentUri));
+ }
+
public void expectTypeQuery(Uri uri, String type) {
mExpectedTypeQueries.put(uri, type);
}
diff --git a/tests/src/com/android/contacts/tests/AccountsTestHelper.java b/tests/src/com/android/contacts/tests/AccountsTestHelper.java
index 11476b33d..c25c3b484 100644
--- a/tests/src/com/android/contacts/tests/AccountsTestHelper.java
+++ b/tests/src/com/android/contacts/tests/AccountsTestHelper.java
@@ -28,6 +28,7 @@ import android.support.test.InstrumentationRegistry;
import android.util.Log;
import com.android.contacts.common.model.account.AccountWithDataSet;
+import com.android.contacts.common.preference.ContactsPreferences;
import static junit.framework.Assert.assertNotNull;
import static junit.framework.Assert.assertTrue;
@@ -38,8 +39,6 @@ public class AccountsTestHelper {
public static final String TEST_ACCOUNT_TYPE = "com.android.contacts.tests.testauth.basic";
- public static final String EXTRA_ACCOUNT_NAME = "accountName";
-
private final Context mContext;
private final AccountManager mAccountManager;
private final ContentResolver mResolver;
@@ -117,9 +116,9 @@ public class AccountsTestHelper {
* -w com.google.android.contacts.tests/com.android.contacts.RunMethodInstrumentation
*/
public static void addTestAccount(Context context, Bundle args) {
- final String accountName = args.getString(EXTRA_ACCOUNT_NAME);
+ final String accountName = args.getString("name");
if (accountName == null) {
- Log.e(TAG, "args must contain extra " + EXTRA_ACCOUNT_NAME);
+ Log.e(TAG, "args must contain extra \"name\"");
return;
}
@@ -128,13 +127,31 @@ public class AccountsTestHelper {
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP_MR1)
public static void removeTestAccount(Context context, Bundle args) {
- final String accountName = args.getString(EXTRA_ACCOUNT_NAME);
+ final String accountName = args.getString("name");
if (accountName == null) {
- Log.e(TAG, "args must contain extra " + EXTRA_ACCOUNT_NAME);
+ Log.e(TAG, "args must contain extra \"name\"");
return;
}
- AccountWithDataSet account = new AccountWithDataSet(accountName, TEST_ACCOUNT_TYPE, null);
+ final AccountWithDataSet account = new AccountWithDataSet(accountName, TEST_ACCOUNT_TYPE,
+ null);
new AccountsTestHelper(context).removeTestAccount(account);
}
+
+ public static void setDefaultAccount(Context context, Bundle args) {
+ final String name = args.getString("name");
+ final String type = args.getString("type");
+
+ if (name == null || type == null) {
+ Log.e(TAG, "args must contain extras \"name\" and \"type\"");
+ return;
+ }
+
+ new ContactsPreferences(context).setDefaultAccount(
+ new AccountWithDataSet(name, type, null));
+ }
+
+ public static void clearDefaultAccount(Context context) {
+ new ContactsPreferences(context).clearDefaultAccount();
+ }
}