From c41505b268406c61080b9a3db998d187ed9038d7 Mon Sep 17 00:00:00 2001 From: Stephen Whitmore Date: Thu, 13 Jul 2017 19:27:51 -0700 Subject: [PATCH] test: add test for querying deleted points too --- test/del.js | 51 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 49 insertions(+), 2 deletions(-) diff --git a/test/del.js b/test/del.js index 4c42a80..c1fa9b3 100644 --- a/test/del.js +++ b/test/del.js @@ -116,11 +116,11 @@ test('del with value', function (t) { } osm.del(id, { value: v }, function (err, node) { t.ifError(err) - doQuery(id, node.key) + doGet(id, node.key) }) }) - function doQuery (id, version) { + function doGet (id, version) { osm.get(id, function (err, heads) { t.ifError(err) t.equals(Object.keys(heads).length, 1) @@ -138,6 +138,53 @@ test('del with value', function (t) { } }) +test('way with a deleted node with value', function (t) { + t.plan(4) + + var osm = makeOsm() + + var doc1 = { type: 'node', lat: 1, lon: -1, changeset: 'foobar' } + var doc2 = { type: 'node', lat: 14, lon: -14, changeset: 'foobar' } + + // osm.create(doc1, function (err, id1) { + // t.ifError(err) + osm.create(doc2, function (err, id2) { + t.ifError(err) + var v = { + lat: doc2.lat, + lon: doc2.lon, + changeset: doc2.changeset + } + osm.del(id2, { value: v }, function (err, node) { + t.ifError(err) + // osm.create({ + // type: 'way', + // refs: [id1, id2] + // }, function (err) { + // t.error(err) + doQuery(id2, node.key) + // }) + }) + }) + // }) + + function doQuery (id, version) { + var q = [[-90,90],[-180,180]] + var expected = { + changeset: 'foobar', + id: id, + lat: 14, + lon: -14, + version: version, + deleted: true + } + osm.query(q, function (err, res) { + t.ifError(err) + t.deepEqual(res, [expected], 'full coverage query') + }) + } +}) + function idcmp (a, b) { return a.id < b.id ? -1 : 1 }