dom/tests/mochitest/localstorage/test_localStorageKeyOrder.html

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 <html xmlns="http://www.w3.org/1999/xhtml">
     2 <head>
     3 <title>localStorage key order test</title>
     5 <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
     6 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
     8 <!--
     9   Check we preserve order of keys in localStorage when
    10   keys are just modified. When a new key is added or
    11   a key is removed order is again unspecified.
    12 -->
    14 <script type="text/javascript">
    16 function startTest()
    17 {
    18   try
    19   {
    20     var keyNames = new Array;
    21     localStorage.a = "1";
    22     localStorage.b = "2";
    23     localStorage.c = "3";
    24     localStorage.d = "4";
    25     localStorage.e = "5";
    27     is(localStorage.a, "1", "a = 1");
    28     is(localStorage.b, "2", "b = 2");
    29     is(localStorage.c, "3", "c = 3");
    30     is(localStorage.d, "4", "d = 4");
    31     is(localStorage.e, "5", "e = 5");
    32     is(localStorage.length, 5, "length = 5");
    34     for (var i = 0; i < localStorage.length; ++i)
    35       keyNames[i] = localStorage.key(i);
    37     localStorage.a = "10";
    38     localStorage.b = "20";
    39     localStorage.c = "30";
    40     localStorage.d = "40";
    41     localStorage.e = "50";
    43     is(localStorage.a, "10", "a = 10");
    44     is(localStorage.b, "20", "b = 20");
    45     is(localStorage.c, "30", "c = 30");
    46     is(localStorage.d, "40", "d = 40");
    47     is(localStorage.e, "50", "e = 50");
    48     is(localStorage.length, 5, "length = 5");
    50     for (var i = 0; i < localStorage.length; ++i)
    51       is(keyNames[i], localStorage.key(i), "key "+keyNames[i]+" on same index");
    53     keyNamesStringify = "[\"" + keyNames.join("\",\"") + "\"]";
    54     frame.location = "http://mochi.test:8888/tests/dom/tests/mochitest/localstorage/frameOrder.html?" +
    55       keyNamesStringify;
    56   }
    57   catch (ex)
    58   {
    59     localStorage.clear();
    60     throw ex;
    61   }
    62 }
    64 SimpleTest.waitForExplicitFinish();
    66 </script>
    68 </head>
    70 <body onload="startTest();">
    71   <iframe src="" name="frame"></frame>
    72 </body>
    73 </html>

mercurial