From 7e55262ce9b944cba992665a891bafde413807dc Mon Sep 17 00:00:00 2001 From: Rohan Mitchell Date: Fri, 9 Jan 2015 11:20:41 +1100 Subject: [PATCH] Extract most everything to private methods - neatly groups concerns together --- .../user_balance_calculator.rb | 27 ++++++++++++++----- .../user_balance_calculator_spec.rb | 2 +- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/lib/open_food_network/user_balance_calculator.rb b/lib/open_food_network/user_balance_calculator.rb index 32b7d2f1d4..73926c1d03 100644 --- a/lib/open_food_network/user_balance_calculator.rb +++ b/lib/open_food_network/user_balance_calculator.rb @@ -4,14 +4,29 @@ module OpenFoodNetwork @user = user @distributor = distributor end - + def balance - orders = Spree::Order.where(distributor_id: @distributor, user_id: @user) - order_total = orders.sum &:total - - payments = Spree::Payment.where(order_id: orders) - payment_total = payments.sum &:amount payment_total - order_total end + + + private + + def order_total + orders.sum &:total + end + + def payment_total + payments.sum &:amount + end + + + def orders + Spree::Order.where(distributor_id: @distributor, user_id: @user) + end + + def payments + Spree::Payment.where(order_id: orders) + end end end diff --git a/spec/lib/open_food_network/user_balance_calculator_spec.rb b/spec/lib/open_food_network/user_balance_calculator_spec.rb index 28a4c00c48..9588439f5e 100644 --- a/spec/lib/open_food_network/user_balance_calculator_spec.rb +++ b/spec/lib/open_food_network/user_balance_calculator_spec.rb @@ -39,6 +39,6 @@ module OpenFoodNetwork UserBalanceCalculator.new(user2, hub1).balance.should == 10 end end - end + end end end