From 8d8c2f04d8ae0643971f20ac500fc2a41df69ce0 Mon Sep 17 00:00:00 2001 From: Rohan Mitchell Date: Thu, 13 Dec 2012 14:55:11 +1100 Subject: [PATCH] Add test for removesInactiveExchanges --- .../javascripts/admin/order_cycle.js.erb | 16 ++++++++------ .../unit/order_cycle_spec.js.coffee | 21 +++++++++++++++++++ 2 files changed, 31 insertions(+), 6 deletions(-) diff --git a/app/assets/javascripts/admin/order_cycle.js.erb b/app/assets/javascripts/admin/order_cycle.js.erb index 13e80ed3e0..5aa6352bfb 100644 --- a/app/assets/javascripts/admin/order_cycle.js.erb +++ b/app/assets/javascripts/admin/order_cycle.js.erb @@ -119,12 +119,16 @@ angular.module('order_cycle', ['ngResource']). }, removeInactiveExchanges: function() { - for(var i=0; i < this.order_cycle.incoming_exchanges.length; i++) { - if(!this.order_cycle.incoming_exchanges[i].active) { - this.order_cycle.incoming_exchanges.splice(i, 1); - i--; - } - } + angular.forEach([this.order_cycle.incoming_exchanges, + this.order_cycle.outgoing_exchanges], + function(exchanges) { + for(var i=0; i < exchanges.length; i++) { + if(!exchanges[i].active) { + exchanges.splice(i, 1); + i--; + } + } + }); } }; }). diff --git a/spec/javascripts/unit/order_cycle_spec.js.coffee b/spec/javascripts/unit/order_cycle_spec.js.coffee index e1222cb277..d274f4adf8 100644 --- a/spec/javascripts/unit/order_cycle_spec.js.coffee +++ b/spec/javascripts/unit/order_cycle_spec.js.coffee @@ -205,5 +205,26 @@ describe 'OrderCycle services', -> expect(OrderCycle.removeInactiveExchanges).toHaveBeenCalled() expect($window.location).toEqual(undefined) + it 'removes inactive exchanges', -> + OrderCycle.order_cycle = + incoming_exchanges: [ + {enterprise_id: "1", active: false} + {enterprise_id: "2", active: true} + {enterprise_id: "3", active: false} + ] + outgoing_exchanges: [ + {enterprise_id: "4", active: true} + {enterprise_id: "5", active: false} + {enterprise_id: "6", active: true} + ] + OrderCycle.removeInactiveExchanges() + expect(OrderCycle.order_cycle.incoming_exchanges).toEqual [ + {enterprise_id: "2", active: true} + ] + expect(OrderCycle.order_cycle.outgoing_exchanges).toEqual [ + {enterprise_id: "4", active: true} + {enterprise_id: "6", active: true} + ] + describe 'OrderCycle directives', ->