From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- .../old-tests/webdriver/element_state/__init__.py | 0 .../webdriver/element_state/method_test.py | 107 +++++++ .../webdriver/element_state/properties.py | 17 ++ .../webdriver/element_state/res/0x0-pixels.html | 12 + .../webdriver/element_state/res/1x1-pixels.html | 12 + .../element_state/res/a-with-href-attribute.html | 5 + ...absolute-children-ancestor-hidden-overflow.html | 16 + .../webdriver/element_state/res/body_empty.html | 4 + .../webdriver/element_state/res/body_implicit.html | 3 + .../element_state/res/body_overflow_hidden.html | 4 + .../element_state/res/body_visibility_hidden.html | 4 + .../webdriver/element_state/res/display-block.html | 5 + .../element_state/res/display-none-child-link.html | 11 + .../res/display-none-child-paragraph.html | 11 + .../element_state/res/display-none-child.html | 11 + .../element_state/res/display-none-dynamic.html | 10 + .../display-none-parent-presedence-visibility.html | 15 + .../res/display-none-parent-presedence.html | 14 + .../webdriver/element_state/res/display-none.html | 11 + ...element-dynamically-moved-outside-viewport.html | 15 + .../res/element-hidden-by-other-element.html | 20 ++ .../res/element-hidden-by-z-index.html | 29 ++ ...nt-moved-behind-other-element-by-transform.html | 31 ++ ...lement-moved-outside-viewport-by-transform.html | 15 + .../res/element-outside-viewport.html | 13 + .../element-partially-hidden-by-other-element.html | 23 ++ .../element_state/res/element-selected.html | 89 ++++++ .../res/element-with-color-style-attribute.html | 5 + .../res/element-with-custom-attribute.html | 5 + .../res/element-with-id-attribute.html | 5 + .../res/element-with-same-color-as-background.html | 10 + ...ement-with-same-color-as-parent-background.html | 18 ++ .../res/element-with-style-attribute.html | 5 + .../res/element-without-attribute.html | 5 + .../webdriver/element_state/res/elements_text.html | 10 + .../res/get-element-attribute-extended.html | 72 +++++ .../hidden-input-type-checkbox-untogglable.html | 9 + .../res/hidden-input-type-text-writing.html | 9 + .../webdriver/element_state/res/hidden.html | 5 + .../element_state/res/img-with-src-attribute.html | 5 + .../res/input-morphs-into-hidden.html | 10 + .../res/input-type-hidden-unclickable.html | 5 + .../element_state/res/input-type-hidden.html | 5 + .../res/input-with-checked-attribute.html | 5 + .../res/input-without-checked-attribute.html | 5 + .../res/option-with-value-attribute.html | 7 + .../res/option-without-value-attribute.html | 7 + .../text-with-matching-color-and-background.html | 14 + .../res/text-with-same-color-as-background.html | 12 + .../text-with-same-color-as-parent-background.html | 14 + .../element_state/res/visibility-child-link.html | 11 + .../res/visibility-child-paragraph.html | 11 + .../res/visibility-child-presedence.html | 12 + .../element_state/res/visibility-child.html | 11 + .../element_state/res/visibility-hidden.html | 11 + .../element_state/res/visibility-visible.html | 5 + .../element_state/res/x-auto-y-hidden.html | 30 ++ .../element_state/res/x-hidden-y-auto.html | 30 ++ .../element_state/res/x-hidden-y-hidden.html | 30 ++ .../element_state/res/x-hidden-y-scroll.html | 30 ++ .../element_state/res/x-scroll-y-hidden.html | 30 ++ .../zero-sized-element-with-sizable-decendant.html | 14 + .../webdriver/element_state/selected_test.py | 210 +++++++++++++ .../webdriver/element_state/visibility_test.py | 324 +++++++++++++++++++++ 64 files changed, 1513 insertions(+) create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/__init__.py create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/method_test.py create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/properties.py create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/0x0-pixels.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/1x1-pixels.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/a-with-href-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/absolute-children-ancestor-hidden-overflow.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/body_empty.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/body_implicit.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/body_overflow_hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/body_visibility_hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/display-block.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child-link.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child-paragraph.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-dynamic.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-parent-presedence-visibility.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-parent-presedence.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-dynamically-moved-outside-viewport.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-hidden-by-other-element.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-hidden-by-z-index.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-moved-behind-other-element-by-transform.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-moved-outside-viewport-by-transform.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-outside-viewport.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-partially-hidden-by-other-element.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-selected.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-color-style-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-custom-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-id-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-same-color-as-background.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-same-color-as-parent-background.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-style-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/element-without-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/elements_text.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/get-element-attribute-extended.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden-input-type-checkbox-untogglable.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden-input-type-text-writing.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/img-with-src-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/input-morphs-into-hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/input-type-hidden-unclickable.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/input-type-hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/input-with-checked-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/input-without-checked-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/option-with-value-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/option-without-value-attribute.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-matching-color-and-background.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-same-color-as-background.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-same-color-as-parent-background.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-link.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-paragraph.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-presedence.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-visible.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/x-auto-y-hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-auto.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-scroll.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/x-scroll-y-hidden.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/res/zero-sized-element-with-sizable-decendant.html create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/selected_test.py create mode 100644 testing/web-platform/tests/old-tests/webdriver/element_state/visibility_test.py (limited to 'testing/web-platform/tests/old-tests/webdriver/element_state') diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/__init__.py b/testing/web-platform/tests/old-tests/webdriver/element_state/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/method_test.py b/testing/web-platform/tests/old-tests/webdriver/element_state/method_test.py new file mode 100644 index 000000000..85b240c7a --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/method_test.py @@ -0,0 +1,107 @@ +import os +import sys +import unittest + +sys.path.insert(1, os.path.abspath(os.path.join(__file__, "../.."))) +import base_test + + +class GetElementAttributeTest(base_test.WebDriverBaseTest): + def test_get_element_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/element-with-id-attribute.html")) + el = self.driver.find_element_by_css_selector("div") + self.assertEqual("myId", el.get_attribute("id")) + + def test_style_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/element-with-style-attribute.html")) + el = self.driver.find_element_by_css_selector("div") + expected_style = """ + font-family: \"Gill Sans Extrabold\",Helvetica,sans-serif; + line-height: 1.2; font-weight: bold; + """ + self.assertEqual(expected_style, el.get_attribute("style")) + + def test_color_serialization_of_style_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/element-with-color-style-attribute.html")) + el = self.driver.find_element_by_css_selector("div") + self.assertEqual("color: rgba(255, 0, 0, 1.0);", el.get_attribute("style")) + + def test_true_if_boolean_attribute_present(self): + self.driver.get(self.webserver.where_is("element_state/res/input-with-checked-attribute.html")) + el = self.driver.find_element_by_css_selector("input") + self.assertEqual("true", el.get_attribute("checked")) + + def test_none_if_boolean_attribute_absent(self): + self.driver.get(self.webserver.where_is("element_state/res/input-without-checked-attribute.html")) + el = self.driver.find_element_by_css_selector("input") + self.assertIsNone(el.get_attribute("checked")) + + def test_option_with_attribute_value(self): + self.driver.get(self.webserver.where_is("element_state/res/option-with-value-attribute.html")) + el = self.driver.find_element_by_css_selector("option") + self.assertEqual("value1", el.get_attribute("value")) + + def test_option_without_value_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/option-without-value-attribute.html")) + el = self.driver.find_element_by_css_selector("option") + self.assertEqual("Value 1", el.get_attribute("value")) + + def test_a_href_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/a-with-href-attribute.html")) + el = self.driver.find_element_by_css_selector("a") + self.assertEqual("http://web-platform.test:8000/path#fragment", el.get_attribute("href")) + + def test_img_src_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/img-with-src-attribute.html")) + el = self.driver.find_element_by_css_selector("img") + self.assertEqual("http://web-platform.test:8000/images/blue.png", el.get_attribute("src")) + + def test_custom_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/element-with-custom-attribute.html")) + el = self.driver.find_element_by_css_selector("div") + self.assertEqual("attribute value", el.get_attribute("webdriver-custom-attribute")) + + def test_attribute_not_present(self): + self.driver.get(self.webserver.where_is("element_state/res/element-without-attribute.html")) + el = self.driver.find_element_by_css_selector("div") + self.assertIsNone(el.get_attribute("class")) + + def test_find_attribute_with_special_characters(self): + self.driver.get(self.webserver.where_is("element_state/res/get-element-attribute-extended.html")) + element = self.driver.find_element_by_id("id_special_char_attribute_name") + attribute = element.get_attribute("*") + self.assertEquals("special_char_attribute_name", attribute) + + def test_find_attribute_with_special_char_name_and_value(self): + self.driver.get(self.webserver.where_is("element_state/res/get-element-attribute-extended.html")) + element = self.driver.find_element_by_id("id_special_char_attribute_name_and_value") + attribute = element.get_attribute("@") + self.assertEquals("(", attribute) + + def test_find_attribute_with_numeric_name(self): + self.driver.get(self.webserver.where_is("element_state/res/get-element-attribute-extended.html")) + element = self.driver.find_element_by_id("id_attribute_name_numeric") + attribute = element.get_attribute("1") + self.assertEquals("numeric attribute name", attribute) + + def test_find_attribute_with_numeric_value(self): + self.driver.get(self.webserver.where_is("element_state/res/get-element-attribute-extended.html")) + element = self.driver.find_element_by_id("id_attribute_value_numeric") + attribute = element.get_attribute("one") + self.assertEquals("2", attribute) + + def test_find_attribute_with_negative_numeric_name(self): + self.driver.get(self.webserver.where_is("element_state/res/get-element-attribute-extended.html")) + element = self.driver.find_element_by_id("id_attribute_negative_numeric_name") + attribute = element.get_attribute("-5") + self.assertEquals("attribute name is -5", attribute) + + def test_find_attribute_with_negative_numeric_value(self): + self.driver.get(self.webserver.where_is("element_state/res/get-element-attribute-extended.html")) + element = self.driver.find_element_by_id("id_attribute_negative_numeric_value") + attribute = element.get_attribute("negative_numeric_value") + self.assertEquals("-9", attribute) + + +if __name__ == "__main__": + unittest.main() diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/properties.py b/testing/web-platform/tests/old-tests/webdriver/element_state/properties.py new file mode 100644 index 000000000..a76770085 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/properties.py @@ -0,0 +1,17 @@ +import os +import sys +import unittest + +sys.path.insert(1, os.path.abspath(os.path.join(__file__, "../.."))) +import base_test + + +class GetElementPropertiesTest(base_test.WebDriverBaseTest): + def test_get_element_text(self): + self.driver.get(self.webserver.where_is("element_state/res/elements_text.html")) + e = self.driver.find_element_by_name("name") + self.assertEquals("name", e.text) + + +if __name__ == "__main__": + unittest.main() diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/0x0-pixels.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/0x0-pixels.html new file mode 100644 index 000000000..3b081ca09 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/0x0-pixels.html @@ -0,0 +1,12 @@ + + +0x0 pixel element + + + +
This element is not visible.
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/1x1-pixels.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/1x1-pixels.html new file mode 100644 index 000000000..f9b2cbc3c --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/1x1-pixels.html @@ -0,0 +1,12 @@ + + +1x1 pixel element + + + +

