| # -*- mode: python; fill-column: 100; comment-column: 100; -*- |
| |
| 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 ElementClearTest(base_test.WebDriverBaseTest): |
| def test_writable_text_input_element_should_clear(self): |
| self.driver.get(self.webserver.where_is("user_input/res/element_clear_writable_input_page.html")) |
| e = self.driver.find_element_by_css_selector("#writableTextInput") |
| e.clear() |
| self.assertEquals("", e.get_attribute("value")) |
| |
| def test_disabled_text_input_element_should_not_clear(self): |
| self.driver.get(self.webserver.where_is("user_input/res/element_clear_disabled_input_page.html")) |
| e = self.driver.find_element_by_css_selector("#disabledTextInput") |
| self.assertRaises(exceptions.InvalidElementStateException, lambda: e.clear()) |
| |
| def test_read_only_text_input_element_should_not_clear(self): |
| self.driver.get(self.webserver.where_is("user_input/res/element_clear_readonly_input_page.html")) |
| e = self.driver.find_element_by_css_selector("#readOnlyTextInput") |
| self.assertRaises(exceptions.InvalidElementStateException, lambda: e.clear()) |
| |
| def test_writable_text_area_element_should_clear(self): |
| self.driver.get(self.webserver.where_is("user_input/res/element_clear_writable_textarea_page.html")) |
| e = self.driver.find_element_by_css_selector("#writableTextArea") |
| e.clear() |
| self.assertEquals("", e.get_attribute("value")) |
| |
| def test_disabled_text_area_element_should_not_clear(self): |
| self.driver.get(self.webserver.where_is("user_input/res/element_clear_disabled_textarea_page.html")) |
| e = self.driver.find_element_by_css_selector("#disabledTextArea") |
| self.assertRaises(exceptions.InvalidElementStateException, lambda: e.clear()) |
| |
| def test_read_only_text_input_element_should_not_clear(self): |
| self.driver.get(self.webserver.where_is("user_input/res/element_clear_readonly_textarea_page.html")) |
| e = self.driver.find_element_by_css_selector("#readOnlyTextArea") |
| self.assertRaises(exceptions.InvalidElementStateException, lambda: e.clear()) |
| |
| def test_content_editable_area_should_clear(self): |
| self.driver.get(self.webserver.where_is("user_input/res/element_clear_contenteditable_page.html")) |
| e = self.driver.find_element_by_css_selector("#contentEditableElement") |
| e.clear() |
| self.assertEquals("", e.text) |
| |
| |
| if __name__ == "__main__": |
| unittest.main() |