mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Hide new data fetching implementation under toggle
This commit is contained in:
@@ -14,12 +14,7 @@ module Spree
|
||||
|
||||
# Ignores invoice orders
|
||||
def show
|
||||
@orders = @user.orders
|
||||
.where.not(Spree::Order.in_incomplete_state.where_values_hash)
|
||||
.select('spree_orders.*')
|
||||
.order('completed_at desc')
|
||||
|
||||
@orders = OutstandingBalance.new(@orders).query
|
||||
@orders = orders_collection
|
||||
|
||||
customers = spree_current_user.customers
|
||||
@shops = Enterprise
|
||||
@@ -64,6 +59,19 @@ module Spree
|
||||
|
||||
private
|
||||
|
||||
def orders_collection
|
||||
if OpenFoodNetwork::FeatureToggle.enabled?(:customer_balance, spree_current_user)
|
||||
orders = @user.orders
|
||||
.where.not(Spree::Order.in_incomplete_state.where_values_hash)
|
||||
.select('spree_orders.*')
|
||||
.order('completed_at desc')
|
||||
|
||||
OutstandingBalance.new(orders).query
|
||||
else
|
||||
@user.orders.where(state: 'complete').order('completed_at desc')
|
||||
end
|
||||
end
|
||||
|
||||
def load_object
|
||||
@user ||= spree_current_user
|
||||
if @user
|
||||
|
||||
@@ -40,6 +40,22 @@ describe Spree::UsersController, type: :controller do
|
||||
# Doesn't return uncompleted orders" do
|
||||
expect(orders).not_to include d1o3
|
||||
end
|
||||
|
||||
context 'when the customer_balance feature is enabled' do
|
||||
let(:outstanding_balance) { double(:outstanding_balance) }
|
||||
|
||||
before do
|
||||
allow(OpenFoodNetwork::FeatureToggle)
|
||||
.to receive(:enabled?).with(:customer_balance, controller.spree_current_user) { true }
|
||||
end
|
||||
|
||||
it 'calls OutstandingBalance' do
|
||||
allow(OutstandingBalance).to receive(:new).and_return(outstanding_balance)
|
||||
expect(outstanding_balance).to receive(:query) { Spree::Order.none }
|
||||
|
||||
spree_get :show
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe "registered_email" do
|
||||
|
||||
Reference in New Issue
Block a user