### Question:
BaseServiceInfoProvider extends ContentProvider { @Override public final Bundle call(String method, String arg, Bundle extras) { Bundle bundle = new Bundle(); if (method == null || method.isEmpty()) { method = METHOD_GET_SERVICE_INFO; } switch (method) { case METHOD_GET_SERVICE_INFO: bundle.putString(SERVICE_INFO_KEY, getServiceInfo()); break; case METHOD_PROVIDE_ERROR: boolean handled = onServiceInfoError(extras.getString(SERVICE_INFO_ERROR_KEY), extras.getString(SERVICE_INFO_ERROR_DESC_KEY)); bundle.putBoolean(SERVICE_INFO_ERROR_HANDLED_KEY, handled); break; default: break; } return bundle; } protected  BaseServiceInfoProvider(String serviceInfoChangeBroadcast); int delete(Uri uri, String selection, String[] selectionArgs); String getType(Uri uri); Uri insert(Uri uri, ContentValues values); boolean onCreate(); Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder); int update(Uri uri, ContentValues values, String selection, String[] selectionArgs); @Override final Bundle call(String method, String arg, Bundle extras); final void notifyServiceInfoChange(); static void notifyServiceInfoChange(Context context, String configChangeBroadcast); static final String SERVICE_INFO_KEY; static final String SERVICE_INFO_ERROR_KEY; static final String SERVICE_INFO_ERROR_DESC_KEY; static final String SERVICE_INFO_ERROR_HANDLED_KEY; static final String METHOD_GET_SERVICE_INFO; static final String METHOD_PROVIDE_ERROR; }### Answer:
@Test public void shouldSetServiceInfoInBundleWithCorrectKey() throws Exception { TestServiceInfoProvider serviceInfoProvider = new TestServiceInfoProvider(""); Bundle bundle = serviceInfoProvider.call("", "", null); assertThat(bundle.getString(BaseServiceInfoProvider.SERVICE_INFO_KEY)).isEqualTo(SERVICE_INFO_STRING); }