webpay 2.2.1 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d8a1b8ff427f75338db7d5d91c523a1ed66631e3
4
- data.tar.gz: d7306e21cba942f5bdb7420dc1b759d4767607c8
3
+ metadata.gz: 188092b3058c63d8eab3b701aa0e7ffcccbec5f4
4
+ data.tar.gz: cb6faf9a38e95164e1ca21142ea7ec81bb69335a
5
5
  SHA512:
6
- metadata.gz: f9a624d7ef7a7cd2a0ecbd2d5cab27f6ccd2e20b199bbfd1ada4b6f55da92c11bc2dc3159954c215351e7fead039c3814f9bfd94e2cd0fb825c2949296526429
7
- data.tar.gz: 91c592327ce3c08bcda224e278f3783393264e657b22275fd6c8f386f9a1bd1a33c0deae5ef676eded734ffa86cd6a2fac8d020facc7bef72c3b967ba89acddb
6
+ metadata.gz: 6a29018c83c4bba873bd84f2c37dc0b42cac4abd8453559b7a09c399ef4e9f56a7739201e09abe43effc77a54065ae6d6b77966e952ac8b9d02f8a5d43128485
7
+ data.tar.gz: e4a6023906009fa1d357a1301021e7d77c93190683fead2d0d84b3c392f4f9afce4061d6ee2687e5262cfe177c3e23dd7339c18eb9bedce61c90a89101014b7c
data/README.md CHANGED
@@ -44,3 +44,9 @@ See [WebPay Ruby API Document](https://webpay.jp/docs/api/ruby) for more details
44
44
  3. Commit your changes (`git commit -am 'Add some feature'`)
45
45
  4. Push to the branch (`git push origin my-new-feature`)
46
46
  5. Create new Pull Request
47
+
48
+ ## License
49
+
50
+ [The MIT License (MIT)](http://opensource.org/licenses/mit-license.html)
51
+
52
+ Copyright (c) 2013- WebPay.
@@ -20,6 +20,7 @@ module WebPay
20
20
  autoload(:Customer, 'webpay/customer')
21
21
  autoload(:Event, 'webpay/event')
22
22
  autoload(:Token, 'webpay/token')
23
+ autoload(:Shop, 'webpay/shop')
23
24
  autoload(:ResponseConverter, 'webpay/response_converter')
24
25
 
25
26
  @api_base = 'https://api.webpay.jp'
@@ -53,7 +53,7 @@ module WebPay
53
53
  define_method(method) do |url, *args|
54
54
  begin
55
55
  response = @conn.__send__(method, @api_version + url, *args)
56
- rescue Faraday::Error::ClientError => e
56
+ rescue Faraday::Error::ClientError, URI::InvalidURIError => e
57
57
  raise WebPay::APIConnectionError.faraday_error(e)
58
58
  end
59
59
  handle_response(response)
@@ -32,6 +32,8 @@ module WebPay
32
32
  attributes['data'] = Event::Data.new(attributes['data'])
33
33
  end
34
34
  Event.new(attributes)
35
+ when 'shop'
36
+ Shop.new(attributes)
35
37
  when 'account'
36
38
  Account.new(attributes)
37
39
 
@@ -0,0 +1,73 @@
1
+ module WebPay
2
+
3
+ # Object for API response hash object with <code>hash['object'] = shop</code>
4
+ class Shop < Entity
5
+ install_class_operations :create, :retrieve, :all
6
+
7
+ # Attributes which can be updated and read by access.
8
+ # These attributes are sent on save if changed.
9
+ attr_accessor :read_attributes
10
+
11
+ # @return [String] Relative path to API root
12
+ # @api private
13
+ def self.path
14
+ '/shops'
15
+ end
16
+
17
+ # @api private
18
+ def initialize(attributes)
19
+ @read_attributes = {}
20
+ super(attributes)
21
+ end
22
+
23
+ # <code>object['key']=</code> is wrapper for <code>object.key =</code>.
24
+ # Method call style is recommended.
25
+ # @return [Object] Given value
26
+ def []=(key, value)
27
+ send("#{key}=", value)
28
+ end
29
+
30
+ # <code>object['key']</code> is wrapper for <code>object.key</code>.
31
+ # Method call style is recommended.
32
+ # @return [Object] The attribute's value
33
+ def [](key)
34
+ send(key)
35
+ end
36
+
37
+ [:description, :details].each do |attr|
38
+ define_method("#{attr}=") do |value|
39
+ @read_attributes[attr.to_s] = value
40
+ end
41
+ define_method("#{attr}") do
42
+ obj = @attributes[attr.to_s]
43
+ copyable = !(obj == nil || obj == true || obj == false || obj.is_a?(Symbol) || obj.is_a?(Integer))
44
+ @read_attributes[attr.to_s] ||= copyable ? obj.dup : obj
45
+ end
46
+ end
47
+
48
+ # Return a hash similar to the response from API.
49
+ # If an attribute's value is updated, the updated value is used.
50
+ # @return [Hash] a hash similar to the response from API
51
+ def to_hash
52
+ Hash[@attributes.merge(@read_attributes).map { |k, v| [k, v.is_a?(Entity) ? v.to_hash : v] }]
53
+ end
54
+
55
+ alias_method :to_h, :to_hash
56
+
57
+ # Send update request of modified attributes.
58
+ # description and details are modifiable.
59
+ # @return [Shop] this object with attributes updated
60
+ def save
61
+ changed_attributes = @read_attributes.select { |k,v| @attributes[k] != v }
62
+ update_attributes(WebPay.client.post(path, changed_attributes))
63
+ @read_attributes = {}
64
+ self
65
+ end
66
+
67
+ # @return [String] Relative path of instance to API root
68
+ # @api private
69
+ def path
70
+ "/shops/#{id}"
71
+ end
72
+ end
73
+ end
@@ -1,5 +1,5 @@
1
1
  module WebPay
2
2
 
3
3
  # Version of WebPay gem
4
- VERSION = "2.2.1"
4
+ VERSION = "2.3.0"
5
5
  end
@@ -0,0 +1,122 @@
1
+ HTTP/1.1 200 OK
2
+ Content-Type: application/json; charset=utf-8
3
+ X-Ua-Compatible: IE=Edge
4
+ Etag: "b48ac5b36f03530f3aeb0ab8cf938776"
5
+ Cache-Control: max-age=0, private, must-revalidate
6
+ X-Request-Id: 4649874c8b3784ddc5efceab0fc13974
7
+ X-Runtime: 0.045599
8
+ Server: WEBrick/1.3.1 (Ruby/1.9.3/2013-02-22)
9
+ Date: Sat, 05 Apr 2014 13:59:50 GMT
10
+ Content-Length: 3720
11
+ Connection: Keep-Alive
12
+
13
+ {
14
+ "object": "list",
15
+ "url": "/v1/shops",
16
+ "count": 7,
17
+ "data": [
18
+ {
19
+ "id": "sh_4hB3x19La1tr0Lu",
20
+ "object": "shop",
21
+ "livemode": false,
22
+ "status": "created",
23
+ "description": "Sample Shop",
24
+ "access_key": "shop_8Yp3sy4HberKgut6vy4Ss6FA",
25
+ "created": 1396706101,
26
+ "details": {
27
+ "url": "https://webpay.jp",
28
+ "name": "WebPay",
29
+ "name_alphabet": "WEBPAY",
30
+ "name_kana": "ウェブペイ",
31
+ "product": "クレジットカード決済API",
32
+ "pricing_url": "https://webpay.jp/pricing",
33
+ "commercial_law_url": "https://webpay.jp/company",
34
+ "price_min": "30",
35
+ "price_max": "50000",
36
+ "price_average": "4000",
37
+ "zipcode": "1410022",
38
+ "address": "東京都品川区東品川2丁目2-28 タチバナビル2F",
39
+ "address_kana": "トウキョウトシナガワクヒガシシナガワ2チョウメ2-28 タチバナビル2F",
40
+ "applicant_name": "曾川景介",
41
+ "applicant_name_kana": "ソガワケイスケ",
42
+ "applicant_email": "sowawa@webpay.jp",
43
+ "applicant_phone": "03-4589-4747",
44
+ "company_name": "ウェブペイ株式会社",
45
+ "company_name_kana": "ウェブペイカブシキガイシャ",
46
+ "company_phone": "03-4589-4747",
47
+ "company_found_date": "20130601",
48
+ "company_president_name": "久保渓",
49
+ "company_president_name_kana": "クボケイ"
50
+ },
51
+ "statement_descriptor": null,
52
+ "card_types_supported": [
53
+ "Visa",
54
+ "American Express",
55
+ "MasterCard",
56
+ "JCB",
57
+ "Diners Club"
58
+ ]
59
+ },
60
+ {
61
+ "id": "sh_4hBfnVcoNdRw0Jj",
62
+ "object": "shop",
63
+ "livemode": false,
64
+ "status": "created",
65
+ "description": "最新の店子",
66
+ "access_key": "shop_1Qy9XO2G56ru4DedFFgjr3vZ",
67
+ "created": 1396705255,
68
+ "details": {
69
+ "url": "https://new.example.com",
70
+ "name": "WebPay",
71
+ "name_alphabet": "WEBPAY",
72
+ "name_kana": "ウェブペイ",
73
+ "product": "クレジットカード決済API",
74
+ "pricing_url": "https://webpay.jp/pricing",
75
+ "commercial_law_url": "https://webpay.jp/company",
76
+ "price_min": "30",
77
+ "price_max": "50000",
78
+ "price_average": "4000",
79
+ "zipcode": "1410022",
80
+ "address": "東京都品川区東品川2丁目2-28 タチバナビル2F",
81
+ "address_kana": "トウキョウトシナガワクヒガシシナガワ2チョウメ2-28 タチバナビル2F",
82
+ "applicant_name": "曾川景介",
83
+ "applicant_name_kana": "ソガワケイスケ",
84
+ "applicant_email": "sowawa@webpay.jp",
85
+ "applicant_phone": "03-4589-4747",
86
+ "company_name": "ウェブペイ株式会社",
87
+ "company_name_kana": "ウェブペイカブシキガイシャ",
88
+ "company_phone": "03-4589-4747",
89
+ "company_found_date": "20130601",
90
+ "company_president_name": "久保渓",
91
+ "company_president_name_kana": "クボケイ",
92
+ "company_president_birth_date": "19850810"
93
+ },
94
+ "statement_descriptor": null,
95
+ "card_types_supported": [
96
+ "Visa",
97
+ "American Express",
98
+ "MasterCard",
99
+ "JCB",
100
+ "Diners Club"
101
+ ]
102
+ },
103
+ {
104
+ "id": "sh_4hB4JjdP11YT9Qs",
105
+ "object": "shop",
106
+ "livemode": false,
107
+ "status": "created",
108
+ "description": "test4",
109
+ "access_key": "shop_5y26Ulc6w5bAgb28jM1Nv4RL",
110
+ "created": 1396705607,
111
+ "details": null,
112
+ "statement_descriptor": null,
113
+ "card_types_supported": [
114
+ "Visa",
115
+ "American Express",
116
+ "MasterCard",
117
+ "JCB",
118
+ "Diners Club"
119
+ ]
120
+ }
121
+ ]
122
+ }
@@ -0,0 +1,54 @@
1
+ HTTP/1.1 200 OK
2
+ Content-Type: application/json; charset=utf-8
3
+ X-Ua-Compatible: IE=Edge
4
+ Etag: "1cb9c156621a509dbcd11f65655eac77"
5
+ Cache-Control: max-age=0, private, must-revalidate
6
+ X-Request-Id: cb54cd8a7a140ab9408e8e1fa45707cb
7
+ X-Runtime: 0.381446
8
+ Server: WEBrick/1.3.1 (Ruby/1.9.3/2013-02-22)
9
+ Date: Sat, 05 Apr 2014 13:55:01 GMT
10
+ Content-Length: 1404
11
+ Connection: Keep-Alive
12
+
13
+ {
14
+ "id": "sh_4hB3x19La1tr0Lu",
15
+ "object": "shop",
16
+ "livemode": false,
17
+ "status": "created",
18
+ "description": "Sample Shop",
19
+ "access_key": "shop_8Yp3sy4HberKgut6vy4Ss6FA",
20
+ "created": 1396706101,
21
+ "details": {
22
+ "url": "https://webpay.jp",
23
+ "name": "WebPay",
24
+ "name_alphabet": "WEBPAY",
25
+ "name_kana": "ウェブペイ",
26
+ "product": "クレジットカード決済API",
27
+ "pricing_url": "https://webpay.jp/pricing",
28
+ "commercial_law_url": "https://webpay.jp/company",
29
+ "price_min": "30",
30
+ "price_max": "50000",
31
+ "price_average": "4000",
32
+ "zipcode": "1410022",
33
+ "address": "東京都品川区東品川2丁目2-28 タチバナビル2F",
34
+ "address_kana": "トウキョウトシナガワクヒガシシナガワ2チョウメ2-28 タチバナビル2F",
35
+ "applicant_name": "曾川景介",
36
+ "applicant_name_kana": "ソガワケイスケ",
37
+ "applicant_email": "sowawa@webpay.jp",
38
+ "applicant_phone": "03-4589-4747",
39
+ "company_name": "ウェブペイ株式会社",
40
+ "company_name_kana": "ウェブペイカブシキガイシャ",
41
+ "company_phone": "03-4589-4747",
42
+ "company_found_date": "20130601",
43
+ "company_president_name": "久保渓",
44
+ "company_president_name_kana": "クボケイ"
45
+ },
46
+ "statement_descriptor": null,
47
+ "card_types_supported": [
48
+ "Visa",
49
+ "American Express",
50
+ "MasterCard",
51
+ "JCB",
52
+ "Diners Club"
53
+ ]
54
+ }
@@ -0,0 +1,54 @@
1
+ HTTP/1.1 200 OK
2
+ Content-Type: application/json; charset=utf-8
3
+ X-Ua-Compatible: IE=Edge
4
+ Etag: "fbc3a10c62e15c8be01d2cfade7f46c6"
5
+ Cache-Control: max-age=0, private, must-revalidate
6
+ X-Request-Id: eed408fc7f696cd877846b8b3d03dcde
7
+ X-Runtime: 0.008473
8
+ Server: WEBrick/1.3.1 (Ruby/1.9.3/2013-02-22)
9
+ Date: Sat, 05 Apr 2014 13:45:40 GMT
10
+ Content-Length: 1395
11
+ Connection: Keep-Alive
12
+
13
+ {
14
+ "id": "sh_4hBfnVcoNdRw0Jj",
15
+ "object": "shop",
16
+ "livemode": false,
17
+ "status": "created",
18
+ "description": null,
19
+ "access_key": "shop_1Qy9XO2G56ru4DedFFgjr3vZ",
20
+ "created": 1396705255,
21
+ "details": {
22
+ "url": "https://webpay.jp",
23
+ "name": "WebPay",
24
+ "name_alphabet": "WEBPAY",
25
+ "name_kana": "ウェブペイ",
26
+ "product": "クレジットカード決済API",
27
+ "pricing_url": "https://webpay.jp/pricing",
28
+ "commercial_law_url": "https://webpay.jp/company",
29
+ "price_min": "30",
30
+ "price_max": "50000",
31
+ "price_average": "4000",
32
+ "zipcode": "1410022",
33
+ "address": "東京都品川区東品川2丁目2-28 タチバナビル2F",
34
+ "address_kana": "トウキョウトシナガワクヒガシシナガワ2チョウメ2-28 タチバナビル2F",
35
+ "applicant_name": "曾川景介",
36
+ "applicant_name_kana": "ソガワケイスケ",
37
+ "applicant_email": "sowawa@webpay.jp",
38
+ "applicant_phone": "03-4589-4747",
39
+ "company_name": "ウェブペイ株式会社",
40
+ "company_name_kana": "ウェブペイカブシキガイシャ",
41
+ "company_phone": "03-4589-4747",
42
+ "company_found_date": "20130601",
43
+ "company_president_name": "久保渓",
44
+ "company_president_name_kana": "クボケイ"
45
+ },
46
+ "statement_descriptor": null,
47
+ "card_types_supported": [
48
+ "Visa",
49
+ "American Express",
50
+ "MasterCard",
51
+ "JCB",
52
+ "Diners Club"
53
+ ]
54
+ }
@@ -0,0 +1,55 @@
1
+ HTTP/1.1 200 OK
2
+ Content-Type: application/json; charset=utf-8
3
+ X-Ua-Compatible: IE=Edge
4
+ Etag: "dddb6342b15c871b2283b7e468528dd9"
5
+ Cache-Control: max-age=0, private, must-revalidate
6
+ X-Request-Id: 5c8a469c04d4d4361e646584c52df499
7
+ X-Runtime: 0.395131
8
+ Server: WEBrick/1.3.1 (Ruby/1.9.3/2013-02-22)
9
+ Date: Sat, 05 Apr 2014 13:50:05 GMT
10
+ Content-Length: 1462
11
+ Connection: Keep-Alive
12
+
13
+ {
14
+ "id": "sh_4hBfnVcoNdRw0Jj",
15
+ "object": "shop",
16
+ "livemode": false,
17
+ "status": "created",
18
+ "description": "最新の店子",
19
+ "access_key": "shop_1Qy9XO2G56ru4DedFFgjr3vZ",
20
+ "created": 1396705255,
21
+ "details": {
22
+ "url": "https://new.example.com",
23
+ "name": "WebPay",
24
+ "name_alphabet": "WEBPAY",
25
+ "name_kana": "ウェブペイ",
26
+ "product": "クレジットカード決済API",
27
+ "pricing_url": "https://webpay.jp/pricing",
28
+ "commercial_law_url": "https://webpay.jp/company",
29
+ "price_min": "30",
30
+ "price_max": "50000",
31
+ "price_average": "4000",
32
+ "zipcode": "1410022",
33
+ "address": "東京都品川区東品川2丁目2-28 タチバナビル2F",
34
+ "address_kana": "トウキョウトシナガワクヒガシシナガワ2チョウメ2-28 タチバナビル2F",
35
+ "applicant_name": "曾川景介",
36
+ "applicant_name_kana": "ソガワケイスケ",
37
+ "applicant_email": "sowawa@webpay.jp",
38
+ "applicant_phone": "03-4589-4747",
39
+ "company_name": "ウェブペイ株式会社",
40
+ "company_name_kana": "ウェブペイカブシキガイシャ",
41
+ "company_phone": "03-4589-4747",
42
+ "company_found_date": "20130601",
43
+ "company_president_name": "久保渓",
44
+ "company_president_name_kana": "クボケイ",
45
+ "company_president_birth_date": "19850810"
46
+ },
47
+ "statement_descriptor": null,
48
+ "card_types_supported": [
49
+ "Visa",
50
+ "American Express",
51
+ "MasterCard",
52
+ "JCB",
53
+ "Diners Club"
54
+ ]
55
+ }
@@ -0,0 +1,121 @@
1
+ # coding: utf-8
2
+ require 'spec_helper'
3
+ describe WebPay::Shop do
4
+ let(:details) {
5
+ {
6
+ "url"=>"https://webpay.jp",
7
+ "name"=>"WebPay",
8
+ "name_alphabet"=>"WEBPAY",
9
+ "name_kana"=>"ウェブペイ",
10
+ "product"=>"クレジットカード決済API",
11
+ "pricing_url"=>"https://webpay.jp/pricing",
12
+ "commercial_law_url"=>"https://webpay.jp/company",
13
+ "price_min"=>"30",
14
+ "price_max"=>"50000",
15
+ "price_average"=>"4000",
16
+ "zipcode"=>"1410022",
17
+ "address"=>"東京都品川区東品川2丁目2-28 タチバナビル2F",
18
+ "address_kana"=>"トウキョウトシナガワクヒガシシナガワ2チョウメ2-28 タチバナビル2F",
19
+ "applicant_name"=>"曾川景介",
20
+ "applicant_name_kana"=>"ソガワケイスケ",
21
+ "applicant_email"=>"sowawa@webpay.jp",
22
+ "applicant_phone"=>"03-4589-4747",
23
+ "company_name"=>"ウェブペイ株式会社",
24
+ "company_name_kana"=>"ウェブペイカブシキガイシャ",
25
+ "company_phone"=>"03-4589-4747",
26
+ "company_found_date"=>"20130601",
27
+ "company_president_name"=>"久保渓",
28
+ "company_president_name_kana"=>"クボケイ"
29
+ }
30
+ }
31
+
32
+ describe '.create' do
33
+ let(:params) { {:description => 'Sample Shop', :details => details} }
34
+ before do
35
+ stub_post_request('/shops', 'shops/create', params)
36
+ end
37
+ subject(:shop) { described_class.create(params)}
38
+
39
+ its(:id) { should eq 'sh_4hB3x19La1tr0Lu' }
40
+ its(:object) { should eq 'shop' }
41
+ its(:livemode) { should eq false }
42
+ its(:status) { should eq 'created' }
43
+ its(:description) { should eq "Sample Shop" }
44
+ its(:access_key) { should eq 'shop_8Yp3sy4HberKgut6vy4Ss6FA' }
45
+ its(:created) { should eq 1396706101 }
46
+ it { expect(shop.details).to eq details }
47
+ it { expect(shop.details['url']).to eq 'https://webpay.jp' }
48
+ its(:card_types_supported) { should eq ["Visa", "American Express", "MasterCard", "JCB", "Diners Club"] }
49
+ end
50
+
51
+ describe '.retrieve' do
52
+ let(:id) { 'sh_4hBfnVcoNdRw0Jj' }
53
+ before do
54
+ stub_get_request("/shops/#{id}", 'shops/retrieve')
55
+ end
56
+
57
+ subject(:shop) { described_class.retrieve(id) }
58
+ its(:id) { should eq id }
59
+ it { expect(shop.details).to eq details }
60
+ it { expect(shop.details['url']).to eq 'https://webpay.jp' }
61
+ end
62
+
63
+ describe '.all' do
64
+ before do
65
+ stub_get_request("/shops?count=3&offset=0&created[gt]=1378000000", 'shops/all')
66
+ end
67
+
68
+ subject(:list) { described_class.all(count: 3, offset: 0, created: { gt: 1378000000 }) }
69
+ its(:url) { should eq '/v1/shops' }
70
+ its(:count) { should eq 7 }
71
+ it 'data.first.description' do
72
+ expect(list.data.first.description).to eq 'Sample Shop'
73
+ end
74
+ end
75
+
76
+ describe '#save' do
77
+ let(:id) { 'sh_4hBfnVcoNdRw0Jj' }
78
+ let(:description) { '最新の店子' }
79
+
80
+ context 'details is changed' do
81
+ let(:updated_details) { details.merge('url' => 'https://new.example.com') }
82
+ before do
83
+ stub_get_request("/shops/#{id}", 'shops/retrieve')
84
+ stub_post_request("/shops/#{id}", 'shops/update', description: description, details: updated_details)
85
+ end
86
+
87
+ it 'should update details of the retrieved shop' do
88
+ shop = described_class.retrieve(id)
89
+ shop.description = description
90
+ shop.details['url'] = 'https://new.example.com'
91
+ shop.save
92
+
93
+ expect(shop.description).to eq description
94
+ end
95
+ end
96
+
97
+ context 'details is not changed' do
98
+ before do
99
+ stub_get_request("/shops/#{id}", 'shops/retrieve')
100
+ stub_post_request("/shops/#{id}", 'shops/update', description: description)
101
+ end
102
+
103
+ it 'should update description of the retrieved shop' do
104
+ shop = described_class.retrieve(id)
105
+ shop.description = description
106
+ shop.save
107
+
108
+ expect(shop.description).to eq description
109
+ end
110
+ end
111
+ end
112
+
113
+ context 'when description is nil' do
114
+ it 'should return nil' do
115
+ shop = WebPay::Shop.new(description: nil)
116
+ expect(shop.description).to eq nil
117
+ shop.description = 'new description'
118
+ expect(shop.description).to eq 'new description'
119
+ end
120
+ end
121
+ end
@@ -32,4 +32,9 @@ describe WebPay do
32
32
  its(:param) { should eq 'id' }
33
33
  its(:message) { should eq '該当する顧客がありません: cus_eS6dGfa8BeUlbS' }
34
34
  end
35
+
36
+ it 'should handle invalid URL as ApiConnectionError' do
37
+ expect { WebPay::Charge.retrieve('ch_aaaaxxxx 2014-04-04') }.
38
+ to raise_error(WebPay::APIConnectionError, 'Connection with WebPay API server failed. bad URI(is not URI?): /v1/charges/ch_aaaaxxxx 2014-04-04')
39
+ end
35
40
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webpay
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.1
4
+ version: 2.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - webpay
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-27 00:00:00.000000000 Z
12
+ date: 2014-04-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: faraday
@@ -138,6 +138,7 @@ files:
138
138
  - lib/webpay/event.rb
139
139
  - lib/webpay/operations.rb
140
140
  - lib/webpay/response_converter.rb
141
+ - lib/webpay/shop.rb
141
142
  - lib/webpay/token.rb
142
143
  - lib/webpay/version.rb
143
144
  - lib/webpay/webpay_error.rb
@@ -165,6 +166,10 @@ files:
165
166
  - spec/resources/errors/unknown_api_error.txt
166
167
  - spec/resources/events/all_with_type.txt
167
168
  - spec/resources/events/retrieve.txt
169
+ - spec/resources/shops/all.txt
170
+ - spec/resources/shops/create.txt
171
+ - spec/resources/shops/retrieve.txt
172
+ - spec/resources/shops/update.txt
168
173
  - spec/resources/tokens/create.txt
169
174
  - spec/resources/tokens/retrieve.txt
170
175
  - spec/spec_helper.rb
@@ -172,6 +177,7 @@ files:
172
177
  - spec/webpay/charge_spec.rb
173
178
  - spec/webpay/customer_spec.rb
174
179
  - spec/webpay/event_spec.rb
180
+ - spec/webpay/shop_spec.rb
175
181
  - spec/webpay/token_spec.rb
176
182
  - spec/webpay/webpay_error_spec.rb
177
183
  - spec/webpay_spec.rb
@@ -225,6 +231,10 @@ test_files:
225
231
  - spec/resources/errors/unknown_api_error.txt
226
232
  - spec/resources/events/all_with_type.txt
227
233
  - spec/resources/events/retrieve.txt
234
+ - spec/resources/shops/all.txt
235
+ - spec/resources/shops/create.txt
236
+ - spec/resources/shops/retrieve.txt
237
+ - spec/resources/shops/update.txt
228
238
  - spec/resources/tokens/create.txt
229
239
  - spec/resources/tokens/retrieve.txt
230
240
  - spec/spec_helper.rb
@@ -232,6 +242,7 @@ test_files:
232
242
  - spec/webpay/charge_spec.rb
233
243
  - spec/webpay/customer_spec.rb
234
244
  - spec/webpay/event_spec.rb
245
+ - spec/webpay/shop_spec.rb
235
246
  - spec/webpay/token_spec.rb
236
247
  - spec/webpay/webpay_error_spec.rb
237
248
  - spec/webpay_spec.rb