123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- package com.vaadin.tests.components.colorpicker;
-
- import static org.junit.Assert.assertEquals;
- import static org.junit.Assert.assertFalse;
- import static org.junit.Assert.assertTrue;
-
- import java.util.List;
-
- import org.junit.Before;
- import org.junit.Test;
- import org.openqa.selenium.Keys;
- import org.openqa.selenium.WebElement;
- import org.openqa.selenium.remote.DesiredCapabilities;
-
- import com.vaadin.testbench.elements.ColorPickerElement;
- import com.vaadin.testbench.elements.ColorPickerPreviewElement;
- import com.vaadin.testbench.parallel.Browser;
- import com.vaadin.tests.tb3.MultiBrowserTest;
-
- /**
- * Test legal color values according to
- * http://www.w3schools.com/cssref/css_colors_legal.asp
- */
- public class ValoColorPickerInputFormatsTest extends MultiBrowserTest {
-
- @Override
- public List<DesiredCapabilities> getBrowsersToTest() {
- // Ignoring Phantom JS
- return getBrowserCapabilities(Browser.IE11, Browser.FIREFOX,
- Browser.CHROME);
- }
-
- private ColorPickerPreviewElement previewElement;
-
- @Before
- public void setUp() {
- openTestURL();
- getPreviewElement();
- }
-
- private void getPreviewElement() {
- ColorPickerElement cpElement = $(ColorPickerElement.class)
- .id("colorpicker1");
- // Open ColorPicker
- cpElement.click();
- // Find preview element
- previewElement = $(ColorPickerPreviewElement.class).first();
- }
-
- @Override
- protected Class<?> getUIClass() {
- return ValoColorPickerTestUI.class;
- }
-
- @Test
- public void testRGBValue() throws Exception {
- setColorpickerValue("rgb(100 100 100)");
-
- assertEquals("#646464", previewElement.getColorFieldValue());
- }
-
- @Test
- public void testRGBAValue() {
- setColorpickerValue("rgba(100,100,100, 0.5)");
-
- assertEquals("#646464", previewElement.getColorFieldValue());
- }
-
- @Test
- public void testHSLValue() {
- setColorpickerValue("hsl(120,100%, 50%)");
-
- assertEquals("#00ff00", previewElement.getColorFieldValue());
- }
-
- @Test
- public void testHSLAValue() {
- setColorpickerValue("hsla(120, 0, 50%, 0.3)");
-
- assertEquals("#00ff00", previewElement.getColorFieldValue());
- }
-
- @Test
- public void testHexTextInputValidation() {
- // set valid hex value to ColorTextField
- setColorpickerValue("#AAbb33");
- assertFalse(previewElement.getColorFieldContainsErrors());
- }
-
- @Test
- public void testRGBTextInputValidation() {
- String rgbString = "rgb(255 10 0)";
- // set valid rgb value to ColorTextField
- setColorpickerValue(rgbString);
- assertFalse(previewElement.getColorFieldContainsErrors());
- }
-
- @Test
- public void testHSLTextInputValidation() {
- String hslString = "HSL(300, 60, 100)";
- setColorpickerValue(hslString);
- assertFalse(previewElement.getColorFieldContainsErrors());
- }
-
- @Test
- public void testHexTextInputValidationError() {
- // set invalid hex value to ColorTextField
- setColorpickerValue("#xyz");
- assertTrue(previewElement.getColorFieldContainsErrors());
- }
-
- @Test
- public void testRGBTextInputValidationError() {
- String rgbString = "rgb(300, 60, 90)";
- // set invalid rgb value to ColorTextField
- setColorpickerValue(rgbString);
- assertTrue(previewElement.getColorFieldContainsErrors());
- }
-
- @Test
- public void testRGBATextInputValidationError() {
- String rgbaString = "rgba(250, 0, 10, 6.0)";
- // set invalid rgba value to ColorTextField
- setColorpickerValue(rgbaString);
- assertTrue(previewElement.getColorFieldContainsErrors());
- }
-
- @Test
- public void testHSLTextInputValidationError() {
- String hslString = "hsl(370,60%,120%)";
- // set invalid hsl value to ColorTextField
- setColorpickerValue(hslString);
- assertTrue(previewElement.getColorFieldContainsErrors());
- }
-
- @Test
- public void testHSLATextInputValidationError() {
- String hslaString = "hsla(300, 50, 10, 1.1)";
- // set invalid hsla value to ColorTextField
- setColorpickerValue(hslaString);
- assertTrue(previewElement.getColorFieldContainsErrors());
- }
-
- @Test
- public void testFailedValidationResult() {
- // set invalid hex value to ColorTextField
- setColorpickerValue("#xyz");
- // verify there are errors
- assertTrue(previewElement.getColorFieldContainsErrors());
- // verify value has not been changed
- assertEquals(previewElement.getColorFieldValue(), "#xyz");
- }
-
- private void setColorpickerValue(String value) {
- WebElement field = previewElement.getColorTextField();
-
- // Select all text
- field.sendKeys(Keys.chord(Keys.CONTROL, "a"));
-
- // Replace with new value
- field.sendKeys(value);
-
- // Submit
- field.sendKeys(Keys.RETURN);
- }
- }
|