summaryrefslogtreecommitdiffstats
path: root/dom/imptests/webapps/WebStorage/tests/submissions/Ms2ger/test_storage_session_setitem_js.html
blob: 8f2339c5f48ab948d0f53cae438526080553cc9d (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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<!DOCTYPE HTML>
<html>
 <head>
  <title>Web Storage</title>
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
 </head>
 <body>
    <h1>storage_session_setItem</h1>
    <div id="log"></div>
    <script>
        var test_error = { name: "test" };
        test(function() {
            sessionStorage.clear();
            test(function() {
                assert_false("name" in sessionStorage);
                assert_false("age" in sessionStorage);
            });
            test(function() {
                sessionStorage["name"] = "user1";
                assert_true("name" in sessionStorage);
                assert_equals(sessionStorage.length, 1, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("name"), "user1");
                assert_equals(sessionStorage["name"], "user1");
            });
            test(function() {
                sessionStorage["name"] = "user2";
                assert_true("name" in sessionStorage);
                assert_equals(sessionStorage.length, 1, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("name"), "user2");
                assert_equals(sessionStorage["name"], "user2");
            });
            test(function() {
                sessionStorage.setItem("name", "user3");
                assert_true("name" in sessionStorage);
                assert_equals(sessionStorage.length, 1, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("name"), "user3");
                assert_equals(sessionStorage["name"], "user3");
            });
            test(function() {
                sessionStorage.setItem("age", null);
                assert_true("age" in sessionStorage);
                assert_equals(sessionStorage.length, 2, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("age"), "null");
                assert_equals(sessionStorage["age"], "null");
            });
            test(function() {
                sessionStorage["age"] = null;
                assert_true("age" in sessionStorage);
                assert_equals(sessionStorage.length, 2, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("age"), "null");
                assert_equals(sessionStorage["age"], "null");
            });
            test(function() {
                sessionStorage.setItem("age", undefined);
                assert_true("age" in sessionStorage);
                assert_equals(sessionStorage.length, 2, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("age"), "undefined");
                assert_equals(sessionStorage["age"], "undefined");
            });
            test(function() {
                sessionStorage["age"] = undefined;
                assert_true("age" in sessionStorage);
                assert_equals(sessionStorage.length, 2, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("age"), "undefined");
                assert_equals(sessionStorage["age"], "undefined");
            });
            test(function() {
                assert_throws(test_error, function() {
                    sessionStorage.setItem("age",
                        { toString: function() { throw test_error; } });
                });
                assert_true("age" in sessionStorage);
                assert_equals(sessionStorage.length, 2, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("age"), "undefined");
                assert_equals(sessionStorage["age"], "undefined");
            });
            test(function() {
                assert_throws(test_error, function() {
                    sessionStorage["age"] =
                        { toString: function() { throw test_error; } };
                });
                assert_true("age" in sessionStorage);
                assert_equals(sessionStorage.length, 2, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("age"), "undefined");
                assert_equals(sessionStorage["age"], "undefined");
            });
            test(function() {
                sessionStorage.setItem(undefined, "test");
                assert_true("undefined" in sessionStorage);
                assert_equals(sessionStorage.length, 3, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("undefined"), "test");
                assert_equals(sessionStorage["undefined"], "test");
            });
            test(function() {
                sessionStorage[undefined] = "test2";
                assert_true("undefined" in sessionStorage);
                assert_equals(sessionStorage.length, 3, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("undefined"), "test2");
                assert_equals(sessionStorage["undefined"], "test2");
            });
            test(function() {
                sessionStorage.setItem(null, "test");
                assert_true("null" in sessionStorage);
                assert_equals(sessionStorage.length, 4, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("null"), "test");
                assert_equals(sessionStorage["null"], "test");
            });
            test(function() {
                sessionStorage[null] = "test2";
                assert_true("null" in sessionStorage);
                assert_equals(sessionStorage.length, 4, "sessionStorage.length")
                assert_equals(sessionStorage.getItem("null"), "test2");
                assert_equals(sessionStorage["null"], "test2");
            });
        });
    </script>
 </body>
</html>