Add (failing) test to show getGeocoderData handles missing table gracefully

This commit is contained in:
Young Hahn
2015-10-29 15:37:05 -04:00
parent 7f0f04f7d7
commit da3c7327de

View File

@@ -13,12 +13,16 @@ var expected = {
};
var tmp = require('os').tmpdir() + '/mbtiles-test-' + (+new Date).toString(16);
var tilesOnly;
var index;
var from;
var to;
try { fs.mkdirSync(tmp); } catch(err) { throw err; }
tape('setup', function(assert) {
tilesOnly = new MBTiles(tmp + '/tilesOnly.mbtiles', assert.end);
});
tape('setup', function(assert) {
index = new MBTiles(__dirname + '/fixtures/geocoder_data.mbtiles', assert.end);
});
@@ -37,6 +41,22 @@ tape('getGeocoderData', function(assert) {
});
});
tape('getGeocoderData (nodata)', function(assert) {
index.getGeocoderData('term', 1e6, function(err, buffer) {
assert.ifError(err);
assert.equal(buffer, undefined);
assert.end();
});
});
tape('getGeocoderData (no table)', function(assert) {
tilesOnly.getGeocoderData('term', 0, function(err, buffer) {
assert.ifError(err);
assert.equal(buffer, undefined);
assert.end();
});
});
tape('putGeocoderData', function(assert) {
to.startWriting(function(err) {
assert.ifError(err);
@@ -151,6 +171,7 @@ tape('cleanup', function(assert) {
if (err) throw err;
to.close(function(err) {
if (err) throw err;
try { fs.unlinkSync(tmp + '/tilesOnly.mbtiles'); } catch(err) { throw err; }
try { fs.unlinkSync(tmp + '/indexed.mbtiles'); } catch(err) { throw err; }
try { fs.rmdirSync(tmp); } catch(err) { throw err; }
assert.end();