Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / fast / js / script-tests / custom-constructors.js
1 description(
2 "This test checks construction of objects with custom constructors."
3 );
4
5 // Image tests
6 shouldBeNonNull("new Image()");
7 shouldBeEqualToString("new Image().tagName", "IMG");
8
9 shouldBe("new Image().height", "0");
10 shouldBe("new Image().width", "0");
11 shouldBe("new Image(100).width", "100");
12 shouldBe("new Image(100, 200).height", "200");
13 shouldBe("new Image(-100).width", "-100");
14 shouldBe("new Image(-100, -200).height", "-200");
15
16 shouldBeEqualToString("new Image().outerHTML","<img>");
17 // FIXME: shouldBeEqualToString strips quotes from the string.
18 shouldBeEqualToString("new Image(100, 100).outerHTML.replace(/\"/g, \"'\")", "<img width='100' height='100'>");
19
20 // Option tests
21 shouldBeNonNull("new Option()");
22 shouldBeEqualToString("new Option().tagName", "OPTION");
23
24 shouldBeEqualToString("new Option().innerText", "");
25 shouldBeEqualToString("new Option(null).innerText", "null");
26 shouldBeEqualToString("new Option(undefined).innerText", "");
27 shouldBeEqualToString("new Option('somedata').innerText", "somedata");
28
29 shouldBeEqualToString("new Option().value", "");
30 shouldBeEqualToString("new Option('somedata', null).value", "null");
31 shouldBeEqualToString("new Option('somedata', undefined).value", "somedata");
32 shouldBeEqualToString("new Option('somedata', 'somevalue').value", "somevalue");
33
34 shouldBeFalse("new Option().defaultSelected");
35 shouldBeFalse("new Option('somedata', 'somevalue').defaultSelected");
36 shouldBeFalse("new Option('somedata', 'somevalue', false).defaultSelected");
37 shouldBeTrue("new Option('somedata', 'somevalue', true).defaultSelected");
38
39 shouldBeFalse("new Option().selected");
40 shouldBeFalse("new Option('somedata', 'somevalue').selected");
41 shouldBeFalse("new Option('somedata', 'somevalue', false).selected");
42 shouldBeFalse("new Option('somedata', 'somevalue', true).selected");
43 shouldBeFalse("new Option('somedata', 'somevalue', true, false).selected");
44 shouldBeTrue("new Option('somedata', 'somevalue', true, true).selected");
45
46 shouldBeEqualToString("new Option().outerHTML","<option></option>");
47 shouldBeEqualToString("new Option('somedata', 'somevalue', false).outerHTML.replace(/\"/g,\"'\")", "<option value='somevalue'>somedata</option>");
48 shouldBeEqualToString("new Option('somedata', 'somevalue', true).outerHTML.replace(/\"/g,\"'\")", "<option value='somevalue' selected=''>somedata</option>");
49
50 // Audio tests
51 shouldBeNonNull("new Audio()");
52 shouldBeEqualToString("new Audio().tagName", "AUDIO");
53
54 shouldBeEqualToString("new Audio().src", "");
55 shouldBeEqualToString("new Audio().preload", "auto");
56 shouldBeEqualToString("new Audio('http://127.0.0.1/someurl').src", "http://127.0.0.1/someurl");
57 shouldBeEqualToString("new Audio('http://127.0.0.1/someurl').preload", "auto");