This element is visible.

diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/a-with-href-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/a-with-href-attribute.html new file mode 100644 index 000000000..7722426a3 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/a-with-href-attribute.html @@ -0,0 +1,5 @@ + + +"a" element with not fully qualified url + +  \ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/absolute-children-ancestor-hidden-overflow.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/absolute-children-ancestor-hidden-overflow.html new file mode 100644 index 000000000..fcf104414 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/absolute-children-ancestor-hidden-overflow.html @@ -0,0 +1,16 @@ + + +Parent node visible with absolutely positioned children, where ancestor overflow is hidden + + + +
+
grated
+
cheese
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_empty.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_empty.html new file mode 100644 index 000000000..0f4dff691 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_empty.html @@ -0,0 +1,4 @@ + + +BODY element has no children. MUST be reported displayed + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_implicit.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_implicit.html new file mode 100644 index 000000000..f45815380 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_implicit.html @@ -0,0 +1,3 @@ + + +BODY tag is omitted; BODY element MUST be reported displayed diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_overflow_hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_overflow_hidden.html new file mode 100644 index 000000000..1411ef37b --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_overflow_hidden.html @@ -0,0 +1,4 @@ + + +BODY element with style=overflow:hidden. MUST be reported displayed + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_visibility_hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_visibility_hidden.html new file mode 100644 index 000000000..ce4d41036 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/body_visibility_hidden.html @@ -0,0 +1,4 @@ + + +BODY element with style=visibility:hidden. MUST be reported displayed + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-block.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-block.html new file mode 100644 index 000000000..0f31557e6 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-block.html @@ -0,0 +1,5 @@ + + +display: block; + +

