gmo 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/.gitignore +8 -0
  2. data/Gemfile +22 -0
  3. data/README.ja.md +54 -0
  4. data/README.md +54 -0
  5. data/Rakefile +15 -0
  6. data/autotest/discover.rb +1 -0
  7. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_alter_tran_change_order_auth_to_sale.yml +90 -0
  8. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_alter_tran_gets_data_about_order.yml +90 -0
  9. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_alter_tran_got_error_if_missing_options.yml +32 -0
  10. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_change_tran_gets_data_about_order.yml +90 -0
  11. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_change_tran_got_error_if_missing_options.yml +32 -0
  12. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_entry_tran_gets_data_about_a_transaction.yml +32 -0
  13. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_entry_tran_got_error_if_missing_options.yml +32 -0
  14. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_exec_tran_gets_data_about_a_transaction.yml +32 -0
  15. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_exec_tran_got_error_if_missing_options.yml +32 -0
  16. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_search_trade_gets_data_about_order.yml +32 -0
  17. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_search_trade_got_error_if_missing_options.yml +32 -0
  18. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_search_trade_multi_gets_data_about_order.yml +34 -0
  19. data/fixtures/vcr_cassettes/GMO_Payment_ShopAPI/_search_trade_multi_got_error_if_missing_options.yml +34 -0
  20. data/fixtures/vcr_cassettes/GMO_Payment_ShopAndSiteAPI/_trade_card_got_error_if_missing_options.yml +32 -0
  21. data/fixtures/vcr_cassettes/GMO_Payment_SiteAPI/_delete_card_gets_data_about_a_card.yml +34 -0
  22. data/fixtures/vcr_cassettes/GMO_Payment_SiteAPI/_delete_member_gets_data_about_a_member.yml +34 -0
  23. data/fixtures/vcr_cassettes/GMO_Payment_SiteAPI/_save_card_gets_data_about_a_card.yml +34 -0
  24. data/fixtures/vcr_cassettes/GMO_Payment_SiteAPI/_save_member_gets_data_about_a_transaction.yml +32 -0
  25. data/fixtures/vcr_cassettes/GMO_Payment_SiteAPI/_save_member_got_error_if_missing_options.yml +32 -0
  26. data/fixtures/vcr_cassettes/GMO_Payment_SiteAPI/_search_card_gets_data_about_a_card.yml +65 -0
  27. data/fixtures/vcr_cassettes/GMO_Payment_SiteAPI/_search_member_gets_data_about_a_member.yml +65 -0
  28. data/fixtures/vcr_cassettes/GMO_Payment_SiteAPI/_update_member_gets_data_about_a_transaction.yml +32 -0
  29. data/gmo.gemspec +30 -0
  30. data/lib/gmo.rb +99 -0
  31. data/lib/gmo/errors.rb +51 -0
  32. data/lib/gmo/http_services.rb +77 -0
  33. data/lib/gmo/shop_and_site_api.rb +56 -0
  34. data/lib/gmo/shop_api.rb +218 -0
  35. data/lib/gmo/site_api.rb +146 -0
  36. data/lib/gmo/version.rb +3 -0
  37. data/spec/gmo/api_spec.rb +32 -0
  38. data/spec/gmo/error_spec.rb +25 -0
  39. data/spec/gmo/http_service_spec.rb +23 -0
  40. data/spec/gmo/shop_and_site_api_spec.rb +45 -0
  41. data/spec/gmo/shop_api_spec.rb +261 -0
  42. data/spec/gmo/site_api_spec.rb +140 -0
  43. data/spec/spec_helper.rb +21 -0
  44. data/spec/support/config.example.yml +4 -0
  45. data/spec/support/config.yml +4 -0
  46. data/spec/support/config_loader.rb +2 -0
  47. data/spec/support/factory.rb +8 -0
  48. data/spec/support/vcr.rb +21 -0
  49. data/travis.yml +11 -0
  50. metadata +202 -0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/SearchTradeMulti.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: OrderID=null&PayType=null&ShopID=<SHOP_ID>&ShopPass=<SHOP_PASS>
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sun, 17 Feb 2013 07:29:37 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ErrCode=M01|M01|M01&ErrInfo=M01051005|M01051011|M01004002
30
+ http_version:
31
+ recorded_at: Sun, 17 Feb 2013 07:29:37 GMT
32
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/EntryTran.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: OrderID=9881&JobCd=AUTH&Amount=100&ShopID=tshop1&ShopPass=1
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 16 Feb 2013 04:40:59 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: AccessID=ae4e9acdf5c68d901d195ab0d087ec24&AccessPass=3d21f1802db0afb9daef4ba6e2beff0f
30
+ http_version:
31
+ recorded_at: Sat, 16 Feb 2013 04:40:58 GMT
32
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/EntryTran.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: OrderID=null&JobCd=null&Amount=null&ShopID=tshop1&ShopPass=1
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 16 Feb 2013 04:39:06 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ErrCode=E01|E01&ErrInfo=E01050002|E01060006
30
+ http_version:
31
+ recorded_at: Sat, 16 Feb 2013 04:39:05 GMT
32
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/ExecTran.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: AccessID=ae4e9acdf5c68d901d195ab0d087ec24&AccessPass=3d21f1802db0afb9daef4ba6e2beff0f&OrderID=9881&Method=1&PayTimes=1&CardNo=4111111111111111&Expire=1405&HttpAccept=null&HttpUserAgent=null&DeviceCategory=0&ClientField1=client_field1&ClientField2=null&ClientField3=null&ClientFieldFlag=1&ShopID=tshop1&ShopPass=1
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 16 Feb 2013 04:49:54 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ACS=0&OrderID=9881&Forward=2a99662&Method=1&PayTimes=&Approve=6295358&TranID=1302161349111111111111193378&TranDate=20130216134954&CheckString=eb071b6061cf2dba8307b1334dd83977&ClientField1=client_field1&ClientField2=null&ClientField3=null
30
+ http_version:
31
+ recorded_at: Sat, 16 Feb 2013 04:49:54 GMT
32
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/ExecTran.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: AccessID=null&AccessPass=null&OrderID=null&Method=null&PayTimes=null&CardNo=null&Expire=null&HttpAccept=null&HttpUserAgent=null&DeviceCategory=0&ClientField1=null&ClientField2=null&ClientField3=null&ClientFieldFlag=0&ShopID=1&ShopPass=1
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 16 Feb 2013 04:47:14 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ErrCode=E01|E01|E01|E01|E01|E01&ErrInfo=E01090008|E01100008|E01110002|E01170011|E01170006|E01180006
30
+ http_version:
31
+ recorded_at: Sat, 16 Feb 2013 04:47:14 GMT
32
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/SearchTrade.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: OrderID=1003&ShopID=<SHOP_ID>&ShopPass=<SHOP_PASS>
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sun, 17 Feb 2013 07:33:03 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: OrderID=1003&Status=AUTH&ProcessDate=20130217162936&JobCd=AUTH&AccessID=781aaf3823503b49950d7da8952bd50f&AccessPass=e12780a4480ddde5b4e9e054759ee327&ItemCode=0000990&Amount=1000&Tax=0&SiteID=&MemberID=&CardNo=************1111&Expire=1405&Method=1&PayTimes=&Forward=2a99662&TranID=1302171629111111111111197575&Approve=6299693&ClientField1=null&ClientField2=null&ClientField3=null
30
+ http_version:
31
+ recorded_at: Sun, 17 Feb 2013 07:33:03 GMT
32
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/SearchTradeMulti.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: OrderID=null&PayType=null&ShopID=<SHOP_ID>&ShopPass=<SHOP_PASS>
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sun, 17 Feb 2013 07:33:04 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ErrCode=M01|M01|M01&ErrInfo=M01051005|M01051011|M01004002
30
+ http_version:
31
+ recorded_at: Sun, 17 Feb 2013 07:33:04 GMT
32
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,34 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/SearchTradeMulti.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: OrderID=100&PayType=0&ShopID=<SHOP_ID>&ShopPass=<SHOP_PASS>
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sun, 17 Feb 2013 05:57:06 GMT
23
+ Connection:
24
+ - close
25
+ Content-Type:
26
+ - text/plain;charset=Windows-31J
27
+ Transfer-Encoding:
28
+ - chunked
29
+ body:
30
+ encoding: UTF-8
31
+ string: Status=AUTH&ProcessDate=20130216054346&JobCd=AUTH&AccessID=a41d83f1f4c908baeda04e6dc03e300c&AccessPass=d72eca02e28c88f98b9341a33ba46d5d&ItemCode=0000990&Amount=100&Tax=0&SiteID=&MemberID=&CardNo=************1111&Expire=1405&Method=1&PayTimes=&Forward=2a99662&TranID=1302160543111111111111192829&Approve=6294780&ClientField1=client_field1&ClientField2=&ClientField3=&PayType=0&CvsCode=&CvsConfNo=&CvsReceiptNo=&EdyReceiptNo=&EdyOrderNo=&SuicaOrderNo=&SuicaReceiptNo=&CustID=&BkCode=&ConfNo=&EncryptReceiptNo=&PaymentTerm=&WebMoneyManagementNo=&WebMoneySettleCode=&AuPayInfoNo=&AuPayMethod=&AuCancelAmount=&AuCancelTax=&DocomoSettlementCode=&DocomoCancelAmount=&DocomoCancelTax=&SbTrackingId=&SbCancelAmount=&SbCancelTax=&Currency=JPN
32
+ http_version:
33
+ recorded_at: Sun, 17 Feb 2013 05:57:06 GMT
34
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,34 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/SearchTradeMulti.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: OrderID=null&PayType=null&ShopID=<SHOP_ID>&ShopPass=<SHOP_PASS>
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sun, 17 Feb 2013 05:58:15 GMT
23
+ Connection:
24
+ - close
25
+ Content-Type:
26
+ - text/plain;charset=Windows-31J
27
+ Transfer-Encoding:
28
+ - chunked
29
+ body:
30
+ encoding: UTF-8
31
+ string: ErrCode=M01|M01|M01&ErrInfo=M01051005|M01051011|M01004002
32
+ http_version:
33
+ recorded_at: Sun, 17 Feb 2013 05:58:16 GMT
34
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/TradedCard.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: OrderID=null&MemberID=null&SeqMode=0&DefaultFlag=0&ShopID=<SHOP_ID>&ShopPass=<SHOP_PASS>&SiteID=<SITE_ID>&SitePass=<SITE_PASS>
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sun, 17 Feb 2013 13:34:26 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ErrCode=E01&ErrInfo=E01110002
30
+ http_version:
31
+ recorded_at: Sun, 17 Feb 2013 13:34:26 GMT
32
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,34 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/DeleteCard.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: MemberID=101&CardSeq=0&SiteID=<SITE_ID>&SitePass=<SITE_PASS>
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sat, 16 Feb 2013 07:07:03 GMT
23
+ Connection:
24
+ - close
25
+ Content-Type:
26
+ - text/plain;charset=Windows-31J
27
+ Transfer-Encoding:
28
+ - chunked
29
+ body:
30
+ encoding: UTF-8
31
+ string: CardSeq=0
32
+ http_version:
33
+ recorded_at: Sat, 16 Feb 2013 07:07:02 GMT
34
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,34 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/DeleteMember.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: MemberID=100&SiteID=<SITE_ID>&SitePass=<SITE_PASS>
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sat, 16 Feb 2013 06:51:37 GMT
23
+ Connection:
24
+ - close
25
+ Content-Type:
26
+ - text/plain;charset=Windows-31J
27
+ Transfer-Encoding:
28
+ - chunked
29
+ body:
30
+ encoding: UTF-8
31
+ string: MemberID=100
32
+ http_version:
33
+ recorded_at: Sat, 16 Feb 2013 06:51:36 GMT
34
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,34 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/SaveCard.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: MemberID=101&CardNo=4111111111111111&Expire=1405&SiteID=<SITE_ID>&SitePass=<SITE_PASS>
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sat, 16 Feb 2013 07:04:21 GMT
23
+ Connection:
24
+ - close
25
+ Content-Type:
26
+ - text/plain;charset=Windows-31J
27
+ Transfer-Encoding:
28
+ - chunked
29
+ body:
30
+ encoding: UTF-8
31
+ string: CardSeq=0&CardNo=*************111&Forward=2a99662
32
+ http_version:
33
+ recorded_at: Sat, 16 Feb 2013 07:04:21 GMT
34
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,32 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://pt01.mul-pay.jp/payment/SaveMember.idPass
6
+ body:
7
+ encoding: UTF-8
8
+ string: MemberID=100&MemberName=John+Smith&SiteID=tsite1&SitePass=1
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 16 Feb 2013 04:56:31 GMT
21
+ Connection:
22
+ - close
23
+ Content-Type:
24
+ - text/plain;charset=Windows-31J
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: MemberID=100
30
+ http_version:
31
+ recorded_at: Sat, 16 Feb 2013 04:56:31 GMT
32
+ recorded_with: VCR 2.4.0