diff --git a/circle.yml b/circle.yml index 1db0b1ba..37a6e3d7 100644 --- a/circle.yml +++ b/circle.yml @@ -11,7 +11,7 @@ deployment: - git clone git@github.com:mapzen/pelias-deploy.git && cd pelias-deploy && bundle install - cd pelias-deploy && bundle exec rake deploy:api[dev] prod_build: - branch: production + branch: staging commands: - git clone git@github.com:mapzen/pelias-deploy.git && cd pelias-deploy && bundle install - cd pelias-deploy && bundle exec rake deploy:api[prod_build] diff --git a/middleware/confidenceScore.js b/middleware/confidenceScore.js index 68b85c0d..b100b973 100644 --- a/middleware/confidenceScore.js +++ b/middleware/confidenceScore.js @@ -100,8 +100,8 @@ function checkForDealBreakers(req, hit) { return true; } - if (check.assigned(req.clean.parsed_text.postalcode) && req.clean.parsed_text.postalcode !== hit.zip) { - logger.debug('[confidence][deal-breaker]: postalcode !== zip'); + if (check.assigned(req.clean.parsed_text.postalcode) && req.clean.parsed_text.postalcode !== hit.address.zip) { + logger.debug('[confidence][deal-breaker]: postalcode !== zip (' + req.clean.parsed_text.postalcode + ' !== ' + hit.address.zip + ')'); return true; } } @@ -208,7 +208,7 @@ function propMatch(textProp, hitProp, expectEnriched) { * @param {object} [hit.address] * @param {string|number} [hit.address.number] * @param {string} [hit.address.street] - * @param {string|number} [hit.zip] + * @param {string|number} [hit.address.zip] * @param {string} [hit.admin1_abbr] * @param {string} [hit.alpha3] * @returns {number} diff --git a/package.json b/package.json index be08ea46..eb9a4b10 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "elasticsearch": ">=1.2.1" }, "dependencies": { - "addressit": "1.3.0", + "addressit": "git://github.com/dianashk/addressit.git#temp", "async": "^0.9.0", "check-types": "^3.3.1", "cluster2": "git://github.com/missinglink/cluster2.git#node_zero_twelve", diff --git a/test/ciao/search/address_parsing.coffee b/test/ciao/search/address_parsing.coffee index 83d3e1bc..e39f484e 100644 --- a/test/ciao/search/address_parsing.coffee +++ b/test/ciao/search/address_parsing.coffee @@ -34,7 +34,7 @@ json.geocoding.query['size'].should.eql 10 #? address parsing json.geocoding.query.parsed_text['name'].should.eql '30 w 26th st' -json.geocoding.query.parsed_text['number'].should.eql 30 +json.geocoding.query.parsed_text['number'].should.eql '30' json.geocoding.query.parsed_text['street'].should.eql 'w 26th st' json.geocoding.query.parsed_text['state'].should.eql 'NY' json.geocoding.query.parsed_text['regions'].should.eql [] diff --git a/test/unit/fixture/search_full_address.js b/test/unit/fixture/search_full_address.js index c30896e3..316903e7 100644 --- a/test/unit/fixture/search_full_address.js +++ b/test/unit/fixture/search_full_address.js @@ -86,7 +86,7 @@ module.exports = { },{ 'match': { 'address.number': { - 'query': 123, + 'query': '123', 'boost': vs['address:housenumber:boost'], 'analyzer': vs['address:housenumber:analyzer'] } @@ -102,7 +102,7 @@ module.exports = { }, { 'match': { 'address.zip': { - 'query': 10010, + 'query': '10010', 'boost': vs['address:postcode:boost'], 'analyzer': vs['address:postcode:analyzer'] } diff --git a/test/unit/fixture/search_regions_address.js b/test/unit/fixture/search_regions_address.js index 2a06b6a9..51bb57cc 100644 --- a/test/unit/fixture/search_regions_address.js +++ b/test/unit/fixture/search_regions_address.js @@ -86,7 +86,7 @@ module.exports = { },{ 'match': { 'address.number': { - 'query': 1, + 'query': '1', 'boost': vs['address:housenumber:boost'], 'analyzer': vs['address:housenumber:analyzer'] } diff --git a/test/unit/helper/text_parser.js b/test/unit/helper/text_parser.js index a4ce64e3..3accf7b9 100644 --- a/test/unit/helper/text_parser.js +++ b/test/unit/helper/text_parser.js @@ -85,7 +85,7 @@ module.exports.tests.parse_address = function(test, common) { var address = parser.get_parsed_address(query_string); t.equal(typeof address, 'object', 'valid object for the address'); - t.equal(address.number, 123, 'parsed house number'); + t.equal(address.number, '123', 'parsed house number'); t.equal(address.street, 'main st', 'parsed street'); t.deepEqual(address.regions, ['new york'], 'parsed city'); t.equal(address.state , 'NY', 'parsed state'); @@ -96,11 +96,23 @@ module.exports.tests.parse_address = function(test, common) { var address = parser.get_parsed_address(query_string); t.equal(typeof address, 'object', 'valid object for the address'); - t.equal(address.number, 123, 'parsed house number'); + t.equal(address.number, '123', 'parsed house number'); t.equal(address.street, 'main st', 'parsed street'); t.deepEqual(address.regions, ['new york'], 'parsed city'); t.equal(address.state , 'NY', 'parsed state'); - t.equal(address.postalcode, 10010, 'parsed zip'); + t.equal(address.postalcode, '10010', 'parsed zip is a string'); + t.end(); + }); + test('valid address with leading 0s in zipcode', function(t) { + var query_string = '339 W Main St, Cheshire, 06410'; + var address = parser.get_parsed_address(query_string); + + console.log(address); + + t.equal(typeof address, 'object', 'valid object for the address'); + t.equal(address.street, 'W Main St', 'parsed street'); + t.deepEqual(address.regions, ['Cheshire'], 'parsed city'); + t.equal(address.postalcode, '06410', 'parsed zip'); t.end(); }); };