File: storage_enumerate.html

package info (click to toggle)
firefox-esr 52.8.1esr-1~deb8u1
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 1,983,244 kB
  • sloc: cpp: 4,810,275; ansic: 2,004,548; python: 451,282; java: 241,615; asm: 178,649; xml: 136,302; sh: 82,207; makefile: 22,575; perl: 15,783; objc: 4,389; yacc: 1,816; ada: 1,697; pascal: 1,519; lex: 1,257; cs: 879; exp: 499; php: 436; lisp: 258; awk: 152; sed: 51; ruby: 47; csh: 27
file content (41 lines) | stat: -rw-r--r-- 1,263 bytes parent folder | download | duplicates (5)
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
<!DOCTYPE HTML>
<html>
<head>
<title>WebStorage Test: Storage - enumerate and built-in properties</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<body>
<div id="log"></div>
<script>
["localStorage", "sessionStorage"].forEach(function(name) {
    test(function() {
        assert_true(name in window, name + " exist");

        var storage = window[name];
        storage.clear();

        Storage.prototype.prototypeTestKey = "prototypeTestValue";
        storage.foo = "bar";
        storage.fu = "baz";
        storage.batman = "bin suparman";
        storage.bar = "foo";
        storage.alpha = "beta";
        storage.zeta = "gamma";

        var enumeratedArray = new Array();
        for (var n in storage)
            enumeratedArray.push(n);

        // Sort the array, since the storage order isn't guaranteed
        enumeratedArray.sort();

        var expectArray = ["alpha", "bar", "batman", "foo", "fu", "prototypeTestKey", "zeta"];
        assert_array_equals(enumeratedArray, expectArray);

    }, name + ": enumerate a Storage object and get only the keys as a result and the built-in properties of the Storage object should be ignored");
});
</script>
</body>
</html>