summaryrefslogtreecommitdiffstats
path: root/dom/html/test/test_img_attributes_reflection.html
blob: b89b4cec05e1ffe1bab32bcc59528640d23f05f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<!DOCTYPE HTML>
<html>
<head>
  <title>Test for HTMLImageElement attributes reflection</title>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <script type="application/javascript" src="reflect.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>
<p id="display"></p>
<div id="content" style="display: none">
</div>
<pre id="test">
<script type="application/javascript">
/** Test for HTMLImageElement attributes reflection **/

reflectString({
  element: document.createElement("img"),
  attribute: "alt",
})

reflectURL({
  element: document.createElement("img"),
  attribute: "src",
})

reflectString({
  element: document.createElement("img"),
  attribute: "srcset",
})

reflectLimitedEnumerated({
  element: document.createElement("img"),
  attribute: "crossOrigin",
  // "" is a valid value per spec, but gets mapped to the "anonymous" state,
  // just like invalid values, so just list it under invalidValues
  validValues: [ "anonymous", "use-credentials" ],
  invalidValues: [
    "", "  aNOnYmous   ", "  UsE-CreDEntIALS  ", "foobar", "FOOBAR", " fOoBaR  "
  ],
  defaultValue: { invalid: "anonymous", missing: null },
  nullable: true,
})

reflectString({
  element: document.createElement("img"),
  attribute: "useMap",
})

reflectBoolean({
  element: document.createElement("img"),
  attribute: "isMap",
})

ok("width" in document.createElement("img"), "img.width is present")
ok("height" in document.createElement("img"), "img.height is present")
ok("naturalWidth" in document.createElement("img"), "img.naturalWidth is present")
ok("naturalHeight" in document.createElement("img"), "img.naturalHeight is present")
ok("complete" in document.createElement("img"), "img.complete is present")

reflectString({
  element: document.createElement("img"),
  attribute: "name",
})

reflectString({
  element: document.createElement("img"),
  attribute: "align",
})

reflectUnsignedInt({
  element: document.createElement("img"),
  attribute: "hspace",
})

reflectUnsignedInt({
  element: document.createElement("img"),
  attribute: "vspace",
})

reflectURL({
  element: document.createElement("img"),
  attribute: "longDesc",
})

reflectString({
  element: document.createElement("img"),
  attribute: "border",
  extendedAttributes: { TreatNullAs: "EmptyString" },
})

reflectURL({
  element: document.createElement("img"),
  attribute: "lowsrc",
})

ok("x" in document.createElement("img"), "img.x is present")
ok("y" in document.createElement("img"), "img.y is present")

</script>
</pre>
</body>
</html>