зеркало из https://github.com/mozilla/gecko-dev.git
51 строка
1.2 KiB
JavaScript
51 строка
1.2 KiB
JavaScript
/**
|
|
* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/
|
|
*/
|
|
|
|
add_task(async function testSimpleDB() {
|
|
const name = "data";
|
|
const bufferSize = 100;
|
|
|
|
await SpecialPowers.pushPrefEnv({ set: [[ "dom.simpleDB.enabled", true ]] });
|
|
|
|
let database = getSimpleDatabase();
|
|
|
|
let request = database.open("data");
|
|
await requestFinished(request);
|
|
|
|
let buffer1 = getRandomBuffer(bufferSize);
|
|
|
|
request = database.write(buffer1);
|
|
await requestFinished(request);
|
|
|
|
request = database.seek(0);
|
|
await requestFinished(request);
|
|
|
|
request = database.read(bufferSize);
|
|
let result = await requestFinished(request);
|
|
|
|
let buffer2 = result.getAsArrayBuffer();
|
|
|
|
ok(compareBuffers(buffer1, buffer2), "Buffers equal.");
|
|
|
|
let database2 = getSimpleDatabase();
|
|
|
|
try {
|
|
request = database2.open(name);
|
|
await requestFinished(request);
|
|
ok(false, "Should have thrown!");
|
|
} catch(ex) {
|
|
ok(request.resultCode == NS_ERROR_STORAGE_BUSY, "Good result code.");
|
|
}
|
|
|
|
request = database.close();
|
|
await requestFinished(request);
|
|
|
|
request = database2.open(name);
|
|
await requestFinished(request);
|
|
|
|
request = database2.close();
|
|
await requestFinished(request);
|
|
});
|