private static void assertThemeUsed(ActionBarIconGenerator.Theme theme, @Nullable Color color) throws Exception { ArgumentCaptor<ActionBarIconGenerator.ActionBarOptions> argument = ArgumentCaptor.forClass(ActionBarIconGenerator.ActionBarOptions.class); ActionBarIconGenerator generator = mock(ActionBarIconGenerator.class); TemplateWizardState state = new TemplateWizardState(); AssetStudioAssetGenerator studioGenerator = new AssetStudioAssetGenerator( new TemplateWizardContextAdapter(state), generator, null, null); pickImage(state); state.put(ATTR_ASSET_TYPE, AssetType.ACTIONBAR.name()); state.put(ATTR_ASSET_THEME, theme.name()); state.put(ATTR_FOREGROUND_COLOR, color); studioGenerator.generateImages(true); verify(generator, times(1)) .generate( isNull(String.class), any(Map.class), eq(studioGenerator), argument.capture(), anyString()); assertEquals(theme, argument.getValue().theme); if (color != null && theme.equals(ActionBarIconGenerator.Theme.CUSTOM)) { assertEquals(color.getRGB(), argument.getValue().customThemeColor); } }
public void testNoOp() throws Exception { myAssetGenerator.generateImages(true); verify(myNotificationIconGenerator, never()) .generate(any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class)); verify(myNotificationIconGenerator, never()) .generate( anyString(), any(Map.class), any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class), anyString()); verify(myActionBarIconGenerator, never()) .generate(any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class)); verify(myActionBarIconGenerator, never()) .generate( anyString(), any(Map.class), any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class), anyString()); verify(myLauncherIconGenerator, never()) .generate(any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class)); verify(myLauncherIconGenerator, never()) .generate( anyString(), any(Map.class), any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class), anyString()); }
public void testActionBarIcons() throws Exception { myState.put(ATTR_ASSET_TYPE, AssetType.ACTIONBAR.name()); myAssetGenerator.generateImages(true); verify(myNotificationIconGenerator, never()) .generate(any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class)); verify(myNotificationIconGenerator, never()) .generate( anyString(), any(Map.class), any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class), anyString()); verify(myActionBarIconGenerator, never()) .generate(eq(myAssetGenerator), any(ActionBarIconGenerator.ActionBarOptions.class)); verify(myActionBarIconGenerator, times(1)) .generate( isNull(String.class), any(Map.class), eq(myAssetGenerator), any(ActionBarIconGenerator.ActionBarOptions.class), eq(ASSET_NAME)); verify(myLauncherIconGenerator, never()) .generate(any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class)); verify(myLauncherIconGenerator, never()) .generate( anyString(), any(Map.class), any(GraphicGeneratorContext.class), any(GraphicGenerator.Options.class), anyString()); }
private ArgumentCaptor<ActionBarIconGenerator.ActionBarOptions> runImageTest() throws Exception { ArgumentCaptor<ActionBarIconGenerator.ActionBarOptions> argument = ArgumentCaptor.forClass(ActionBarIconGenerator.ActionBarOptions.class); myState.put(ATTR_ASSET_TYPE, AssetType.ACTIONBAR.name()); myState.put(ATTR_ASSET_THEME, ActionBarIconGenerator.Theme.HOLO_DARK.name()); myAssetGenerator.generateImages(true); verify(myActionBarIconGenerator, times(1)) .generate( isNull(String.class), any(Map.class), eq(myAssetGenerator), argument.capture(), anyString()); return argument; }