Add intent extra when launching WallpaperPicker from SUW and Settings

- Add extra to these intents to help WallpaperPicker log the launch
 source

Bug: 154781896
Test: make SettingsRoboTests
Change-Id: Ifb0ed22ab8ebfbb3c2ad24e9b7bad80007162b6e
This commit is contained in:
Wesley.CW Wang
2020-09-08 15:48:37 +08:00
committed by Wesley Wang
parent a6575f9bb8
commit ff0e65c7f7
5 changed files with 34 additions and 2 deletions

View File

@@ -211,4 +211,19 @@ public class WallpaperPreferenceControllerTest {
.getNextStartedActivityForResult().intent.getComponent().getClassName())
.isEqualTo(mContext.getString(R.string.config_styles_and_wallpaper_picker_class));
}
@Test
public void handlePreferenceTreeClick_launchSourceExtra() {
mShadowPackageManager.setResolveInfosForIntent(
mWallpaperIntent, Lists.newArrayList());
mShadowPackageManager.setResolveInfosForIntent(
mStylesAndWallpaperIntent, Lists.newArrayList());
Preference preference = new Preference(mContext);
preference.setKey(TEST_KEY);
mController.handlePreferenceTreeClick(preference);
assertThat(Shadows.shadowOf(mContext).getNextStartedActivityForResult()
.intent.hasExtra("com.android.wallpaper.LAUNCH_SOURCE")).isTrue();
}
}

View File

@@ -56,6 +56,7 @@ public class WallpaperSuggestionActivityTest {
private static final String PACKAGE_WALLPAPER_ACTIVITY =
"com.android.settings.wallpaper.WallpaperSuggestionActivity";
private static final String WALLPAPER_FLAVOR = "com.android.launcher3.WALLPAPER_FLAVOR";
private static final String WALLPAPER_LAUNCH_SOURCE = "com.android.wallpaper.LAUNCH_SOURCE";
@Before
public void setUp() {
@@ -100,7 +101,7 @@ public class WallpaperSuggestionActivityTest {
}
@Test
public void addExtras_intentFromSetupWizard_extrasHasWallpaperOnly() {
public void addExtras_intentFromSetupWizard_extrasHasWallpaperOnlyAndLaunchedSuw() {
WallpaperSuggestionActivity activity =
Robolectric.buildActivity(WallpaperSuggestionActivity.class, new Intent(
Intent.ACTION_MAIN).setComponent(
@@ -112,6 +113,8 @@ public class WallpaperSuggestionActivityTest {
assertThat(intent).isNotNull();
assertThat(intent.getStringExtra(WALLPAPER_FLAVOR)).isEqualTo("wallpaper_only");
assertThat(intent.getStringExtra(WALLPAPER_LAUNCH_SOURCE))
.isEqualTo("app_launched_suw");
}
@Test