From 38ac18458b45726b97a873ac3670fbd1354c8125 Mon Sep 17 00:00:00 2001 From: Yemel Jardi Date: Mon, 23 Jun 2014 13:26:13 -0300 Subject: [PATCH 1/2] Change default address list --- index.html | 2 +- js/filters.js | 43 +++++++++---------------------------------- 2 files changed, 10 insertions(+), 35 deletions(-) diff --git a/index.html b/index.html index 77c8734be..f0e62f8e7 100644 --- a/index.html +++ b/index.html @@ -390,7 +390,7 @@ - + Show all Show less diff --git a/js/filters.js b/js/filters.js index cde5fd209..d5f5821e3 100644 --- a/js/filters.js +++ b/js/filters.js @@ -17,41 +17,16 @@ angular.module('copayApp.filters', []) }) .filter('limitAddress', function() { return function(elements, showAll) { - var addrs = []; - if (elements.length > 0) { - if (showAll) { - return elements; - } - if (elements.length == 1) { - return elements; - } - else { - for (var i=0;i 0) { - addrs.push(elements[i]); - } - } - return addrs; - } + if (elements.length <= 1 || showAll) { + return elements; } - }; - }) - .filter('withoutFunds', function() { - return function(elements) { - var len = 0; - for (var i=0;i 0); + }); + + return addrs; }; }) ; From f1faa96510d10cdd2d00eae2f6121fa68a7441ab Mon Sep 17 00:00:00 2001 From: Yemel Jardi Date: Tue, 24 Jun 2014 11:40:32 -0300 Subject: [PATCH 2/2] Add filter test --- test/unit/filters/filtersSpec.js | 52 +++++++++++++++++++++++++++++++- 1 file changed, 51 insertions(+), 1 deletion(-) diff --git a/test/unit/filters/filtersSpec.js b/test/unit/filters/filtersSpec.js index c72b3fa07..d7c13955d 100644 --- a/test/unit/filters/filtersSpec.js +++ b/test/unit/filters/filtersSpec.js @@ -1,6 +1,56 @@ +'use strict'; // // test/unit/filters/filtersSpec.js // -describe("Unit: Testing Filters", function() { +describe('Unit: Testing Filters', function() { + beforeEach(module('copayApp.filters')); + + describe('limitAddress', function() { + + it('should handle emtpy list', inject(function($filter) { + var limitAddress = $filter('limitAddress'); + expect(limitAddress([], false)).to.be.empty; + })); + + it('should honor show all', inject(function($filter) { + var limitAddress = $filter('limitAddress'); + var addresses = [{}, {}, {}, {}, {}]; + expect(limitAddress(addresses, true).length).to.equal(5); + expect(limitAddress([{}], false).length).to.equal(1); + })); + + it('should filter correctly', inject(function($filter) { + var limitAddress = $filter('limitAddress'); + var addresses = [ + {isChange: true, balance: 0}, + {isChange: false, balance: 0}, + {isChange: true, balance: 0}, + {isChange: false, balance: 0}, + {isChange: true, balance: 0}, + {isChange: false, balance: 0}, + {isChange: true, balance: 0}, + {isChange: false, balance: 0} + ]; + expect(limitAddress(addresses, false).length).to.equal(1); + + addresses[0].isChange = false; + expect(limitAddress(addresses, false).length).to.equal(2); + + addresses[2].isChange = false; + expect(limitAddress(addresses, false).length).to.equal(3); + + addresses[3].isChange = false; + expect(limitAddress(addresses, false).length).to.equal(3); + + addresses[0].balance = 20; + expect(limitAddress(addresses, false).length).to.equal(3); + + addresses[0].balance = 20; + expect(limitAddress(addresses, false).length).to.equal(3); + + addresses[7].balance = 20; + expect(limitAddress(addresses, false).length).to.equal(4); + })); + }); });