Sha256: 79ed3dfbd00e487e30d977993513f675c5148726f02e7febf4e2577ede922837
Contents?: true
Size: 1.88 KB
Versions: 2
Compression:
Stored size: 1.88 KB
Contents
require 'test_helper' describe Supercharged::GatewayNotificationsController do describe "create" do let(:charge) { Charge.create!({user_id: 1, amount: 10}, without_protection: true) } context "authorized" do let(:fake_user) { stub(id: 1) } before do GatewayNotification.any_instance.stubs(:current_user).returns(fake_user) end context "correct conditions" do it "works with good notification" do adapter = stub(item_id: 1, "complete?" => true, acknowledge: true, charge: charge) GatewayNotification.any_instance.stubs(:adapter).returns(adapter) post :create, gateway: "webmoney", amount: 100 charge.reload charge.state_name.must_equal :ok assert_response :redirect, "/" end end context "bad conditions" do it "completed = false" do adapter = stub(item_id: 1, "complete?" => false, acknowledge: true, charge: charge) GatewayNotification.any_instance.stubs(:adapter).returns(adapter) post :create, gateway: "webmoney", amount: 100 charge.reload charge.state_name.must_equal :error charge.error.must_equal "not_completed" assert_response :bad_request end it "acknowledge = false" do adapter = stub(item_id: 1, "complete?" => true, acknowledge: false, charge: charge) GatewayNotification.any_instance.stubs(:adapter).returns(adapter) post :create, gateway: "webmoney", amount: 100 charge.reload charge.state_name.must_equal :error charge.error.must_equal "acknowledge_failed" assert_response :bad_request end end end context "without any payload params" do it "returns bad_request" do post :create, gateway: "paypal" assert_response :bad_request end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
supercharged-2.0.4 | test/supercharged/controllers/gateway_notifications_controller_test.rb |
supercharged-2.0.3 | test/supercharged/controllers/gateway_notifications_controller_test.rb |