1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.htmlunit.javascript.host.css;
16
17 import org.htmlunit.WebDriverTestCase;
18 import org.htmlunit.junit.BrowserRunner;
19 import org.htmlunit.junit.annotation.Alerts;
20 import org.junit.Test;
21 import org.junit.runner.RunWith;
22
23
24
25
26
27
28
29 @RunWith(BrowserRunner.class)
30 public class MediaQueryListTest extends WebDriverTestCase {
31
32
33
34
35 @Test
36 @Alerts("true")
37 public void matches() throws Exception {
38 final String html = DOCTYPE_HTML
39 + "<html><head>\n"
40 + "<script>\n"
41 + LOG_TITLE_FUNCTION
42 + " function test() {\n"
43 + " if (window.matchMedia) {\n"
44 + " log(window.matchMedia('(min-width: 400px)').matches);\n"
45 + " }\n"
46 + " }\n"
47 + "</script></head><body onload='test()'>\n"
48 + "</body></html>";
49
50 loadPageVerifyTitle2(html);
51 }
52
53
54
55
56 @Test
57 @Alerts({"added", "removed"})
58 public void listener() throws Exception {
59 final String html = DOCTYPE_HTML
60 + "<html><head>\n"
61 + "<script>\n"
62 + LOG_TITLE_FUNCTION
63 + " function listener(mql) {\n"
64 + " log(mql);\n"
65 + " }\n"
66
67 + " function test() {\n"
68 + " if (window.matchMedia) {\n"
69 + " var mql = window.matchMedia('(min-width: 400px)');\n"
70 + " mql.addListener(listener);\n"
71 + " log('added');\n"
72 + " mql.removeListener(listener);\n"
73 + " log('removed');\n"
74 + " }\n"
75 + " }\n"
76 + "</script></head><body onload='test()'>\n"
77 + "</body></html>";
78
79 loadPageVerifyTitle2(html);
80 }
81 }