test/test_alipay.rb in magpie-0.8.6.2 vs test/test_alipay.rb in magpie-0.8.8
- old
+ new
@@ -1,15 +1,18 @@
# -*- coding: utf-8 -*-
$:.unshift(File.dirname(__FILE__))
$:.unshift(File.dirname(__FILE__) + "/.." + "/lib")
+
require 'helper'
+Magpie::AlipayModel.class_eval{ set_accounts_kind :alipay, :env => ENV['magpie']}
+
class AlipayTest < Test::Unit::TestCase
include Rack::Test::Methods
def app
- Magpie::APP
+ Magpie::BIRD_APP
end
def setup
@params = { "service" => "create_direct_pay_by_user", "sign" => "" }
@gateway = "/alipay/cooperate/gateway.do"
@@ -18,11 +21,11 @@
def test_return_xml
get @gateway, @params
assert last_response.ok?
assert last_response.body.include? "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
- assert last_response.headers["Content-type"], "text/xml"
+ assert_equal last_response.headers["Content-type"], "text/xml"
end
def test_return_final_error
get @gateway, @params.merge("service" => "")
assert last_response.body.include? "<final>"
@@ -59,16 +62,10 @@
get @gateway, @params.merge("price" => 10.00, "total_fee" => 20.00)
assert last_response.body.include? "<money>price和total_fee不能同时出现</money>"
end
def test_validates_numericality
- get @gateway, @params.merge("price" => -2.00, "total_fee" => "1000000000.00")
- assert last_response.body.include? "<price>should between 0.01~100000000.00</price>"
- assert last_response.body.include? "<total_fee>should between 0.01~100000000.00</total_fee>"
- get @gateway, @params.merge("price" => 0.00, "total_fee" => "100000000.01")
- assert last_response.body.include? "<price>should between 0.01~100000000.00</price>"
- assert last_response.body.include? "<total_fee>should between 0.01~100000000.00</total_fee>"
get @gateway, @params.merge("quantity" => 0)
assert last_response.body.include? "<quantity>should be integer and between 1~999999</quantity>"
get @gateway, @params.merge("quantity" => 1.2)
assert last_response.body.include? "<quantity>should be integer and between 1~999999</quantity>"
get @gateway, @params.merge("quantity" => 10000000)
@@ -151,16 +148,10 @@
assert am.send(:notify_text) =~ /total_fee=/
assert am.send(:notify_text) =~ /seller_email=/
assert am.send(:notify_text) != /quantity=/
end
- def test_send_notify
- am = get_am
- res = am.send_notify
- assert res.is_a? String
- end
-
def test_notify_sign
am = get_am
raw_h = notify_params
raw_sign = am.send :notify_sign
raw_h.delete("partner")
@@ -180,10 +171,10 @@
private
def get_am
- am = AlipayModel.new(:partner => "test123",
+ am = Magpie::AlipayModel.new(:partner => "test123",
:notify_url => "http://ticket.fantong.com:3000/alipay/notify",
:return_url => "http://ticket.fantong.com:3000/alipay/feedback",
:sign_type => "MD5",
:subject => "testPPP",
:out_trade_no => "123456789",