73 lines
2.2 KiB
Ruby
73 lines
2.2 KiB
Ruby
|
|
require 'spec_helper'
|
|
|
|
describe Sale do
|
|
|
|
describe "check_integrity" do
|
|
|
|
let(:user) {FactoryGirl.create(:user)}
|
|
let(:jam_track) {FactoryGirl.create(:jam_track)}
|
|
|
|
it "empty" do
|
|
check_integrity = Sale.check_integrity
|
|
check_integrity.length.should eq(1)
|
|
r = check_integrity[0]
|
|
r.total.to_i.should eq(0)
|
|
r.not_known.to_i.should eq(0)
|
|
r.succeeded.to_i.should eq(0)
|
|
r.failed.to_i.should eq(0)
|
|
r.refunded.to_i.should eq(0)
|
|
r.voided.to_i.should eq(0)
|
|
end
|
|
|
|
it "one unknown sale" do
|
|
sale = Sale.create(user)
|
|
shopping_cart = ShoppingCart.create(user, jam_track)
|
|
SaleLineItem.create_from_shopping_cart(sale, shopping_cart, 'some_recurly_uuid')
|
|
|
|
check_integrity = Sale.check_integrity
|
|
r = check_integrity[0]
|
|
r.total.to_i.should eq(1)
|
|
r.not_known.to_i.should eq(1)
|
|
r.succeeded.to_i.should eq(0)
|
|
r.failed.to_i.should eq(0)
|
|
r.refunded.to_i.should eq(0)
|
|
r.voided.to_i.should eq(0)
|
|
end
|
|
|
|
it "one succeeded sale" do
|
|
sale = Sale.create(user)
|
|
shopping_cart = ShoppingCart.create(user, jam_track)
|
|
SaleLineItem.create_from_shopping_cart(sale, shopping_cart, 'some_recurly_uuid')
|
|
FactoryGirl.create(:recurly_transaction_web_hook, subscription_id: 'some_recurly_uuid')
|
|
|
|
|
|
check_integrity = Sale.check_integrity
|
|
r = check_integrity[0]
|
|
r.total.to_i.should eq(1)
|
|
r.not_known.to_i.should eq(0)
|
|
r.succeeded.to_i.should eq(1)
|
|
r.failed.to_i.should eq(0)
|
|
r.refunded.to_i.should eq(0)
|
|
r.voided.to_i.should eq(0)
|
|
end
|
|
|
|
it "one failed sale" do
|
|
sale = Sale.create(user)
|
|
shopping_cart = ShoppingCart.create(user, jam_track)
|
|
SaleLineItem.create_from_shopping_cart(sale, shopping_cart, 'some_recurly_uuid')
|
|
FactoryGirl.create(:recurly_transaction_web_hook_failed, subscription_id: 'some_recurly_uuid')
|
|
|
|
check_integrity = Sale.check_integrity
|
|
r = check_integrity[0]
|
|
r.total.to_i.should eq(1)
|
|
r.not_known.to_i.should eq(0)
|
|
r.succeeded.to_i.should eq(0)
|
|
r.failed.to_i.should eq(1)
|
|
r.refunded.to_i.should eq(0)
|
|
r.voided.to_i.should eq(0)
|
|
end
|
|
end
|
|
end
|
|
|