]> source.dussan.org Git - vaadin-framework.git/commitdiff
Convert DateTimeFieldReadOnlyTest to not rely on screenshots. (#11870)
authorAnna Koskinen <Ansku@users.noreply.github.com>
Mon, 13 Jan 2020 18:08:08 +0000 (20:08 +0200)
committerTatu Lund <tatu@vaadin.com>
Mon, 13 Jan 2020 18:08:08 +0000 (20:08 +0200)
13 files changed:
uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__initial-date.png [deleted file]
uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__readonly-date.png [deleted file]
uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__readwrite-popup-date.png [deleted file]
uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__initial-date.png [deleted file]
uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__readonly-date.png [deleted file]
uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__readwrite-popup-date.png [deleted file]
uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_initial-date.png [deleted file]
uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_readonly-date.png [deleted file]
uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_readwrite-popup-date.png [deleted file]
uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_initial-date.png [deleted file]
uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_readonly-date.png [deleted file]
uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_readwrite-popup-date.png [deleted file]
uitest/src/test/java/com/vaadin/tests/components/datefield/DateTimeFieldReadOnlyTest.java

diff --git a/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__initial-date.png b/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__initial-date.png
deleted file mode 100755 (executable)
index 9b17302..0000000
Binary files a/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__initial-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__readonly-date.png b/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__readonly-date.png
deleted file mode 100755 (executable)
index d815c3b..0000000
Binary files a/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__readonly-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__readwrite-popup-date.png b/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__readwrite-popup-date.png
deleted file mode 100755 (executable)
index 2b3c5e7..0000000
Binary files a/uitest/reference-screenshots/chrome/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Chrome__readwrite-popup-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__initial-date.png b/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__initial-date.png
deleted file mode 100644 (file)
index 575cebb..0000000
Binary files a/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__initial-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__readonly-date.png b/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__readonly-date.png
deleted file mode 100644 (file)
index 78e41f0..0000000
Binary files a/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__readonly-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__readwrite-popup-date.png b/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__readwrite-popup-date.png
deleted file mode 100644 (file)
index 8c43c5b..0000000
Binary files a/uitest/reference-screenshots/firefox/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_ANY_Firefox__readwrite-popup-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_initial-date.png b/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_initial-date.png
deleted file mode 100755 (executable)
index 50b5d4a..0000000
Binary files a/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_initial-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_readonly-date.png b/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_readonly-date.png
deleted file mode 100755 (executable)
index 0c5e3be..0000000
Binary files a/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_readonly-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_readwrite-popup-date.png b/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_readwrite-popup-date.png
deleted file mode 100755 (executable)
index 4d7c519..0000000
Binary files a/uitest/reference-screenshots/internetexplorer/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_Windows_InternetExplorer_11_readwrite-popup-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_initial-date.png b/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_initial-date.png
deleted file mode 100644 (file)
index 29cc972..0000000
Binary files a/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_initial-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_readonly-date.png b/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_readonly-date.png
deleted file mode 100644 (file)
index 29cc972..0000000
Binary files a/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_readonly-date.png and /dev/null differ
diff --git a/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_readwrite-popup-date.png b/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_readwrite-popup-date.png
deleted file mode 100644 (file)
index c51903b..0000000
Binary files a/uitest/reference-screenshots/phantomjs/DateTimeFieldReadOnlyTest-readOnlyDateFieldPopupShouldNotOpen_LINUX_PhantomJS_1_readwrite-popup-date.png and /dev/null differ
index 668c0a61235054654249be94ad1a07f361f345e9..37e56949305790364af9c39e5fd4ac5d6dc92900 100644 (file)
@@ -1,13 +1,18 @@
 package com.vaadin.tests.components.datefield;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
 import java.io.IOException;
 
 import org.junit.Test;
-import org.openqa.selenium.Keys;
+import org.openqa.selenium.ElementNotInteractableException;
+import org.openqa.selenium.WebElement;
 
 import com.vaadin.testbench.By;
-import com.vaadin.testbench.elements.AbstractDateFieldElement;
 import com.vaadin.testbench.elements.ButtonElement;
+import com.vaadin.testbench.elements.DateTimeFieldElement;
 import com.vaadin.tests.tb3.MultiBrowserTest;
 
 public class DateTimeFieldReadOnlyTest extends MultiBrowserTest {
@@ -17,27 +22,51 @@ public class DateTimeFieldReadOnlyTest extends MultiBrowserTest {
             throws IOException, InterruptedException {
         openTestURL();
 
-        compareScreen("initial-date");
+        DateTimeFieldElement df = $(DateTimeFieldElement.class).first();
+        WebElement dfButton = df
+                .findElement(By.className("v-datefield-button"));
+
+        // ensure initial read-only state works and pop-up cannot be opened
+        assertTrue(df.hasClassName("v-readonly"));
+        assertEquals("none", dfButton.getCssValue("display"));
+        assertTrue(findElements(By.className("v-datefield-calendarpanel"))
+                .isEmpty());
+
+        assertFalse(openPopup(df));
+        assertTrue(findElements(By.className("v-datefield-calendarpanel"))
+                .isEmpty());
+
+        // ensure read-only state can be removed and the component is still
+        // functional
         toggleReadOnly();
+        assertFalse(df.hasClassName("v-readonly"));
+        assertEquals("inline-block", dfButton.getCssValue("display"));
 
-        openPopup();
-        compareScreen("readwrite-popup-date");
+        assertTrue(openPopup(df));
+        assertEquals(1,
+                findElements(By.className("v-datefield-calendarpanel")).size());
 
-        closePopup();
+        // ensure read-only state can be re-applied, pop-up is closed and cannot
+        // be re-opened
         toggleReadOnly();
-        compareScreen("readonly-date");
-    }
+        assertTrue(df.hasClassName("v-readonly"));
+        assertEquals("none", dfButton.getCssValue("display"));
+        assertTrue(findElements(By.className("v-datefield-calendarpanel"))
+                .isEmpty());
 
-    private void closePopup() {
-        findElement(By.className("v-datefield-calendarpanel"))
-                .sendKeys(Keys.RETURN);
+        assertFalse(openPopup(df));
+        assertTrue(findElements(By.className("v-datefield-calendarpanel"))
+                .isEmpty());
     }
 
-    private void openPopup() {
-        // waiting for openPopup() in TB4 beta1:
-        // http://dev.vaadin.com/ticket/13766
-        $(AbstractDateFieldElement.class).first()
-                .findElement(By.tagName("button")).click();
+    private boolean openPopup(DateTimeFieldElement df) {
+        // ensure the hidden button cannot be interacted with
+        try {
+            df.openPopup();
+            return true;
+        } catch (ElementNotInteractableException e) {
+            return false;
+        }
     }
 
     private void toggleReadOnly() {