This element is visible.

diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child-link.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child-link.html new file mode 100644 index 000000000..88bdef6b5 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child-link.html @@ -0,0 +1,11 @@ + + +display: none applies to child node links + + + +
+ hidden +
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child-paragraph.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child-paragraph.html new file mode 100644 index 000000000..31ab16da4 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child-paragraph.html @@ -0,0 +1,11 @@ + + +display: none applies to child node paragraphs + + + +
+

hidden

+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child.html new file mode 100644 index 000000000..b45ea0e5a --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-child.html @@ -0,0 +1,11 @@ + + +display: none applies to child nodes + + + +
+
Brie is good
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-dynamic.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-dynamic.html new file mode 100644 index 000000000..074f0b3c1 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-dynamic.html @@ -0,0 +1,10 @@ + + +display: none set dynamically + +

Should not be visible + + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-parent-presedence-visibility.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-parent-presedence-visibility.html new file mode 100644 index 000000000..37ca02391 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-parent-presedence-visibility.html @@ -0,0 +1,15 @@ + + +display: none on parent takes presedence over visibility: visible on child node + + + +

+
+ hidden +
+
+in \ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-parent-presedence.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-parent-presedence.html new file mode 100644 index 000000000..0f166d1e5 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none-parent-presedence.html @@ -0,0 +1,14 @@ + + +display: none on parent takes presedence + + + +
+
+ hidden +
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none.html new file mode 100644 index 000000000..469fc934b --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/display-none.html @@ -0,0 +1,11 @@ + + +display: none; + + + +

This element is not visible.

diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-dynamically-moved-outside-viewport.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-dynamically-moved-outside-viewport.html new file mode 100644 index 000000000..e31912bfd --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-dynamically-moved-outside-viewport.html @@ -0,0 +1,15 @@ + + +Element outside viewport + + + +
hidden
+ + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-hidden-by-other-element.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-hidden-by-other-element.html new file mode 100644 index 000000000..a2cf645a3 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-hidden-by-other-element.html @@ -0,0 +1,20 @@ + + +Element hidden by other element + + + +
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-hidden-by-z-index.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-hidden-by-z-index.html new file mode 100644 index 000000000..05e8eebeb --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-hidden-by-z-index.html @@ -0,0 +1,29 @@ + + +Element hidden by z-index + + + +
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-moved-behind-other-element-by-transform.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-moved-behind-other-element-by-transform.html new file mode 100644 index 000000000..f91e729de --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-moved-behind-other-element-by-transform.html @@ -0,0 +1,31 @@ + + +Element moved behind other element by transform + + + +
+
+ diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-moved-outside-viewport-by-transform.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-moved-outside-viewport-by-transform.html new file mode 100644 index 000000000..51f6ee89f --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-moved-outside-viewport-by-transform.html @@ -0,0 +1,15 @@ + + +Element moved outside viewpor by transform + + + +
Cheddar!
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-outside-viewport.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-outside-viewport.html new file mode 100644 index 000000000..e3382ad09 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-outside-viewport.html @@ -0,0 +1,13 @@ + + +Element outside viewport + + + +
hidden
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-partially-hidden-by-other-element.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-partially-hidden-by-other-element.html new file mode 100644 index 000000000..3d0325928 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-partially-hidden-by-other-element.html @@ -0,0 +1,23 @@ + + +Element partially hidden by other element + + + +
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-selected.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-selected.html new file mode 100644 index 000000000..c2ad98924 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-selected.html @@ -0,0 +1,89 @@ + + + + + + + + + + + + +

