@Test public void colors() { final Color color1 = Color.fromRGB(0, 0, 0); assertThat(color1.toString(), is("#000000")); final Color color2 = Color.fromRGB(0, 0, 255); assertThat(color2.toString(), is("#0000FF")); final Color color3 = Color.fromRGB(0, 9, 255); assertThat(color3.toString(), is("#0009FF")); final Color color4 = Color.fromRGB(12, 0, 1); assertThat(color4.toString(), is("#0C0001")); }
@Test public void fromHSV() { assertThat(Color.fromHSV(0, 0, 0).toString(), is("#000000")); assertThat(Color.fromHSV(0, 1, 0).toString(), is("#000000")); assertThat(Color.fromHSV(0, -1, 0).toString(), is("#000000")); assertThat(Color.fromHSV(0, 0, 1).toString(), is("#FFFFFF")); assertThat(Color.fromHSV(0, 0, -1).toString(), is("#000000")); assertThat(Color.fromHSV(1, 1, 0).toString(), is("#000000")); assertThat(Color.fromHSV(1, 1, 0.2f).toString(), is("#330000")); assertThat(Color.fromHSV(1, 0.2f, 0.2f).toString(), is("#332929")); assertThat(Color.fromHSV(0.2f, 0.2f, 0.2f).toString(), is("#313329")); assertThat(Color.fromHSV(-0.2f, 0.2f, 0.2f).toString(), is("#312933")); assertThat(Color.fromHSV(0.2f, -0.2f, 0.2f).toString(), is("#35333D")); assertThat(Color.fromHSV(0.2f, 0.2f, -0.2f).toString(), is("#000000")); }
@Test public void fromProperties() { final Properties properties = new Properties(); properties.put(test_color.toString().substring(1), "SC.*"); properties.put(test_color.toString().substring(1) + "A", "SC.*"); properties.put("000000", "QW.*"); final RegularExpressionColorMap colorMap = new RegularExpressionColorMap(properties); assertThat(colorMap.size(), is(2)); assertThat(colorMap.match("SCH"), is(not(emptyOptional()))); assertThat(colorMap.match("SCH").get().equals(test_color), is(true)); assertThat(colorMap.match("SHC"), emptyOptional()); assertThat(colorMap.match("QW"), is(not(emptyOptional()))); }
@Test public void happyPath() { final RegularExpressionColorMap colorMap = new RegularExpressionColorMap(); colorMap.put("SC.*", test_color.toString()); assertThat(colorMap.match("SCH"), is(not(emptyOptional()))); assertThat(colorMap.match("SCH").get().equals(test_color), is(true)); assertThat(colorMap.match("SC.*"), is(not(emptyOptional()))); assertThat(colorMap.match("SHC"), emptyOptional()); }
@Test public void badColors() { final RegularExpressionColorMap colorMap = new RegularExpressionColorMap(); colorMap.put("SC.*", "1A3B5"); assertThat(colorMap.match("SCH"), emptyOptional()); colorMap.put("SC.*", test_color.toString().substring(1) + "A"); assertThat(colorMap.match("SCH"), emptyOptional()); colorMap.put("SC.*", test_color.toString().substring(1)); assertThat(colorMap.match("SCH"), emptyOptional()); }
@Test public void badPatterns() { final RegularExpressionColorMap colorMap = new RegularExpressionColorMap(); colorMap.put("SC(H", test_color.toString()); assertThat(colorMap.match("SCH"), emptyOptional()); }
@Test public void fromHexTriplet() { assertThat(Color.fromHexTriplet("#010203").toString(), is("#010203")); assertThrows(IllegalArgumentException.class, () -> Color.fromHexTriplet(null)); assertThrows(IllegalArgumentException.class, () -> Color.fromHexTriplet("")); assertThrows(IllegalArgumentException.class, () -> Color.fromHexTriplet(" ")); assertThrows(IllegalArgumentException.class, () -> Color.fromHexTriplet("123456")); assertThrows(IllegalArgumentException.class, () -> Color.fromHexTriplet("#1234567")); assertThrows(IllegalArgumentException.class, () -> Color.fromHexTriplet("#12345")); }