Fix and implement supplier counters
This commit is contained in:
@@ -11,9 +11,19 @@ describe Supplier do
|
||||
create_list :order, 7, :active, supplier: supplier1
|
||||
create_list :order, 3, :placed, supplier: supplier2
|
||||
Supplier.reset_counters!
|
||||
supplier1.orders_in_process_count.should == 2
|
||||
supplier1.orders_delivered_count.should == 7
|
||||
supplier2.orders_in_process_count.should == 3
|
||||
supplier1.orders_placed_count.should == 2
|
||||
supplier1.orders_in_process_count.should == 7
|
||||
supplier2.orders_placed_count.should == 3
|
||||
end
|
||||
|
||||
it 'cleans counter values if orders are no longer available' do
|
||||
# this spec should run on the couchbase database
|
||||
Qwaiter::Counter.connection = $cb
|
||||
supplier = create :supplier
|
||||
Qwaiter::Counter.set "supplier_counter:#{supplier.id}:orders_placed", 9
|
||||
supplier.orders_placed_count.should == 9
|
||||
Supplier.reset_counters!
|
||||
supplier.orders_placed_count.should == 0
|
||||
end
|
||||
end
|
||||
|
||||
@@ -23,8 +33,8 @@ describe Supplier do
|
||||
create_list :order, 5, :placed, supplier: supplier
|
||||
create_list :order, 9, :active, supplier: supplier
|
||||
supplier.reset_counters!
|
||||
supplier.orders_in_process_count.should == 5
|
||||
supplier.orders_delivered_count.should == 9
|
||||
supplier.orders_placed_count.should == 5
|
||||
supplier.orders_in_process_count.should == 9
|
||||
end
|
||||
end
|
||||
|
||||
@@ -83,10 +93,10 @@ describe Supplier do
|
||||
|
||||
end
|
||||
|
||||
describe '#decrement_orders_delivered_count!' do
|
||||
it 'decreases orders_delivered' do
|
||||
Qwaiter::Counter.set "supplier:#{supplier.id}:orders_delivered", 9
|
||||
supplier.decrement_orders_delivered_count!.should == 8
|
||||
describe '#decrement_orders_placed_count!' do
|
||||
it 'decreases orders_placed' do
|
||||
Qwaiter::Counter.set "supplier_counter:#{supplier.id}:orders_placed", 9
|
||||
supplier.decrement_orders_placed_count!.should == 8
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user