1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2<html>
3<head>
4<script src="../fast/js/resources/js-test-pre.js"></script>
5</head>
6<body>
7<script type="text/javascript">
8 shouldBeDefined("navigator.startActivity");
9
10 shouldThrow("var intent = new Intent()", "'TypeError: Not enough arguments'");;
11 shouldThrow("new Intent('a')", "'TypeError: Not enough arguments'");
12 shouldThrow("new Intent('','','')", "'Error: SYNTAX_ERR: DOM Exception 12'");
13 shouldThrow("new Intent('','b','c')", "'Error: SYNTAX_ERR: DOM Exception 12'");
14 shouldThrow("new Intent('','','c')", "'Error: SYNTAX_ERR: DOM Exception 12'");
15 shouldThrow("new Intent('a','','c')", "'Error: SYNTAX_ERR: DOM Exception 12'");
16
17 var intent1 = new Intent('a', 'b');
18 shouldBeEqualToString("intent1.action", "a");
19 shouldBeEqualToString("intent1.type", "b");
20 shouldBeUndefined("intent1.data");
21 intent1.action = "abc";
22 shouldBeEqualToString("intent1.action", "a");
23
24 var intent2 = new Intent("a", "b", "c");
25 shouldBeEqualToString('intent2.action', "a");
26 shouldBeEqualToString('intent2.type', "b");
27 shouldBeEqualToString('intent2.data', "c");
28
29 var intent3 = new Intent("a", "b", {"c": "d"});
30 shouldBeEqualToString('intent3.action', "a");
31 shouldBeEqualToString('intent3.type', "b");
32 shouldBeEqualToString('intent3.data.c', "d");
33
34 var intent4 = new Intent("a", "b", ["c", "d"]);
35 shouldBeEqualToString('intent4.action', "a");
36 shouldBeEqualToString('intent4.type', "b");
37 shouldBeTrue('intent4.data instanceof Array');
38 shouldEvaluateTo('intent4.data.length', 2);
39 shouldBeEqualToString('intent4.data[0]', "c");
40 shouldBeEqualToString('intent4.data[1]', "d");
41
42 var intent5 = new Intent("a", "b", 4);
43 shouldEvaluateTo('intent5.data', 4);
44 var intent6 = new Intent('a', 'b', 4.5);
45 shouldEvaluateTo('intent6.data', 4.5);
46 var intent7 = new Intent('a', 'b', true);
47 shouldBeTrue('intent7.data');
48 var intent8 = new Intent('a', 'b', null);
49 shouldBeNull('intent8.data');
50 var intent9 = new Intent('a', 'b', {});
51 shouldEvaluateTo('intent9.data', {});
52
53 shouldThrow('navigator.startActivity(intent1)', "'Error: INVALID_ACCESS_ERR: DOM Exception 15'");
54</script>
55<script src="../fast/js/resources/js-test-post.js"></script>
56</body>
57</html>