From 5eb32cf64c4284b78d7d3955a5bc34e014c4afb9 Mon Sep 17 00:00:00 2001 From: Braydon Fuller Date: Wed, 20 Jul 2016 10:48:00 -0400 Subject: [PATCH] test: address trim transform options --- lib/addresses.js | 14 ++++++++----- test/addresses.js | 53 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+), 5 deletions(-) diff --git a/lib/addresses.js b/lib/addresses.js index 48bb6e0..b45bc18 100644 --- a/lib/addresses.js +++ b/lib/addresses.js @@ -169,6 +169,14 @@ AddressController.prototype.transformUtxo = function(utxoArg) { return utxo; }; +AddressController.prototype._getTransformOptions = function(req) { + return { + noAsm: parseInt(req.query.noAsm) ? true : false, + noScriptSig: parseInt(req.query.noScriptSig) ? true : false, + noSpent: parseInt(req.query.noSpent) ? true : false + }; +}; + AddressController.prototype.multitxs = function(req, res, next) { var self = this; @@ -183,11 +191,7 @@ AddressController.prototype.multitxs = function(req, res, next) { return self.common.handleErrors(err, res); } - var transformOptions = { - noAsm: req.query.noAsm ? true : false, - noScriptSig: req.query.noScriptSig ? true : false, - noSpent: req.query.noSpent ? true : false - }; + var transformOptions = self._getTransformOptions(req); self.transformAddressHistoryForMultiTxs(result.items, transformOptions, function(err, items) { if (err) { diff --git a/test/addresses.js b/test/addresses.js index 167d1ea..6f27f84 100644 --- a/test/addresses.js +++ b/test/addresses.js @@ -714,4 +714,57 @@ describe('Addresses', function() { addresses.multitxs(req, res); }); }); + describe('#_getTransformOptions', function() { + it('will return false with value of string "0"', function() { + var node = {}; + var addresses = new AddressController(node); + var req = { + query: { + noAsm: '0', + noScriptSig: '0', + noSpent: '0' + } + }; + var options = addresses._getTransformOptions(req); + options.should.eql({ + noAsm: false, + noScriptSig: false, + noSpent: false + }); + }); + it('will return true with value of string "1"', function() { + var node = {}; + var addresses = new AddressController(node); + var req = { + query: { + noAsm: '1', + noScriptSig: '1', + noSpent: '1' + } + }; + var options = addresses._getTransformOptions(req); + options.should.eql({ + noAsm: true, + noScriptSig: true, + noSpent: true + }); + }); + it('will return true with value of number "1"', function() { + var node = {}; + var addresses = new AddressController(node); + var req = { + query: { + noAsm: 1, + noScriptSig: 1, + noSpent: 1 + } + }; + var options = addresses._getTransformOptions(req); + options.should.eql({ + noAsm: true, + noScriptSig: true, + noSpent: true + }); + }); + }); });