19e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhampackage com.xtremelabs.robolectric.shadows; 29e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 39e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport android.content.pm.ActivityInfo; 49e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport android.content.pm.PackageManager; 59e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport android.content.pm.ResolveInfo; 69e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 79e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport com.xtremelabs.robolectric.Robolectric; 89e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport com.xtremelabs.robolectric.internal.Implementation; 99e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport com.xtremelabs.robolectric.internal.Implements; 109e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 119e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham@Implements( ResolveInfo.class ) 129e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhampublic class ShadowResolveInfo { 139e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 149e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham private String label; 159e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 169e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham @Implementation 179e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham public String loadLabel( PackageManager mgr ) { return label; } 189e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 199e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham /** 209e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham * Non-Android accessor used to set the value returned by {@link loadLabel} 219e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham */ 229e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham public void setLabel( String l ) { label = l; } 239e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 249e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham /** 259e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham * Non-Android accessor used for creating ResolveInfo objects 269e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham * @param displayName 279e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham * @param packageName 289e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham * @return 299e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham */ 309e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham public static ResolveInfo newResolveInfo( String displayName, String packageName ) { 31784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen return newResolveInfo( displayName, packageName, null); 32784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen } 33784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen 34784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen /** 35784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen * Non-Android accessor used for creating ResolveInfo objects 36784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen * @param displayName 37784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen * @param packageName 38784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen * @return 39784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen */ 40784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen public static ResolveInfo newResolveInfo( String displayName, String packageName, String activityName ) { 419e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 429e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham ResolveInfo resInfo = new ResolveInfo(); 439e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham ActivityInfo actInfo = new ActivityInfo(); 449e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham actInfo.packageName = packageName; 45784a2c0d7ce374001b6d403c4d7c3106cdc551c9Jessica Chen actInfo.name = activityName; 469e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham resInfo.activityInfo = actInfo; 479e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham 489e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham ShadowResolveInfo shResolve = Robolectric.shadowOf(resInfo ); 499e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham shResolve.setLabel( displayName ); 509e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham return resInfo; 519e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham } 529e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham} 53