summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/webstorage/event_local_storagearea.html
blob: db4b114a951a43064577540c7f87c428a85d3372 (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
<!DOCTYPE HTML>
<html>
 <head>
  <title>WebStorage Test: localStorage event - storageArea</title>
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
 </head>
 <body>
    <h1>event_local_storageArea</h1>
    <div id="log"></div>
    <script>
        async_test(function(t) {
            localStorage.clear();
            t.add_cleanup(function() { localStorage.clear() });

            self.fail = t.step_func(function(msg) {
                assert_unreached(msg);
                t.done();
            });

            function onStorageEvent(event) {
                assert_equals(event.storageArea.length, 1);
                var key = event.storageArea.key(0);
                var value = event.storageArea.getItem(key);
                assert_equals(key, "name");
                assert_equals(value, "user1");
                t.done();
            }

            window.addEventListener('storage', t.step_func(onStorageEvent), false);

            var el = document.createElement("iframe");
            el.setAttribute('id', 'ifrm');
            el.setAttribute('src', 'resources/local_set_item_iframe.html');
            document.body.appendChild(el);
        }, "storageArea property test of local event - Local event is fired due to an invocation of the setItem() method.");
    </script>
 </body>
</html>