Commit 933bee90 by Konstantin Käfer

update tests to reflect change in how databases are opened

parent d841a409
...@@ -14,10 +14,6 @@ exports['Blob overflow test'] = function(beforeExit) { ...@@ -14,10 +14,6 @@ exports['Blob overflow test'] = function(beforeExit) {
var inserted = 0; var inserted = 0;
var retrieved = 0; var retrieved = 0;
db.openSync(function(err) {
if (err) throw err;
});
Step( Step(
function() { function() {
var next = this; var next = this;
......
...@@ -13,14 +13,13 @@ exports['open and close non-existent database'] = function(beforeExit) { ...@@ -13,14 +13,13 @@ exports['open and close non-existent database'] = function(beforeExit) {
var opened, closed; var opened, closed;
helper.deleteFile('test/tmp/test_create.db'); helper.deleteFile('test/tmp/test_create.db');
var db = new sqlite3.Database('test/tmp/test_create.db'); var db = new sqlite3.Database('test/tmp/test_create.db', function(err) {
db.open(function(err) {
if (err) throw err; if (err) throw err;
assert.ok(!opened); assert.ok(!opened);
assert.ok(!closed); assert.ok(!closed);
opened = true; opened = true;
}); });
db.close(function(err) { db.close(function(err) {
if (err) throw err; if (err) throw err;
assert.ok(opened); assert.ok(opened);
...@@ -39,8 +38,7 @@ exports['open and close non-existent database'] = function(beforeExit) { ...@@ -39,8 +38,7 @@ exports['open and close non-existent database'] = function(beforeExit) {
exports['open inaccessible database'] = function(beforeExit) { exports['open inaccessible database'] = function(beforeExit) {
var notOpened; var notOpened;
var db = new sqlite3.Database('/usr/bin/test.db'); var db = new sqlite3.Database('/usr/bin/test.db', function(err) {
db.open(function(err) {
if (err && err.code === 'SQLITE_CANTOPEN') { if (err && err.code === 'SQLITE_CANTOPEN') {
notOpened = true; notOpened = true;
} }
...@@ -57,9 +55,8 @@ exports['open non-existent database without create'] = function(beforeExit) { ...@@ -57,9 +55,8 @@ exports['open non-existent database without create'] = function(beforeExit) {
var notOpened; var notOpened;
helper.deleteFile('tmp/test_readonly.db'); helper.deleteFile('tmp/test_readonly.db');
var db = new sqlite3.Database('tmp/test_readonly.db', sqlite3.OPEN_READONLY); var db = new sqlite3.Database('tmp/test_readonly.db', sqlite3.OPEN_READONLY,
function(err) {
db.open(function(err) {
if (err && err.code === 'SQLITE_CANTOPEN') { if (err && err.code === 'SQLITE_CANTOPEN') {
notOpened = true; notOpened = true;
} }
...@@ -73,56 +70,29 @@ exports['open non-existent database without create'] = function(beforeExit) { ...@@ -73,56 +70,29 @@ exports['open non-existent database without create'] = function(beforeExit) {
}; };
exports['open and close memory database queuing'] = function(beforeExit) { exports['open and close memory database queuing'] = function(beforeExit) {
var opened = 0, closed = 0; var opened = 0, closed = 0, closeFailed = 0;
var db = new sqlite3.Database(':memory:'); var db = new sqlite3.Database(':memory:', function openedCallback(err) {
function openedCallback(err) {
if (err) throw err; if (err) throw err;
opened++; opened++;
} });
function closedCallback(err) { function closedCallback(err) {
if (err) console.warn(err); if (closed > 0) {
if (err) throw err; assert.ok(err, 'No error object received on second close');
closed++; assert.ok(err.errno === sqlite3.MISUSE);
closeFailed++;
}
else if (err) throw err;
else closed++;
} }
db.open(openedCallback);
db.close(closedCallback); db.close(closedCallback);
db.open(openedCallback);
db.close(closedCallback); db.close(closedCallback);
db.open(openedCallback);
db.close(closedCallback);
db.open(openedCallback);
db.close(closedCallback);
db.open(openedCallback);
beforeExit(function() {
assert.equal(opened, 5, 'Database not opened');
assert.equal(closed, 4, 'Database not closed');
});
};
exports['two opens in a row'] = function(beforeExit) {
var opened = 0, openErrors = 0;
var db = new sqlite3.Database(':memory:');
function openedCallback(err) {
if (err) throw err;
opened++;
}
db.on('error', function(err) {
openErrors++;
});
db.open(openedCallback);
db.open(openedCallback);
beforeExit(function() { beforeExit(function() {
assert.equal(opened, 1, 'Database not opened'); assert.equal(opened, 1, 'Database not opened');
assert.equal(openErrors, 1, 'Second open succeeded'); assert.equal(closed, 1, 'Database not closed');
assert.equal(closeFailed, 1, 'Database could be closed again');
}); });
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment