| <!DOCTYPE html> |
| <link rel=author href="mailto:jarhar@chromium.org"> |
| <link rel=help href="http://crbug.com/1429839"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/resources/testdriver.js"></script> |
| <script src="/resources/testdriver-vendor.js"></script> |
| |
| <selectmenu id=selectmenu> |
| <option id=optone>one</option> |
| <option id=opttwo>two</option> |
| </selectmenu> |
| <style> |
| selectmenu { |
| background-color: rgb(0, 0, 255); |
| } |
| selectmenu:closed { |
| background-color: rgb(0, 255, 0); |
| } |
| selectmenu:open { |
| background-color: rgb(255, 0, 0); |
| } |
| </style> |
| <button id=button>hello world</button> |
| |
| <script> |
| promise_test(async () => { |
| assert_equals(getComputedStyle(selectmenu).backgroundColor, 'rgb(0, 255, 0)', |
| 'The selectmenu should match :closed at the start of the test.'); |
| |
| await test_driver.click(selectmenu); |
| assert_equals(getComputedStyle(selectmenu).backgroundColor, 'rgb(255, 0, 0)', |
| 'The selectmenu should match :open when opened.'); |
| |
| await test_driver.click(opttwo); |
| assert_equals(getComputedStyle(selectmenu).backgroundColor, 'rgb(0, 255, 0)', |
| 'The selectmenu should match :closed after clicking an option.'); |
| |
| await test_driver.click(selectmenu); |
| assert_equals(getComputedStyle(selectmenu).backgroundColor, 'rgb(255, 0, 0)', |
| 'The selectmenu should match :open when reopened.'); |
| |
| await test_driver.click(button); |
| assert_equals(getComputedStyle(selectmenu).backgroundColor, 'rgb(0, 255, 0)', |
| 'The selectmenu should match :closed after light dismiss.'); |
| }, 'selectmenu should not match :open when light dismissed.'); |
| </script> |