summaryrefslogtreecommitdiffstats
path: root/test-runner
diff options
context:
space:
mode:
authorFred Quintana <fredq@google.com>2009-04-27 15:08:17 -0700
committerFred Quintana <fredq@google.com>2009-04-27 15:08:17 -0700
commit0eabf0228a17e07ef831bc1ee1951c9697d2a079 (patch)
tree2e34c6f41c478289cd1122913f43d27f9bff0172 /test-runner
parentd004ee1b0a1f869f5e48ffc29b8ce9c6a8c77e23 (diff)
downloadframeworks_base-0eabf0228a17e07ef831bc1ee1951c9697d2a079.zip
frameworks_base-0eabf0228a17e07ef831bc1ee1951c9697d2a079.tar.gz
frameworks_base-0eabf0228a17e07ef831bc1ee1951c9697d2a079.tar.bz2
change the IsolatedContext to have a test version of the AccountManager that has no IBinder to the AccountManagerService.
Diffstat (limited to 'test-runner')
-rw-r--r--test-runner/android/test/IsolatedContext.java21
1 files changed, 20 insertions, 1 deletions
diff --git a/test-runner/android/test/IsolatedContext.java b/test-runner/android/test/IsolatedContext.java
index 2866666..03d95b7 100644
--- a/test-runner/android/test/IsolatedContext.java
+++ b/test-runner/android/test/IsolatedContext.java
@@ -2,6 +2,8 @@ package android.test;
import com.google.android.collect.Lists;
+import android.accounts.AccountManager;
+import android.accounts.OnAccountsUpdatedListener;
import android.content.ContextWrapper;
import android.content.ContentResolver;
import android.content.Intent;
@@ -11,6 +13,8 @@ import android.content.BroadcastReceiver;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.net.Uri;
+import android.os.Handler;
+import android.os.Looper;
import java.util.List;
@@ -21,6 +25,7 @@ import java.util.List;
public class IsolatedContext extends ContextWrapper {
private ContentResolver mResolver;
+ private final MockAccountManager mMockAccountManager;
private List<Intent> mBroadcastIntents = Lists.newArrayList();
@@ -28,6 +33,7 @@ public class IsolatedContext extends ContextWrapper {
ContentResolver resolver, Context targetContext) {
super(targetContext);
mResolver = resolver;
+ mMockAccountManager = new MockAccountManager();
}
/** Returns the list of intents that were broadcast since the last call to this method. */
@@ -78,8 +84,21 @@ public class IsolatedContext extends ContextWrapper {
@Override
public Object getSystemService(String name) {
- // No services exist in this context.
+ if (Context.ACCOUNT_SERVICE.equals(name)) {
+ return mMockAccountManager;
+ }
+ // No other services exist in this context.
return null;
}
+ private class MockAccountManager extends AccountManager {
+ public MockAccountManager() {
+ super(IsolatedContext.this, null /* IAccountManager */, null /* handler */);
+ }
+
+ public void addOnAccountsUpdatedListener(OnAccountsUpdatedListener listener,
+ Handler handler, boolean updateImmediately) {
+ // do nothing
+ }
+ }
}