replicant-packages_apps_Email/tests/src/com/android/email/MockVendorPolicy.java
Makoto Onuki 36d3dfaeac Extract MockVendorPolicy, add standard mechanism to inject it.
One thing that bothers me regarding the new ImapStore is that there is no
tests to verify if the way how getImapId() uses a vendor policy hasn't changed.
This part is hard to test with a real vendor policy, and it can easily be
overlooked even if it's broken.

This CL offers ImapStoreUnitTests a way to test the interaction between
getImapId() and a vendor policy.

Also fixed a bug in VendorPolicyLoaderTest where it assumed the test apk
package name is "com.android.email.tests", but it may actually be
"com.google.android.email.tests" now.  (Broken since the test makefile
used inherit-package.)

Change-Id: I8feb616ea28cb5cae5b4fba57e363771014ac599
2010-06-11 15:11:15 -07:00

41 lines
1.2 KiB
Java

/*
* Copyright (C) 2010 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.email;
import android.content.Context;
import android.os.Bundle;
public class MockVendorPolicy {
public static String passedPolicy;
public static Bundle passedBundle;
public static Bundle mockResult;
public static Bundle getPolicy(String policy, Bundle args) {
passedPolicy = policy;
passedBundle = args;
return mockResult;
}
/**
* Call it to enable {@link MockVendorPolicy}.
*/
public static void inject(Context context) {
VendorPolicyLoader.injectPolicyForTest(context, context.getPackageName(),
MockVendorPolicy.class);
}
}