V8 Coverage Report
Files covered Lines
. / test/map.test.js
93.75 %
60 / 64
    1.      1var sqlite3 = require('..');
    2.      1var assert = require('assert');
    3.      1
    4.      1describe('map', function() {
    5.      1    it('test Database#map() with two columns', function(done) {
    6.      1        var count = 10;
    7.      1        var inserted = 0;
    8.      1
    9.      1        var db = new sqlite3.Database(':memory:');
   10.      1        db.serialize(function() {
   11.      1            db.run("CREATE TABLE foo (id INT, value TEXT)");
   12.      1
   13.      1            var stmt = db.prepare("INSERT INTO foo VALUES(?, ?)");
   14.      5            for (var i = 5; i < count; i++) {
   15.      5                stmt.run(i, 'Value for ' + i, function(err) {
   16.      0                    if (err) throw err;
   17.      5                    inserted++;
   18.      5                });
   19.      5            }
   20.      1            stmt.finalize();
   21.      1
   22.      1            db.map("SELECT * FROM foo", function(err, map) {
   23.      0                if (err) throw err;
   24.      1                assert.deepEqual(map, { 5: 'Value for 5', 6: 'Value for 6', 7: 'Value for 7', 8: 'Value for 8', 9: 'Value for 9' });
   25.      1                assert.equal(inserted, 5);
   26.      1                done();
   27.      1            });
   28.      1        });
   29.      1    });
   30.      1
   31.      1    it('test Database#map() with three columns', function(done) {
   32.      1        var db = new sqlite3.Database(':memory:');
   33.      1
   34.      1        var count = 10;
   35.      1        var inserted = 0;
   36.      1
   37.      1        db.serialize(function() {
   38.      1            db.run("CREATE TABLE foo (id INT, value TEXT, other TEXT)");
   39.      1
   40.      1            var stmt = db.prepare("INSERT INTO foo VALUES(?, ?, ?)");
   41.      5            for (var i = 5; i < count; i++) {
   42.      5                stmt.run(i, 'Value for ' + i, null, function(err) {
   43.      0                    if (err) throw err;
   44.      5                    inserted++;
   45.      5                });
   46.      5            }
   47.      1            stmt.finalize();
   48.      1
   49.      1            db.map("SELECT * FROM foo", function(err, map) {
   50.      0                if (err) throw err;
   51.      1                assert.deepEqual(map, {
   52.      1                    5: { id: 5, value: 'Value for 5', other: null },
   53.      1                    6: { id: 6, value: 'Value for 6', other: null },
   54.      1                    7: { id: 7, value: 'Value for 7', other: null },
   55.      1                    8: { id: 8, value: 'Value for 8', other: null },
   56.      1                    9: { id: 9, value: 'Value for 9', other: null }
   57.      1                });
   58.      1                assert.equal(inserted, 5);
   59.      1                done();
   60.      1            });
   61.      1        });
   62.      1    });
   63.      1});
   64.      1