summaryrefslogtreecommitdiff
path: root/tests/Internal
diff options
context:
space:
mode:
authorLucas Dupin <dupin@google.com>2017-08-11 10:30:58 -0700
committerLucas Dupin <dupin@google.com>2017-08-15 11:30:19 -0700
commite2efebc8a25d1bd44e588cc81f825d6337d87a23 (patch)
treeada8f6cc64fc5e5acfb2d26ecc9bae5c62e9943a /tests/Internal
parent143c678bb5e9ed4bae50043c52e6d47203bdec87 (diff)
Do not filter out some colors
Colors specified manually using the public WallpaperColors constructor should not be blacklisted. Test: runtest -x tests/Internal/src/android/app/WallpaperColorsTest.java Test: runtest -x tests/Internal/src/com/android/internal/colorextraction/types/TonalTest.java Change-Id: I96faf413e3629c247220d825bb7c3480ed2f1003 Fixes: 64361146
Diffstat (limited to 'tests/Internal')
-rw-r--r--tests/Internal/src/android/app/WallpaperColorsTest.java22
-rw-r--r--tests/Internal/src/com/android/internal/colorextraction/types/TonalTest.java33
2 files changed, 41 insertions, 14 deletions
diff --git a/tests/Internal/src/android/app/WallpaperColorsTest.java b/tests/Internal/src/android/app/WallpaperColorsTest.java
index fb529b936e5c..881f6284413f 100644
--- a/tests/Internal/src/android/app/WallpaperColorsTest.java
+++ b/tests/Internal/src/android/app/WallpaperColorsTest.java
@@ -36,12 +36,12 @@ public class WallpaperColorsTest {
final Color color = Color.valueOf(Color.WHITE);
// Default should not support dark text!
WallpaperColors colors = new WallpaperColors(color, null, null, 0);
- Assert.assertTrue("Default behavior is not to support dark text",
+ Assert.assertTrue("Default behavior is not to support dark text.",
(colors.getColorHints() & WallpaperColors.HINT_SUPPORTS_DARK_TEXT) == 0);
// Override it
colors = new WallpaperColors(color, null, null, WallpaperColors.HINT_SUPPORTS_DARK_TEXT);
- Assert.assertFalse("Forcing dark text support doesn't work",
+ Assert.assertFalse("Forcing dark text support doesn't work.",
(colors.getColorHints() & WallpaperColors.HINT_SUPPORTS_DARK_TEXT) == 0);
}
@@ -57,15 +57,18 @@ public class WallpaperColorsTest {
int hints = WallpaperColors.fromBitmap(image).getColorHints();
boolean supportsDarkText = (hints & WallpaperColors.HINT_SUPPORTS_DARK_TEXT) != 0;
boolean supportsDarkTheme = (hints & WallpaperColors.HINT_SUPPORTS_DARK_THEME) != 0;
- Assert.assertTrue("White surface should support dark text", supportsDarkText);
- Assert.assertFalse("White surface shouldn't support dark theme", supportsDarkTheme);
+ boolean fromBitmap = (hints & WallpaperColors.HINT_FROM_BITMAP) != 0;
+ Assert.assertTrue("White surface should support dark text.", supportsDarkText);
+ Assert.assertFalse("White surface shouldn't support dark theme.", supportsDarkTheme);
+ Assert.assertTrue("From bitmap should be true if object was created "
+ + "using WallpaperColors#fromBitmap.", fromBitmap);
canvas.drawColor(Color.BLACK);
hints = WallpaperColors.fromBitmap(image).getColorHints();
supportsDarkText = (hints & WallpaperColors.HINT_SUPPORTS_DARK_TEXT) != 0;
supportsDarkTheme = (hints & WallpaperColors.HINT_SUPPORTS_DARK_THEME) != 0;
- Assert.assertFalse("Black surface shouldn't support dark text", supportsDarkText);
- Assert.assertTrue("Black surface should support dark theme", supportsDarkTheme);
+ Assert.assertFalse("Black surface shouldn't support dark text.", supportsDarkText);
+ Assert.assertTrue("Black surface should support dark theme.", supportsDarkTheme);
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
@@ -75,7 +78,12 @@ public class WallpaperColorsTest {
supportsDarkText = (WallpaperColors.fromBitmap(image)
.getColorHints() & WallpaperColors.HINT_SUPPORTS_DARK_TEXT) != 0;
Assert.assertFalse("Light surface shouldn't support dark text "
- + "when it contains dark pixels", supportsDarkText);
+ + "when it contains dark pixels.", supportsDarkText);
+
+ WallpaperColors colors = new WallpaperColors(Color.valueOf(Color.GREEN), null, null);
+ fromBitmap = (colors.getColorHints() & WallpaperColors.HINT_FROM_BITMAP) != 0;
+ Assert.assertFalse("Object created from public constructor should not contain "
+ + "HINT_FROM_BITMAP.", fromBitmap);
}
/**
diff --git a/tests/Internal/src/com/android/internal/colorextraction/types/TonalTest.java b/tests/Internal/src/com/android/internal/colorextraction/types/TonalTest.java
index 6dc9ba7b621f..d46fff4db65a 100644
--- a/tests/Internal/src/com/android/internal/colorextraction/types/TonalTest.java
+++ b/tests/Internal/src/com/android/internal/colorextraction/types/TonalTest.java
@@ -99,20 +99,39 @@ public class TonalTest {
}
@Test
- public void tonal_excludeBlacklistedColor() {
+ public void tonal_blacklistTest() {
// Make sure that palette generation will fail.
- Tonal tonal = new Tonal(InstrumentationRegistry.getContext());
+ final Tonal tonal = new Tonal(InstrumentationRegistry.getContext());
// Creating a WallpaperColors object that contains *only* blacklisted colors.
- float[] hsl = tonal.getBlacklistedColors().get(0).getCenter();
- WallpaperColors colors = new WallpaperColors(Color.valueOf(ColorUtils.HSLToColor(hsl)),
- null, null, 0);
+ final float[] hsl = tonal.getBlacklistedColors().get(0).getCenter();
+ final int blacklistedColor = ColorUtils.HSLToColor(hsl);
+ WallpaperColors colorsFromBitmap = new WallpaperColors(Color.valueOf(blacklistedColor),
+ null, null, WallpaperColors.HINT_FROM_BITMAP);
// Make sure that palette generation will fail
- GradientColors normal = new GradientColors();
- tonal.extractInto(colors, normal, new GradientColors(),
+ final GradientColors normal = new GradientColors();
+ tonal.extractInto(colorsFromBitmap, normal, new GradientColors(),
new GradientColors());
assertTrue("Cannot generate a tonal palette from blacklisted colors.",
normal.getMainColor() == Tonal.MAIN_COLOR_DARK);
}
+
+ @Test
+ public void tonal_ignoreBlacklistTest() {
+ final Tonal tonal = new Tonal(InstrumentationRegistry.getContext());
+
+ // Creating a WallpaperColors object that contains *only* blacklisted colors.
+ final float[] hsl = tonal.getBlacklistedColors().get(0).getCenter();
+ final int blacklistedColor = ColorUtils.HSLToColor(hsl);
+ WallpaperColors colors = new WallpaperColors(Color.valueOf(blacklistedColor),
+ null, null);
+
+ // Blacklist should be ignored when HINT_FROM_BITMAP isn't present.
+ final GradientColors normal = new GradientColors();
+ tonal.extractInto(colors, normal, new GradientColors(),
+ new GradientColors());
+ assertTrue("Blacklist should never be used on WallpaperColors generated using "
+ + "default constructor.", normal.getMainColor() == blacklistedColor);
+ }
}