Input Checkbox Elements

+selected-8 + +selected-9 + +unselected-10 +unselected-11 + +unselected-12 + +unselected-13 +selected-10 + +

Input Radio Elements

+
Group 1:
+selected-11 +
Group 2:
+selected-12 + +
Group 3:
+unselected-14 +selected-13 +
Group 4:
+unselected-15 +selected-14 +
Group 5:
+unselected-16 +unselected-17 + +
Group 6
+selected-15 +unselected-18 + + + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-color-style-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-color-style-attribute.html new file mode 100644 index 000000000..acf2fc095 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-color-style-attribute.html @@ -0,0 +1,5 @@ + + +Element with color style attribute + +
 
\ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-custom-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-custom-attribute.html new file mode 100644 index 000000000..8f84b97ff --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-custom-attribute.html @@ -0,0 +1,5 @@ + + +Element with custom attribute + +
 
\ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-id-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-id-attribute.html new file mode 100644 index 000000000..7512344f5 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-id-attribute.html @@ -0,0 +1,5 @@ + + +Element with id attribute + +
 
\ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-same-color-as-background.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-same-color-as-background.html new file mode 100644 index 000000000..aaea9a935 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-same-color-as-background.html @@ -0,0 +1,10 @@ + + +Element with same color as background + + + +
 
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-same-color-as-parent-background.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-same-color-as-parent-background.html new file mode 100644 index 000000000..80a4118df --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-same-color-as-parent-background.html @@ -0,0 +1,18 @@ + + +Element with same color as background + + + +
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-style-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-style-attribute.html new file mode 100644 index 000000000..b163a751a --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-with-style-attribute.html @@ -0,0 +1,5 @@ + + +Element with style attribute + +
 
\ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-without-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-without-attribute.html new file mode 100644 index 000000000..b03d4545b --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/element-without-attribute.html @@ -0,0 +1,5 @@ + + +Element without attribute + +
 
\ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/elements_text.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/elements_text.html new file mode 100644 index 000000000..45b7c2370 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/elements_text.html @@ -0,0 +1,10 @@ + + + +Element location + + +
id
+
name
+ link text + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/get-element-attribute-extended.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/get-element-attribute-extended.html new file mode 100644 index 000000000..1fff60f03 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/get-element-attribute-extended.html @@ -0,0 +1,72 @@ + + +Get Element Attribute Extended + +Span +Span + +
+
+
+

h1 element, id:h1_div1.1_div1

+
+
+ +
+
+
+ Span +
+
+
+ +
+ anchor text 123 + anchor text 123 + + +
+ +
+
+
+ + Span + Span +
+ +
+ + + +
+
+
+
+
+
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden-input-type-checkbox-untogglable.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden-input-type-checkbox-untogglable.html new file mode 100644 index 000000000..7e7c2e238 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden-input-type-checkbox-untogglable.html @@ -0,0 +1,9 @@ + + +Hidden INPUT @type="checkbox" is untogglable + + + + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden-input-type-text-writing.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden-input-type-text-writing.html new file mode 100644 index 000000000..a1db85009 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden-input-type-text-writing.html @@ -0,0 +1,9 @@ + + +Typing in hidden input is impossible + + + + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden.html new file mode 100644 index 000000000..0e8097e97 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/hidden.html @@ -0,0 +1,5 @@ + + + \ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/img-with-src-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/img-with-src-attribute.html new file mode 100644 index 000000000..057bb9bf5 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/img-with-src-attribute.html @@ -0,0 +1,5 @@ + + +"img" element with not fully qualified url + +  \ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-morphs-into-hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-morphs-into-hidden.html new file mode 100644 index 000000000..98b954855 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-morphs-into-hidden.html @@ -0,0 +1,10 @@ + + +INPUT motphs into @type="hidden" + + + + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-type-hidden-unclickable.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-type-hidden-unclickable.html new file mode 100644 index 000000000..b06822b10 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-type-hidden-unclickable.html @@ -0,0 +1,5 @@ + + +INPUT @type="hidden" is unclickable + + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-type-hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-type-hidden.html new file mode 100644 index 000000000..b7195709d --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-type-hidden.html @@ -0,0 +1,5 @@ + + +INPUT @type="hidden" are always hidden + + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-with-checked-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-with-checked-attribute.html new file mode 100644 index 000000000..d7aad5ea5 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-with-checked-attribute.html @@ -0,0 +1,5 @@ + + +Input with checked attribute + +  \ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-without-checked-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-without-checked-attribute.html new file mode 100644 index 000000000..9f1d5ad35 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/input-without-checked-attribute.html @@ -0,0 +1,5 @@ + + +Input without checked attribute + +  \ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/option-with-value-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/option-with-value-attribute.html new file mode 100644 index 000000000..5ef08c405 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/option-with-value-attribute.html @@ -0,0 +1,7 @@ + + +Option with value attribute + + \ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/option-without-value-attribute.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/option-without-value-attribute.html new file mode 100644 index 000000000..5f6087ddd --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/option-without-value-attribute.html @@ -0,0 +1,7 @@ + + +Option without value attribute + + \ No newline at end of file diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-matching-color-and-background.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-matching-color-and-background.html new file mode 100644 index 000000000..d6591ef04 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-matching-color-and-background.html @@ -0,0 +1,14 @@ + + +Text with matching color and background + + + +

