85 lines
2.7 KiB
Plaintext
85 lines
2.7 KiB
Plaintext
Confirm basic Blob/File/FileList functionality.
|
|
|
|
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
|
|
|
|
|
|
dbname = "blob-basics-metadata.html"
|
|
indexedDB.deleteDatabase(dbname)
|
|
indexedDB.open(dbname)
|
|
store = db.createObjectStore('storeName')
|
|
store.put('value', 'key')
|
|
|
|
testBlob():
|
|
PASS FileReader != null is true
|
|
test_content = 'This is a test. This is only a test.'
|
|
blob = new Blob([test_content])
|
|
|
|
validateResult(blob):
|
|
PASS blob.size == test_content.length is true
|
|
transaction = db.transaction('storeName', 'readwrite')
|
|
store = transaction.objectStore('storeName')
|
|
store.put(blob, 'blobkey')
|
|
transaction = db.transaction('storeName', 'readwrite')
|
|
store = transaction.objectStore('storeName')
|
|
request = store.get('blobkey')
|
|
PASS event.target.result.size == test_content.length is true
|
|
|
|
testFile():
|
|
file = fileInput.files[0]
|
|
|
|
validateResult(file):
|
|
PASS file.name == fileInput.files[0].name is true
|
|
transaction = db.transaction('storeName', 'readwrite')
|
|
store = transaction.objectStore('storeName')
|
|
store.put(file, 'filekey')
|
|
transaction = db.transaction('storeName', 'readwrite')
|
|
store = transaction.objectStore('storeName')
|
|
request = store.get('filekey')
|
|
PASS event.target.result.name == fileInput.files[0].name is true
|
|
|
|
testNewFile():
|
|
newFile = new File([test_content], 'filename', {type:'text/plain'})
|
|
|
|
validateResult(newFile):
|
|
PASS newFile.name == newFile.name is true
|
|
transaction = db.transaction('storeName', 'readwrite')
|
|
store = transaction.objectStore('storeName')
|
|
store.put(newFile, 'newFilekey')
|
|
transaction = db.transaction('storeName', 'readwrite')
|
|
store = transaction.objectStore('storeName')
|
|
request = store.get('newFilekey')
|
|
PASS event.target.result.name == newFile.name is true
|
|
|
|
testFileList():
|
|
filelist = fileInput.files
|
|
|
|
validateResult(filelist):
|
|
PASS filelist[1].name == fileInput.files[1].name is true
|
|
transaction = db.transaction('storeName', 'readwrite')
|
|
store = transaction.objectStore('storeName')
|
|
store.put(filelist, 'filelistkey')
|
|
transaction = db.transaction('storeName', 'readwrite')
|
|
store = transaction.objectStore('storeName')
|
|
request = store.get('filelistkey')
|
|
PASS event.target.result[1].name == fileInput.files[1].name is true
|
|
|
|
testCursor():
|
|
transaction = db.transaction('storeName', 'readonly')
|
|
store = transaction.objectStore('storeName')
|
|
request = store.openCursor()
|
|
PASS cursor.value.size == test_content.length is true
|
|
cursor.continue();
|
|
PASS cursor.value.name == fileInput.files[0].name is true
|
|
cursor.continue();
|
|
PASS cursor.value[1].name == fileInput.files[1].name is true
|
|
cursor.continue();
|
|
PASS cursor.value == 'value' is true
|
|
cursor.continue();
|
|
PASS cursor.value.name == newFile.name is true
|
|
cursor.continue();
|
|
PASS cursor is null
|
|
PASS successfullyParsed is true
|
|
|
|
TEST COMPLETE
|
|
|