V8 Coverage Report
Files covered Lines
. / test/profile.test.js
89.65 %
52 / 58
    1.      1var sqlite3 = require('..');
    2.      1var assert = require('assert');
    3.      1
    4.      1describe('profiling', function() {
    5.      1    var create = false;
    6.      1    var select = false;
    7.      1
    8.      1    var db;
    9.      1    before(function(done) {
   10.      1        db = new sqlite3.Database(':memory:', done);
   11.      1
   12.      2        db.on('profile', function(sql, nsecs) {
   13.      2            assert.ok(typeof nsecs === "number");
   14.      1            if (sql.match(/^SELECT/)) {
   15.      1                assert.ok(!select);
   16.      1                assert.equal(sql, "SELECT * FROM foo");
   17.      1                console.log('profile select');
   18.      1                select = true;
   19.      1            }
   20.      1            else if (sql.match(/^CREATE/)) {
   21.      1                assert.ok(!create);
   22.      1                assert.equal(sql, "CREATE TABLE foo (id int)");
   23.      1                create = true;
   24.      0            }
   25.      0            else {
   26.      0                assert.ok(false);
   27.      0            }
   28.      2        });
   29.      1    });
   30.      1
   31.      1    it('should profile a create table', function(done) {
   32.      1        assert.ok(!create);
   33.      1        db.run("CREATE TABLE foo (id int)", function(err) {
   34.      0            if (err) throw err;
   35.      1            setImmediate(function() {
   36.      1                assert.ok(create);
   37.      1                done();
   38.      1            });
   39.      1        });
   40.      1    });
   41.      1
   42.      1
   43.      1    it('should profile a select', function(done) {
   44.      1        assert.ok(!select);
   45.      1        db.run("SELECT * FROM foo", function(err) {
   46.      0            if (err) throw err;
   47.      1            setImmediate(function() {
   48.      1                assert.ok(select);
   49.      1                done();
   50.      1            }, 0);
   51.      1        });
   52.      1    });
   53.      1
   54.      1    after(function(done) {
   55.      1        db.close(done);
   56.      1    });
   57.      1});
   58.      1