Commit 86975eca by Dane Springmeyer

drop make dependency for tests - closes #150

parent 395f7804
...@@ -8,15 +8,7 @@ clean: ...@@ -8,15 +8,7 @@ clean:
rm -rf ./build rm -rf ./build
rm -rf ./out rm -rf ./out
db: test:
@if ! [ -f test/support/big.db ]; then \
echo "Creating test database... This may take several minutes." ; \
node test/support/createdb.js ; \
else \
echo "okay: database already created" ; \
fi
test: db
npm test npm test
.PHONY: build clean test .PHONY: build clean test
#!/usr/bin/env node
var existsSync = require('fs').existsSync || require('path').existsSync;
var path = require('path');
var sqlite3 = require('../../lib/sqlite3'); var sqlite3 = require('../../lib/sqlite3');
var count = 1000000;
var db_path = path.join(__dirname,'big.db');
function randomString() { function randomString() {
var str = ''; var str = '';
var chars = 'abcdefghijklmnopqrstuvwxzyABCDEFGHIJKLMNOPQRSTUVWXZY0123456789 '; var chars = 'abcdefghijklmnopqrstuvwxzyABCDEFGHIJKLMNOPQRSTUVWXZY0123456789 ';
...@@ -9,18 +17,20 @@ function randomString() { ...@@ -9,18 +17,20 @@ function randomString() {
return str; return str;
}; };
var db = new sqlite3.Database('test/support/big.db');
var count = 1000000; if (existsSync(db_path)) {
console.log('okay: database already created (' + db_path + ')');
db.serialize(function() { } else {
db.run("CREATE TABLE foo (id INT, txt TEXT)"); console.log("Creating test database... This may take several minutes.");
var db = new sqlite3.Database(db_path);
db.run("BEGIN TRANSACTION"); db.serialize(function() {
var stmt = db.prepare("INSERT INTO foo VALUES(?, ?)"); db.run("CREATE TABLE foo (id INT, txt TEXT)");
for (var i = 0; i < count; i++) { db.run("BEGIN TRANSACTION");
stmt.run(i, randomString()); var stmt = db.prepare("INSERT INTO foo VALUES(?, ?)");
} for (var i = 0; i < count; i++) {
stmt.finalize(); stmt.run(i, randomString());
db.run("COMMIT TRANSACTION"); }
}); stmt.finalize();
db.run("COMMIT TRANSACTION");
});
}
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