1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/dom/indexedDB/test/test_file_replace.html Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,66 @@ 1.4 +<!-- 1.5 + Any copyright is dedicated to the Public Domain. 1.6 + http://creativecommons.org/publicdomain/zero/1.0/ 1.7 +--> 1.8 +<html> 1.9 +<head> 1.10 + <title>Indexed Database Property Test</title> 1.11 + 1.12 + <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> 1.13 + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> 1.14 + 1.15 + <script type="text/javascript;version=1.7"> 1.16 + function testSteps() 1.17 + { 1.18 + const name = window.location.pathname; 1.19 + 1.20 + const objectStoreName = "Blobs"; 1.21 + 1.22 + const blobData = { key: 42, blobs: [] }; 1.23 + 1.24 + for (let i = 0; i < 100; i++) { 1.25 + blobData.blobs[i] = getRandomBlob(i); 1.26 + } 1.27 + 1.28 + let request = indexedDB.open(name, 1); 1.29 + request.onerror = errorHandler; 1.30 + request.onupgradeneeded = grabEventAndContinueHandler; 1.31 + request.onsuccess = grabEventAndContinueHandler; 1.32 + let event = yield undefined; 1.33 + 1.34 + is(event.type, "upgradeneeded", "Got correct event type"); 1.35 + 1.36 + let db = event.target.result; 1.37 + db.onerror = errorHandler; 1.38 + 1.39 + let objectStore = db.createObjectStore(objectStoreName, { }); 1.40 + 1.41 + for (let i = 0; i < blobData.blobs.length; i++) { 1.42 + objectStore.put(blobData.blobs[i], blobData.key); 1.43 + } 1.44 + 1.45 + event = yield undefined; 1.46 + 1.47 + is(event.type, "success", "Got correct event type"); 1.48 + 1.49 + for (let id = 1; id <= 100; id++) { 1.50 + let refs = {}; 1.51 + let dbRefs = {}; 1.52 + let hasFileInfo = utils.getFileReferences(name, id, null, refs, dbRefs); 1.53 + ok(hasFileInfo, "Has file info"); 1.54 + is(refs.value, 1, "Correct ref count"); 1.55 + is(dbRefs.value, id / 100 >> 0, "Correct db ref count"); 1.56 + } 1.57 + 1.58 + finishTest(); 1.59 + yield undefined; 1.60 + } 1.61 + </script> 1.62 + <script type="text/javascript;version=1.7" src="file.js"></script> 1.63 + <script type="text/javascript;version=1.7" src="helpers.js"></script> 1.64 + 1.65 +</head> 1.66 + 1.67 +<body onload="runTest();"></body> 1.68 + 1.69 +</html>