+ This on the other hand, should be visible +

diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-same-color-as-background.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-same-color-as-background.html new file mode 100644 index 000000000..e6290d576 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-same-color-as-background.html @@ -0,0 +1,12 @@ + + +Text with same color as background + + + +

+ Shouldn't be visible. +

diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-same-color-as-parent-background.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-same-color-as-parent-background.html new file mode 100644 index 000000000..f7480f509 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/text-with-same-color-as-parent-background.html @@ -0,0 +1,14 @@ + + +Text with same color as parent background + + + +
+

+ Should not be visible +

+
g diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-link.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-link.html new file mode 100644 index 000000000..638c3c9ee --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-link.html @@ -0,0 +1,11 @@ + + +visibility: hidden applies to child node of type A + + + + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-paragraph.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-paragraph.html new file mode 100644 index 000000000..8f703ba54 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-paragraph.html @@ -0,0 +1,11 @@ + + +visibility: hidden applies to child nodes of type P + + + +
+

Brie is good

+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-presedence.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-presedence.html new file mode 100644 index 000000000..adf679c8a --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child-presedence.html @@ -0,0 +1,12 @@ + + +visibility: visible on child node takes presedence + + + +
+
Brie is good
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child.html new file mode 100644 index 000000000..5464025fa --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-child.html @@ -0,0 +1,11 @@ + + +visibility: hidden applies to child nodes + + + +
+
Brie is good
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-hidden.html new file mode 100644 index 000000000..24e89499f --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-hidden.html @@ -0,0 +1,11 @@ + + +visibility: hidden; + + + +

This element is not visible.

diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-visible.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-visible.html new file mode 100644 index 000000000..e0c090217 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/visibility-visible.html @@ -0,0 +1,5 @@ + + +visibility: visible; + +

This element is visible.

diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-auto-y-hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-auto-y-hidden.html new file mode 100644 index 000000000..e9ce24c73 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-auto-y-hidden.html @@ -0,0 +1,30 @@ + + + + Page with overflow + + + +
+
+
Click right
+
+
+ Right clicked:
+ Bottom clicked:
+ Bottom-right clicked:
+
+
+
Click bottom-right
+
+ Click bottom +
+ + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-auto.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-auto.html new file mode 100644 index 000000000..22b5049ff --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-auto.html @@ -0,0 +1,30 @@ + + + + Page with overflow + + + +
+
+
Click right
+
+
+ Right clicked:
+ Bottom clicked:
+ Bottom-right clicked:
+
+
+
Click bottom-right
+
+ Click bottom +
+ + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-hidden.html new file mode 100644 index 000000000..c26b48aea --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-hidden.html @@ -0,0 +1,30 @@ + + + + Page with overflow + + + +
+
+
Click right
+
+
+ Right clicked:
+ Bottom clicked:
+ Bottom-right clicked:
+
+
+
Click bottom-right
+
+ Click bottom +
+ + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-scroll.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-scroll.html new file mode 100644 index 000000000..b98b79a7e --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-hidden-y-scroll.html @@ -0,0 +1,30 @@ + + + + Page with overflow + + + +
+
+
Click right
+
+
+ Right clicked:
+ Bottom clicked:
+ Bottom-right clicked:
+
+
+
Click bottom-right
+
+ Click bottom +
+ + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-scroll-y-hidden.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-scroll-y-hidden.html new file mode 100644 index 000000000..9348681ac --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/x-scroll-y-hidden.html @@ -0,0 +1,30 @@ + + + + Page with overflow + + + +
+
+
Click right
+
+
+ Right clicked:
+ Bottom clicked:
+ Bottom-right clicked:
+
+
+
Click bottom-right
+
+ Click bottom +
+ + diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/res/zero-sized-element-with-sizable-decendant.html b/testing/web-platform/tests/old-tests/webdriver/element_state/res/zero-sized-element-with-sizable-decendant.html new file mode 100644 index 000000000..f7e37f855 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/res/zero-sized-element-with-sizable-decendant.html @@ -0,0 +1,14 @@ + + +Zero sized element with sizable decendant + + + +
+
+   +
+
diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/selected_test.py b/testing/web-platform/tests/old-tests/webdriver/element_state/selected_test.py new file mode 100644 index 000000000..9c80f29f6 --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/selected_test.py @@ -0,0 +1,210 @@ +import os +import sys +import unittest + +sys.path.insert(1, os.path.abspath(os.path.join(__file__, "../.."))) +import base_test + + +class GetElementSelectedTest(base_test.WebDriverBaseTest): + def test_selected_1(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-1") + + self.assertEquals(element.is_selected(), True) + + def test_selected_2(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-2") + + self.assertEquals(element.is_selected(), True) + + def test_selected_3(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-3") + + self.assertEquals(element.is_selected(), True) + + def test_selected_4(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-4") + + self.assertEquals(element.is_selected(), True) + + def test_selected_5(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-5") + + self.assertEquals(element.is_selected(), True) + + def test_selected_6(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-6") + + self.assertEquals(element.is_selected(), True) + + def test_selected_7(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-7") + + self.assertEquals(element.is_selected(), True) + + def test_selected_8(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-8") + + self.assertEquals(element.is_selected(), True) + + def test_selected_9(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-9") + + self.assertEquals(element.is_selected(), True) + + def test_selected_10(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-10") + + self.assertEquals(element.is_selected(), True) + + def test_selected_11(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-11") + + self.assertEquals(element.is_selected(), True) + + def test_selected_12(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-12") + + self.assertEquals(element.is_selected(), True) + + def test_selected_13(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-13") + + self.assertEquals(element.is_selected(), True) + + def test_selected_14(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-14") + + self.assertEquals(element.is_selected(), True) + + def test_selected_15(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("selected-15") + + self.assertEquals(element.is_selected(), True) + + def test_unselected_1(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-1") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_2(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-2") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_3(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-3") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_4(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-4") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_5(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-5") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_6(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-6") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_7(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-7") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_8(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-8") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_9(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-9") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_10(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-10") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_11(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-11") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_12(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-12") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_13(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-13") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_14(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-14") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_15(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-15") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_16(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-16") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_17(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-17") + + self.assertEquals(element.is_selected(), False) + + def test_unselected_18(self): + self.driver.get(self.webserver.where_is("element_state/res/element-selected.html")) + element = self.driver.find_element_by_id("unselected-18") + + self.assertEquals(element.is_selected(), False) + + +if __name__ == "__main__": + unittest.main() diff --git a/testing/web-platform/tests/old-tests/webdriver/element_state/visibility_test.py b/testing/web-platform/tests/old-tests/webdriver/element_state/visibility_test.py new file mode 100644 index 000000000..58218a7ff --- /dev/null +++ b/testing/web-platform/tests/old-tests/webdriver/element_state/visibility_test.py @@ -0,0 +1,324 @@ +import os +import sys +import unittest + +sys.path.insert(1, os.path.abspath(os.path.join(__file__, "../.."))) +import base_test +from selenium.common import exceptions + + +class NaturalNonVisibleElementsTest(base_test.WebDriverBaseTest): + def test_0x0_pixel_element_is_not_visible(self): + self.driver.get(self.webserver.where_is("element_state/res/0x0-pixels.html")) + el = self.driver.find_element_by_css_selector("div") + self.assertFalse(el.is_displayed()) + + def test_0x0_pixel_text_node_is_visible(self): + self.driver.get(self.webserver.where_is("element_state/res/0x0-pixels-text-node.html")) + el = self.driver.find_element_by_css_selector("p") + self.assertTrue(el.is_displayed()) + + def test_1x1_pixel_element(self): + self.driver.get(self.webserver.where_is("element_state/res/1x1-pixels.html")) + el = self.driver.find_element_by_css_selector("p") + self.assertTrue(el.is_displayed()) + + def test_zero_sized_element_is_shown_if_decendant_has_size(self): + self.driver.get(self.webserver.where_is("element_state/res/zero-sized-element-with-sizable-decendant.html")) + parent = self.driver.find_element_by_css_selector("#parent") + child = self.driver.find_element_by_css_selector("#child") + + self.assertTrue(parent.is_displayed()) + self.assertTrue(child.is_displayed()) + + def test_input_type_hidden_is_never_visible(self): + self.driver.get(self.webserver.where_is("element_state/res/input-type-hidden.html")) + input = self.driver.find_element_by_css_selector("input") + self.assertFalse(input.is_displayed()) + + def test_input_morphs_into_hidden(self): + self.driver.get(self.webserver.where_is("element_state/res/input-morphs-into-hidden.html")) + input = self.driver.find_element_by_css_selector("input") + self.assertFalse(input.is_displayed()) + + def test_parent_node_visible_when_all_children_are_absolutely_positioned_and_overflow_is_hidden(self): + pass + + def test_parent_of_absolutely_positioned_elements_visible_where_ancestor_overflow_is_hidden(self): + """When a parent's ancestor hides any overflow, absolutely positioned child elements are + still visible. The parent container is also considered visible by webdriver for this + reason because it is interactable.""" + + self.driver.get(self.webserver.where_is("element_state/res/absolute-children-ancestor-hidden-overflow.html")) + + children = self.driver.find_elements_by_css_selector(".child") + assert all(child.is_displayed() for child in children) + + parent = self.driver.find_element_by_css_selector("#parent") + assert parent.is_displayed() + + def test_element_hidden_by_overflow_x_is_not_visible(self): + # TODO(andreastt): This test should probably be split in three. Also it's making two + # assertions. + pages = ["element_state/res/x-hidden-y-hidden.html", + "element_state/res/x-hidden-y-scroll.html", + "element_state/res/x-hidden-y-auto.html"] + + for page in pages: + self.driver.get(self.webserver.where_is(page)) + right = self.driver.find_element_by_css_selector("#right") + bottom_right = self.driver.find_element_by_css_selector("#bottom-right") + + self.assertFalse(right.is_displayed()) + self.assertFalse(bottom_right.is_displayed()) + + def test_element_hidden_by_overflow_y_is_not_visible(self): + # TODO(andreastt): This test should probably be split in three. Also it's making two + # assertions. + pages = ["element_state/res/x-hidden-y-hidden.html", + "element_state/res/x-scroll-y-hidden.html", + "element_state/res/x-auto-y-hidden.html"] + + for page in pages: + self.driver.get(self.webserver.where_is(page)) + bottom = self.driver.find_element_by_css_selector("#bottom") + bottom_right = self.driver.find_element_by_css_selector("#bottom-right") + + self.assertFalse(bottom.is_displayed()) + self.assertFalse(bottom_right.is_displayed()) + + def test_parent_node_visible_when_all_children_are_absolutely_position_and_overflow_is_hidden(self): + pass + + def test_element_scrollable_by_overflow_x_is_visible(self): + pass + + def test_element_scrollable_by_overflow_y_is_visible(self): + pass + + def test_element_scrollable_by_overflow_x_and_y_is_visible(self): + pass + + def test_element_scrollable_by_overflow_y_is_visible(self): + pass + + def test_element_outside_viewport(self): + self.driver.get(self.webserver.where_is("element_state/res/element-outside-viewport.html")) + hidden = self.driver.find_element_by_css_selector("div") + self.assertFalse(hidden.is_displayed()) + + def test_element_dynamically_moved_outside_viewport(self): + self.driver.get(self.webserver.where_is("element_state/res/element-dynamically-moved-outside-viewport.html")) + hidden = self.driver.find_element_by_css_selector("div") + self.assertFalse(hidden.is_displayed()) + + def test_element_hidden_by_other_element(self): + self.driver.get(self.webserver.where_is("element_state/res/element-hidden-by-other-element.html")) + overlay = self.driver.find_element_by_css_selector("#overlay") + hidden = self.driver.find_element_by_css_selector("#hidden") + + self.assertTrue(overlay.is_displayed()) + self.assertFalse(hidden.is_displayed()) + + def test_element_partially_hidden_by_other_element(self): + self.driver.get(self.webserver.where_is("element_state/res/element-partially-hidden-by-other-element.html")) + partial = self.driver.find_element_by_css_selector("#partial") + self.assertTrue(partial.is_displayed()) + + def test_element_hidden_by_z_index(self): + self.driver.get(self.webserver.where_is("element_state/res/element-hidden-by-z-index.html")) + overlay = self.driver.find_element_by_css_selector("#overlay") + hidden = self.driver.find_element_by_css_selector("#hidden") + + self.assertTrue(overlay.is_displayed()) + self.assertFalse(hidden.is_displayed()) + + def test_element_moved_outside_viewport_by_transform(self): + self.driver.get(self.webserver.where_is("element_state/res/element-moved-outside-viewport-by-transform.html")) + el = self.driver.find_element_by_css_selector("div") + self.assertFalse(el.is_displayed()) + + def test_element_moved_behind_other_element_by_transform(self): + self.driver.get(self.webserver.where_is("element_state/res/element-moved-behind-other-element-by-transform.html")) + overlay = self.driver.find_element_by_css_selector("#overlay") + hidden = self.driver.find_element_by_css_selector("#hidden") + + self.assertTrue(overlay.is_displayed()) + self.assertFalse(hidden.is_displayed()) + + def test_text_with_same_color_as_background(self): + self.driver.get(self.webserver.where_is("element_state/res/text-with-same-color-as-background.html")) + p = self.driver.find_element_by_css_selector("p") + self.assertFalse(p.is_displayed()) + + def test_text_with_same_color_as_parent_background(self): + self.driver.get(self.webserver.where_is("element_state/res/text-with-same-color-as-parent-background.html")) + p = self.driver.find_element_by_css_selector("p") + self.assertFalse(p.is_displayed()) + + def test_text_with_matching_color_and_background(self): + self.driver.get(self.webserver.where_is("element_state/res/text-with-matching-color-and-background.html")) + p = self.driver.find_element_by_css_selector("p") + self.assertTrue(p.is_displayed()) + + def test_element_with_same_color_as_background(self): + self.driver.get(self.webserver.where_is("element_state/res/element-with-same-color-as-background.html")) + el = self.driver.find_element_by_css_selector("div") + self.assertFalse(el.is_displayed()) + + def test_element_with_same_color_as_parent_background(self): + self.driver.get(self.webserver.where_is("element_state/res/element-with-same-color-as-parent-background.html")) + hidden = self.driver.find_element_by_css_selector("#hidden") + self.assertFalse(hidden.is_displayed()) + + +class BodyElementIsAlwaysDisplayedTest(base_test.WebDriverBaseTest): + def assert_body_is_displayed_on(self, page): + self.driver.get(self.webserver.where_is(page)) + body = self.driver.find_element_by_css_selector("body") + assert body.is_displayed() + + def test_implicit(self): + self.assert_body_is_displayed_on("element_state/res/body_implicit.html") + + def test_empty(self): + self.assert_body_is_displayed_on("element_state/res/body_empty.html") + + def test_visibility_hidden(self): + self.assert_body_is_displayed_on("element_state/res/body_visibility_hidden.html") + + def test_overflow_hidden(self): + self.assert_body_is_displayed_on("element_state/res/body_overflow_hidden.html") + + +class DisplayTest(base_test.WebDriverBaseTest): + def test_display_block(self): + self.driver.get(self.webserver.where_is("element_state/res/display-block.html")) + el = self.driver.find_element_by_css_selector("p") + self.assertTrue(el.is_displayed()) + + def test_display_none(self): + self.driver.get(self.webserver.where_is("element_state/res/display-none.html")) + el = self.driver.find_element_by_css_selector("p") + self.assertFalse(el.is_displayed()) + + def test_display_none_hides_child_node(self): + self.driver.get(self.webserver.where_is("element_state/res/display-none-child.html")) + parent = self.driver.find_element_by_css_selector("#parent") + child = self.driver.find_element_by_css_selector("#child") + + self.assertFalse(parent.is_displayed()) + self.assertFalse(child.is_displayed()) + + def test_display_none_hides_child_node_link(self): + self.driver.get(self.webserver.where_is("element_state/res/display-none-child-link.html")) + child = self.driver.find_element_by_css_selector("#child") + self.assertFalse(child.is_displayed()) + + def test_display_none_hides_child_node_paragraph(self): + self.driver.get(self.webserver.where_is("element_state/res/display-none-child-paragraph.html")) + child = self.driver.find_element_by_css_selector("#child") + self.assertFalse(child.is_displayed()) + + def test_display_none_on_parent_takes_presedence(self): + self.driver.get(self.webserver.where_is("element_state/res/display-none-parent-presedence.html")) + child = self.driver.find_element_by_css_selector("#child") + self.assertFalse(child.is_displayed()) + + def test_display_none_on_parent_takes_presedence_over_visibility_visible(self): + self.driver.get(self.webserver.where_is("element_state/res/display-none-parent-presedence-visibility.html")) + child = self.driver.find_element_by_css_selector("#child") + self.assertFalse(child.is_displayed()) + + def test_display_none_hidden_dynamically(self): + self.driver.get(self.webserver.where_is("element_state/res/display-none-dynamic.html")) + hidden = self.driver.find_element_by_css_selector("#hidden") + self.assertFalse(hidden.is_displayed()) + + +class VisibilityTest(base_test.WebDriverBaseTest): + def test_element_state_hidden(self): + self.driver.get(self.webserver.where_is("element_state/res/visibility-hidden.html")) + el = self.driver.find_element_by_css_selector("p") + self.assertFalse(el.is_displayed()) + + def test_element_state_visible(self): + self.driver.get(self.webserver.where_is("element_state/res/visibility-visible.html")) + el = self.driver.find_element_by_css_selector("p") + self.assertTrue(el.is_displayed()) + + def test_visibility_hidden_hides_child_node(self): + self.driver.get(self.webserver.where_is("element_state/res/visibility-child.html")) + parent = self.driver.find_element_by_css_selector("#parent") + child = self.driver.find_element_by_css_selector("#child") + + self.assertFalse(parent.is_displayed()) + self.assertFalse(child.is_displayed()) + + def test_visibility_hidden_hides_child_node_link(self): + self.driver.get(self.webserver.where_is("element_state/res/visibility-child-link.html")) + parent = self.driver.find_element_by_css_selector("#parent") + child = self.driver.find_element_by_css_selector("#child") + + self.assertFalse(parent.is_displayed()) + self.assertFalse(child.is_displayed()) + + def test_visibility_hidden_hides_child_node_paragraph(self): + self.driver.get(self.webserver.where_is("element_state/res/visibility-child-paragraph.html")) + parent = self.driver.find_element_by_css_selector("#parent") + child = self.driver.find_element_by_css_selector("#child") + + self.assertFalse(parent.is_displayed()) + self.assertFalse(child.is_displayed()) + + def test_visibility_hidden_on_child_takes_precedence(self): + self.driver.get(self.webserver.where_is("element_state/res/visibility-child-presedence.html")) + child = self.driver.find_element_by_css_selector("#child") + self.assertTrue(child.is_displayed()) + + def test_visibility_hidden_on_parent_takes_precedence_over_display_block(self): + pass + + def test_visibility_hidden_set_dynamically(self): + pass + + def test_should_show_element_not_visible_with_hidden_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/hidden.html")) + singleHidden = self.driver.find_element_by_css_selector('#singleHidden') + self.assertFalse(singleHidden.is_displayed()) + + def test_should_show_element_not_visible_when_parent_element_has_hidden_attribute(self): + self.driver.get(self.webserver.where_is("element_state/res/hidden.html")) + child = self.driver.find_element_by_css_selector('#child') + self.assertFalse(child.is_displayed()) + + +class VisibilityInteractionTest(base_test.WebDriverBaseTest): + def test_input_hidden_is_unclickable(self): + self.driver.get(self.webserver.where_is("element_state/res/input-type-hidden-unclickable.html")) + input = self.driver.find_element_by_css_selector("input") + + with self.assertRaises(exceptions.ElementNotVisibleException): + input.click() + + def test_hidden_input_checkbox_is_untogglable(self): + self.driver.get(self.webserver.where_is("element_state/res/hidden-input-type-checkbox-untogglable.html")) + checkbox = self.driver.find_element_by_css_selector("input") + + with self.assertRaises(exceptions.ElementNotVisibleException): + checkbox.click() + + def test_typing_in_hidden_input_is_impossible(self): + self.driver.get(self.webserver.where_is("element_state/res/hidden-input-type-text-writing.html")) + textfield = self.driver.find_element_by_css_selector("input") + + with self.assertRaises(exceptions.ElementNotVisibleException): + textfield.send_keys("Koha is a popular Indian cheese") + + +class OpacityTest(base_test.WebDriverBaseTest): + pass + + +if __name__ == "__main__": + unittest.main() -- cgit v1.2.3