pensio_api 0.2.3 → 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +3 -0
  3. data/Gemfile.lock +60 -49
  4. data/README.md +39 -1
  5. data/lib/pensio_api.rb +4 -0
  6. data/lib/pensio_api/callback.rb +13 -6
  7. data/lib/pensio_api/chargeback_event.rb +25 -0
  8. data/lib/pensio_api/credentials.rb +48 -2
  9. data/lib/pensio_api/funding_list.rb +3 -3
  10. data/lib/pensio_api/funding_list_request.rb +1 -1
  11. data/lib/pensio_api/mixins/request_defaults.rb +14 -16
  12. data/lib/pensio_api/request.rb +1 -1
  13. data/lib/pensio_api/responses/base.rb +9 -5
  14. data/lib/pensio_api/responses/chargeback_callback.rb +6 -0
  15. data/lib/pensio_api/responses/refund.rb +1 -1
  16. data/lib/pensio_api/responses/reservation.rb +11 -7
  17. data/lib/pensio_api/responses/reservation_capture.rb +6 -3
  18. data/lib/pensio_api/responses/reservation_release.rb +10 -1
  19. data/lib/pensio_api/transaction.rb +28 -4
  20. data/lib/pensio_api/version.rb +3 -0
  21. data/pensio_api.gemspec +5 -1
  22. data/spec/lib/pensio_api/callback_spec.rb +10 -2
  23. data/spec/lib/pensio_api/chargeback_event_spec.rb +37 -0
  24. data/spec/lib/pensio_api/ecommerce_spec.rb +13 -2
  25. data/spec/lib/pensio_api/errors/bad_request_spec.rb +1 -1
  26. data/spec/lib/pensio_api/errors/gateway_error_spec.rb +1 -1
  27. data/spec/lib/pensio_api/request_spec.rb +32 -15
  28. data/spec/lib/pensio_api/responses/base_spec.rb +2 -2
  29. data/spec/lib/pensio_api/responses/chargeback_callback_spec.rb +9 -0
  30. data/spec/lib/pensio_api/responses/funding_list_spec.rb +1 -1
  31. data/spec/lib/pensio_api/responses/refund_spec.rb +1 -1
  32. data/spec/lib/pensio_api/responses/reservation_capture_spec.rb +1 -1
  33. data/spec/lib/pensio_api/responses/reservation_spec.rb +2 -1
  34. data/spec/lib/pensio_api/responses/subscription_charge_spec.rb +1 -1
  35. data/spec/lib/pensio_api/responses/subscription_failure_callback_spec.rb +1 -1
  36. data/spec/lib/pensio_api/responses/success_callback_spec.rb +1 -1
  37. data/spec/lib/pensio_api/responses/terminal_spec.rb +1 -1
  38. data/spec/lib/pensio_api/responses/transaction_spec.rb +1 -1
  39. data/spec/lib/pensio_api/transaction_spec.rb +8 -4
  40. data/spec/spec_helper.rb +1 -1
  41. data/spec/support/fixtures/chargeback_callback.xml +92 -0
  42. data/spec/support/fixtures/reservation_of_fixed_amount.xml +136 -45
  43. metadata +37 -44
@@ -12,7 +12,7 @@ describe PensioAPI::Responses::Refund do
12
12
 
13
13
  describe 'readable attributes' do
14
14
  specify { expect(response.transaction).to be_an_instance_of(PensioAPI::Transaction) }
15
- specify { expect(response.refund_amount).to eq(BigDecimal.new('0.12')) }
15
+ specify { expect(response.refund_amount).to eq(BigDecimal('0.12')) }
16
16
  specify { expect(response.refund_currency).to eq(978) }
17
17
  end
18
18
  end
@@ -12,7 +12,7 @@ describe PensioAPI::Responses::ReservationCapture do
12
12
 
13
13
  describe 'readable attributes' do
14
14
  specify { expect(response.transaction).to be_an_instance_of(PensioAPI::Transaction) }
15
- specify { expect(response.capture_amount).to eq(BigDecimal.new('0.20')) }
15
+ specify { expect(response.capture_amount).to eq(BigDecimal('0.20')) }
16
16
  specify { expect(response.capture_currency).to eq(978) }
17
17
  end
18
18
  end
@@ -10,6 +10,7 @@ describe PensioAPI::Responses::Reservation do
10
10
  specify { expect(response).to be_an_instance_of(PensioAPI::Responses::Reservation) }
11
11
 
12
12
  describe 'readable attributes' do
13
- specify { expect(response.transaction).to be_an_instance_of(PensioAPI::Transaction) }
13
+ specify { expect(response.charge).to be_an_instance_of(PensioAPI::Transaction) }
14
+ specify { expect(response.reservation).to be_an_instance_of(PensioAPI::Transaction) }
14
15
  end
15
16
  end
@@ -37,7 +37,7 @@ describe PensioAPI::Responses::SubscriptionCharge do
37
37
 
38
38
  describe '.captured?' do
39
39
  it 'delegates .captured? to the new transaction' do
40
- response.new.should_receive(:captured?)
40
+ expect(response).to receive(:captured?)
41
41
  response.captured?
42
42
  end
43
43
 
@@ -5,7 +5,7 @@ describe PensioAPI::Responses::SubscriptionFailureCallback do
5
5
  let(:response) { PensioAPI::Callback.parse_failure(file_fixture("subscription_failure_callback.xml")) }
6
6
 
7
7
  it "succeeds" do
8
- expect(response.success?).to be_true
8
+ expect(response.success?).to be true
9
9
  end
10
10
 
11
11
  describe ".reservation" do
@@ -5,7 +5,7 @@ describe PensioAPI::Responses::SuccessCallback do
5
5
  let(:response) { PensioAPI::Callback.parse_success(file_fixture("success_callback.xml")) }
6
6
 
7
7
  it "succeeds" do
8
- expect(response.success?).to be_true
8
+ expect(response.success?).to be true
9
9
  end
10
10
 
11
11
  describe ".reservation" do
@@ -9,7 +9,7 @@ describe PensioAPI::Responses::Terminal do
9
9
 
10
10
  describe 'object mapping' do
11
11
  it 'maps terminals to terminal objects' do
12
- expect(response.terminals.all? { |r| r.class == PensioAPI::Terminal }).to be_true
12
+ expect(response.terminals.all? { |r| r.class == PensioAPI::Terminal }).to be true
13
13
  end
14
14
 
15
15
  specify { expect(response.terminals.length).to eq(2) }
@@ -9,7 +9,7 @@ describe PensioAPI::Responses::Transaction do
9
9
 
10
10
  describe 'object mapping' do
11
11
  it 'maps transactions to transaction objects' do
12
- expect(response.transactions.all? { |r| r.class == PensioAPI::Transaction }).to be_true
12
+ expect(response.transactions.all? { |r| r.class == PensioAPI::Transaction }).to be true
13
13
  end
14
14
 
15
15
  specify { expect(response.transactions.length).to eq(1) }
@@ -31,11 +31,15 @@ describe PensioAPI::Transaction do
31
31
  end
32
32
 
33
33
  describe '.merchant_currency' do
34
- specify { expect(transaction.merchant_currency).to be_an_instance_of(Fixnum) }
34
+ specify { expect(transaction.merchant_currency).to be_an_instance_of(Integer) }
35
35
  end
36
36
 
37
37
  describe '.card_holder_currency' do
38
- specify { expect(transaction.card_holder_currency).to be_an_instance_of(Fixnum) }
38
+ specify { expect(transaction.card_holder_currency).to be_an_instance_of(Integer) }
39
+ end
40
+
41
+ describe '.chargeback_events' do
42
+ specify { expect(transaction.chargeback_events).to be_an_instance_of(Array) }
39
43
  end
40
44
  end
41
45
 
@@ -47,7 +51,7 @@ describe PensioAPI::Transaction do
47
51
  end
48
52
 
49
53
  it 'maps transactions to transaction objects' do
50
- expect(response.all? { |r| r.class == PensioAPI::Transaction }).to be_true
54
+ expect(response.all? { |r| r.class == PensioAPI::Transaction }).to be true
51
55
  end
52
56
 
53
57
  specify { expect(response.transactions.length).to eq(1) }
@@ -87,7 +91,7 @@ describe PensioAPI::Transaction do
87
91
 
88
92
  context 'when the full reserved amount has not been captured' do
89
93
  it 'returns false' do
90
- transaction.stub(:captured_amount).and_return(BigDecimal.new('0'))
94
+ allow(transaction).to receive(:captured_amount).and_return(BigDecimal('0'))
91
95
  expect(transaction).to_not be_captured
92
96
  end
93
97
  end
@@ -6,7 +6,6 @@ require 'pensio_api'
6
6
  require './spec/support/helpers'
7
7
 
8
8
  RSpec.configure do |config|
9
- config.treat_symbols_as_metadata_keys_with_true_values = true
10
9
  config.run_all_when_everything_filtered = true
11
10
  config.filter_run :focus
12
11
 
@@ -16,6 +15,7 @@ RSpec.configure do |config|
16
15
  PensioAPI::Credentials.base_uri = 'https://testgateway.pensio.com'
17
16
  PensioAPI::Credentials.username = 'test_user'
18
17
  PensioAPI::Credentials.password = 'password'
18
+ PensioAPI::Credentials.allow_defaults = true # because some spec examples set up additional creds
19
19
  end
20
20
 
21
21
  # Run specs in random order to surface order dependencies. If you find an
@@ -0,0 +1,92 @@
1
+ <?xml version="1.0"?>
2
+ <APIResponse version="20130430">
3
+ <Header>
4
+ <Date>2014-05-22T11:05:16+02:00</Date>
5
+ <Path>settings/createReconciliationData</Path>
6
+ <ErrorCode>0</ErrorCode>
7
+ <ErrorMessage/>
8
+ </Header>
9
+ <Body>
10
+ <Result>ChargebackEvent</Result>
11
+ <Transactions>
12
+ <Transaction>
13
+ <TransactionId>1093191</TransactionId>
14
+ <AuthType>subscription_payment</AuthType>
15
+ <CardStatus>InvalidLuhn</CardStatus>
16
+ <CreditCardExpiry>
17
+ <Year>2025</Year>
18
+ <Month>11</Month>
19
+ </CreditCardExpiry>
20
+ <CreditCardToken>eba482b9ca1dac29a3964dca21d921c2f91b0d1b</CreditCardToken>
21
+ <CreditCardMaskedPan>415000******1967</CreditCardMaskedPan>
22
+ <ThreeDSecureResult>Not_Applicable</ThreeDSecureResult>
23
+ <CVVCheckResult>Not_Applicable</CVVCheckResult>
24
+ <BlacklistToken>e2e95ffb9979ff7fe0327ba8bd9b4390c2a08e55</BlacklistToken>
25
+ <ShopOrderId>test_order</ShopOrderId>
26
+ <Shop>Test Shop</Shop>
27
+ <Terminal>Test Terminal</Terminal>
28
+ <TransactionStatus>captured</TransactionStatus>
29
+ <MerchantCurrency>978</MerchantCurrency>
30
+ <CardHolderCurrency>978</CardHolderCurrency>
31
+ <ReservedAmount>100.20</ReservedAmount>
32
+ <CapturedAmount>100.20</CapturedAmount>
33
+ <RefundedAmount>0.00</RefundedAmount>
34
+ <RecurringDefaultAmount>0.00</RecurringDefaultAmount>
35
+ <CreatedDate>2014-05-22 11:04:39</CreatedDate>
36
+ <UpdatedDate>2014-05-22 11:04:40</UpdatedDate>
37
+ <PaymentNature>CreditCard</PaymentNature>
38
+ <PaymentSchemeName>Visa</PaymentSchemeName>
39
+ <PaymentNatureService name="SoapTestAcquirer">
40
+ <SupportsRefunds>true</SupportsRefunds>
41
+ <SupportsRelease>true</SupportsRelease>
42
+ <SupportsMultipleCaptures>true</SupportsMultipleCaptures>
43
+ <SupportsMultipleRefunds>true</SupportsMultipleRefunds>
44
+ </PaymentNatureService>
45
+ <AddressVerification>1</AddressVerification>
46
+ <AddressVerificationDescription>Invalid address verification response code</AddressVerificationDescription>
47
+ <ChargebackEvents>
48
+ <ChargebackEvent>
49
+ <Date>2014-05-22T00:00:00+02:00</Date>
50
+ <Type>Chargeback test case</Type>
51
+ <ReasonCode>30</ReasonCode>
52
+ <Reason>chargeback</Reason>
53
+ <Amount>100.20</Amount>
54
+ <Currency>EUR</Currency>
55
+ <AcquirerTransactionId>91816f59-0337-4ab7-8823-b56ee1fae848</AcquirerTransactionId>
56
+ <AdditionalInfo>&lt;additional_info&gt;&lt;info_element&gt;&lt;key&gt;Type&lt;/key&gt;&lt;value&gt;Test&lt;/value&gt;&lt;/info_element&gt;&lt;/additional_info&gt;</AdditionalInfo>
57
+ </ChargebackEvent>
58
+ </ChargebackEvents>
59
+ <PaymentInfos/>
60
+ <CustomerInfo>
61
+ <UserAgent>Mozilla/5.0 (X11; Linux x86_64; rv:29.0) Gecko/20100101 Firefox/29.0</UserAgent>
62
+ <IpAddress>46.208.161.11</IpAddress>
63
+ <Email/>
64
+ <Username/>
65
+ <CustomerPhone/>
66
+ <OrganisationNumber/>
67
+ <CountryOfOrigin>
68
+ <Country>LV</Country>
69
+ <Source>CardNumber</Source>
70
+ </CountryOfOrigin>
71
+ <BillingAddress>
72
+ <Firstname/>
73
+ <Lastname/>
74
+ <Address><![CDATA[11 Test Street]]></Address>
75
+ <City><![CDATA[Eberswalde]]></City>
76
+ <Region><![CDATA[Test]]></Region>
77
+ <Country><![CDATA[DE]]></Country>
78
+ <PostalCode><![CDATA[112233]]></PostalCode>
79
+ </BillingAddress>
80
+ </CustomerInfo>
81
+ <ReconciliationIdentifiers>
82
+ <ReconciliationIdentifier>
83
+ <Id>6c09caac-c6cc-a927-a4f3-f64d7a7102ab</Id>
84
+ <Amount currency="978">100.20</Amount>
85
+ <Type>captured</Type>
86
+ <Date>2014-05-22T11:04:40+02:00</Date>
87
+ </ReconciliationIdentifier>
88
+ </ReconciliationIdentifiers>
89
+ </Transaction>
90
+ </Transactions>
91
+ </Body>
92
+ </APIResponse>
@@ -1,46 +1,137 @@
1
1
  <?xml version="1.0"?>
2
- <APIResponse version="20100929">
3
- <Header>
4
- <Date>2010-09-29T12:34:56+02:00</Date>
5
- <Path>API/reservationOfFixedAmount</Path>
6
- <ErrorCode>0</ErrorCode>
7
- <ErrorMessage></ErrorMessage>
8
- </Header>
9
- <Body>
10
- <Result>Success</Result>
11
- <Transactions>
12
- <Transaction>
13
- <TransactionId>3</TransactionId>
14
- <CardStatus>Valid</CardStatus>
15
- <CreditCardToken>85c1d13de7b5dceb6b739829cc27e089631b0fda</CreditCardToken>
16
- <CreditCardMaskedPan>411111******1111</CreditCardMaskedPan>
17
- <ThreeDSecureResult>Not_Applicable</ThreeDSecureResult>
18
- <BlacklistToken>4f244dec4907eba0f6432e53b17a60ebcf51365e</BlacklistToken>
19
- <ShopOrderId>myorder123</ShopOrderId>
20
- <Shop>Pensio Functional Test Shop</Shop>
21
- <Terminal>Pensio Test Terminal</Terminal>
22
- <TransactionStatus>preauth</TransactionStatus>
23
- <MerchantCurrency>978</MerchantCurrency>
24
- <CardHolderCurrency>978</CardHolderCurrency>
25
- <ReservedAmount>2499.95</ReservedAmount>
26
- <CapturedAmount>0</CapturedAmount>
27
- <RefundedAmount>0</RefundedAmount>
28
- <RecurringDefaultAmount>0</RecurringDefaultAmount>
29
- <CreatedDate>2010-09-28 12:34:56</CreatedDate>
30
- <UpdatedDate>2010-09-28 12:34:56</UpdatedDate>
31
- <PaymentNature>CreditCard</PaymentNature>
32
- <PaymentNatureService name="TestAcquirer">
33
- <SupportsRefunds>true</SupportsRefunds>
34
- <SupportsRelease>true</SupportsRelease>
35
- <SupportsMultipleCaptures>true</SupportsMultipleCaptures>
36
- <SupportsMultipleRefunds>false</SupportsMultipleRefunds>
37
- </PaymentNatureService>
38
- <PaymentInfos>
39
- <PaymentInfo name="Payment_Type">payment</PaymentInfo>
40
- </PaymentInfos>
41
- <CustomerInfo/>
42
- <ReconciliationIdentifiers/>
43
- </Transaction>
44
- </Transactions>
45
- </Body>
46
- </APIResponse>
2
+ <APIResponse version="20130430">
3
+ <Header>
4
+ <Date>2014-11-24T03:09:12+01:00</Date>
5
+ <Path>API/reservationOfFixedAmount</Path>
6
+ <ErrorCode>0</ErrorCode>
7
+ <ErrorMessage/>
8
+ </Header>
9
+ <Body>
10
+ <Result>Success</Result>
11
+ <Transactions>
12
+ <Transaction>
13
+ <TransactionId>1142651</TransactionId>
14
+ <AuthType>subscriptionAndCharge</AuthType>
15
+ <CardStatus>Valid</CardStatus>
16
+ <CreditCardExpiry>
17
+ <Year>2017</Year>
18
+ <Month>11</Month>
19
+ </CreditCardExpiry>
20
+ <CreditCardToken>1cd3d07cc81ce08d3f272bdb9f9c22960354178d</CreditCardToken>
21
+ <CreditCardMaskedPan>477571******6027</CreditCardMaskedPan>
22
+ <ThreeDSecureResult>Disabled</ThreeDSecureResult>
23
+ <CVVCheckResult>Not_Attempted</CVVCheckResult>
24
+ <BlacklistToken>a475e2908a6ab105708003dc14453ae60d32d8c5</BlacklistToken>
25
+ <ShopOrderId>82ab48de_usd-annual_956123_3a4742f998a6a81e0606217681bc41afcfcf9b48232550e517bbb037c5c3555c</ShopOrderId>
26
+ <Shop>ASmallWorld</Shop>
27
+ <Terminal>ASmallWorld CC Import USD</Terminal>
28
+ <TransactionStatus>recurring_confirmed</TransactionStatus>
29
+ <MerchantCurrency>840</MerchantCurrency>
30
+ <CardHolderCurrency>840</CardHolderCurrency>
31
+ <ReservedAmount>133.10</ReservedAmount>
32
+ <CapturedAmount>0.00</CapturedAmount>
33
+ <RefundedAmount>0.00</RefundedAmount>
34
+ <RecurringDefaultAmount>133.10</RecurringDefaultAmount>
35
+ <CreatedDate>2014-11-24 03:09:09</CreatedDate>
36
+ <UpdatedDate>2014-11-24 03:09:11</UpdatedDate>
37
+ <PaymentNature>CreditCard</PaymentNature>
38
+ <PaymentSchemeName>Visa</PaymentSchemeName>
39
+ <PaymentNatureService name="ValitorAcquirer">
40
+ <SupportsRefunds>true</SupportsRefunds>
41
+ <SupportsRelease>true</SupportsRelease>
42
+ <SupportsMultipleCaptures>true</SupportsMultipleCaptures>
43
+ <SupportsMultipleRefunds>true</SupportsMultipleRefunds>
44
+ </PaymentNatureService>
45
+ <ChargebackEvents/>
46
+ <PaymentInfos/>
47
+ <CustomerInfo>
48
+ <UserAgent/>
49
+ <IpAddress/>
50
+ <Email/>
51
+ <Username/>
52
+ <CustomerPhone/>
53
+ <OrganisationNumber/>
54
+ <CountryOfOrigin>
55
+ <Country>IT</Country>
56
+ <Source>CardNumber</Source>
57
+ </CountryOfOrigin>
58
+ <BillingAddress>
59
+ <Firstname/>
60
+ <Lastname/>
61
+ <Address/>
62
+ <City/>
63
+ <Region/>
64
+ <Country/>
65
+ <PostalCode/>
66
+ </BillingAddress>
67
+ </CustomerInfo>
68
+ <ReconciliationIdentifiers/>
69
+ </Transaction>
70
+ <Transaction>
71
+ <TransactionId>1142661</TransactionId>
72
+ <AuthType>subscription_payment</AuthType>
73
+ <CardStatus>Valid</CardStatus>
74
+ <CreditCardExpiry>
75
+ <Year>2017</Year>
76
+ <Month>11</Month>
77
+ </CreditCardExpiry>
78
+ <CreditCardToken>1cd3d07cc81ce08d3f272bdb9f9c22960354178d</CreditCardToken>
79
+ <CreditCardMaskedPan>477571******6027</CreditCardMaskedPan>
80
+ <ThreeDSecureResult>Not_Applicable</ThreeDSecureResult>
81
+ <CVVCheckResult>Not_Applicable</CVVCheckResult>
82
+ <BlacklistToken>a475e2908a6ab105708003dc14453ae60d32d8c5</BlacklistToken>
83
+ <ShopOrderId>82ab48de_usd-annual_956123_3a4742f998a6a81e0606217681bc41afcfcf9b48232550e517bbb037c5c3555c</ShopOrderId>
84
+ <Shop>ASmallWorld</Shop>
85
+ <Terminal>ASmallWorld CC Import USD</Terminal>
86
+ <TransactionStatus>captured</TransactionStatus>
87
+ <MerchantCurrency>840</MerchantCurrency>
88
+ <CardHolderCurrency>840</CardHolderCurrency>
89
+ <ReservedAmount>133.10</ReservedAmount>
90
+ <CapturedAmount>133.10</CapturedAmount>
91
+ <RefundedAmount>0.00</RefundedAmount>
92
+ <RecurringDefaultAmount>0.00</RecurringDefaultAmount>
93
+ <CreatedDate>2014-11-24 03:09:11</CreatedDate>
94
+ <UpdatedDate>2014-11-24 03:09:12</UpdatedDate>
95
+ <PaymentNature>CreditCard</PaymentNature>
96
+ <PaymentSchemeName>Visa</PaymentSchemeName>
97
+ <PaymentNatureService name="ValitorAcquirer">
98
+ <SupportsRefunds>true</SupportsRefunds>
99
+ <SupportsRelease>true</SupportsRelease>
100
+ <SupportsMultipleCaptures>true</SupportsMultipleCaptures>
101
+ <SupportsMultipleRefunds>true</SupportsMultipleRefunds>
102
+ </PaymentNatureService>
103
+ <ChargebackEvents/>
104
+ <PaymentInfos/>
105
+ <CustomerInfo>
106
+ <UserAgent/>
107
+ <IpAddress/>
108
+ <Email/>
109
+ <Username/>
110
+ <CustomerPhone/>
111
+ <OrganisationNumber/>
112
+ <CountryOfOrigin>
113
+ <Country>IT</Country>
114
+ <Source>CardNumber</Source>
115
+ </CountryOfOrigin>
116
+ <BillingAddress>
117
+ <Firstname/>
118
+ <Lastname/>
119
+ <Address/>
120
+ <City/>
121
+ <Region/>
122
+ <Country/>
123
+ <PostalCode/>
124
+ </BillingAddress>
125
+ </CustomerInfo>
126
+ <ReconciliationIdentifiers>
127
+ <ReconciliationIdentifier>
128
+ <Id>1146c933-7a74-440e-ae07-e281004c852f</Id>
129
+ <Amount currency="840">133.10</Amount>
130
+ <Type>captured</Type>
131
+ <Date>2014-11-24T03:09:12+01:00</Date>
132
+ </ReconciliationIdentifier>
133
+ </ReconciliationIdentifiers>
134
+ </Transaction>
135
+ </Transactions>
136
+ </Body>
137
+ </APIResponse>
metadata CHANGED
@@ -1,136 +1,122 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pensio_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
5
- prerelease:
4
+ version: 0.3.4
6
5
  platform: ruby
7
6
  authors:
8
7
  - Michael Sell
9
8
  - Rory Sinclair
10
- autorequire:
9
+ autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2014-04-29 00:00:00.000000000 Z
12
+ date: 2020-11-05 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: rspec
17
16
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
17
  requirements:
20
- - - ! '>='
18
+ - - ">="
21
19
  - !ruby/object:Gem::Version
22
20
  version: '2.14'
23
21
  type: :development
24
22
  prerelease: false
25
23
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
24
  requirements:
28
- - - ! '>='
25
+ - - ">="
29
26
  - !ruby/object:Gem::Version
30
27
  version: '2.14'
31
28
  - !ruby/object:Gem::Dependency
32
29
  name: webmock
33
30
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
31
  requirements:
36
- - - ~>
32
+ - - "~>"
37
33
  - !ruby/object:Gem::Version
38
34
  version: 1.16.1
39
35
  type: :development
40
36
  prerelease: false
41
37
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
38
  requirements:
44
- - - ~>
39
+ - - "~>"
45
40
  - !ruby/object:Gem::Version
46
41
  version: 1.16.1
47
42
  - !ruby/object:Gem::Dependency
48
43
  name: guard
49
44
  requirement: !ruby/object:Gem::Requirement
50
- none: false
51
45
  requirements:
52
- - - ~>
46
+ - - "~>"
53
47
  - !ruby/object:Gem::Version
54
48
  version: 2.2.5
55
49
  type: :development
56
50
  prerelease: false
57
51
  version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
52
  requirements:
60
- - - ~>
53
+ - - "~>"
61
54
  - !ruby/object:Gem::Version
62
55
  version: 2.2.5
63
56
  - !ruby/object:Gem::Dependency
64
57
  name: guard-rspec
65
58
  requirement: !ruby/object:Gem::Requirement
66
- none: false
67
59
  requirements:
68
- - - ~>
60
+ - - "~>"
69
61
  - !ruby/object:Gem::Version
70
62
  version: 4.2.4
71
63
  type: :development
72
64
  prerelease: false
73
65
  version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
66
  requirements:
76
- - - ~>
67
+ - - "~>"
77
68
  - !ruby/object:Gem::Version
78
69
  version: 4.2.4
79
70
  - !ruby/object:Gem::Dependency
80
71
  name: httparty
81
72
  requirement: !ruby/object:Gem::Requirement
82
- none: false
83
73
  requirements:
84
- - - ! '>='
74
+ - - ">="
85
75
  - !ruby/object:Gem::Version
86
76
  version: 0.12.0
87
77
  type: :runtime
88
78
  prerelease: false
89
79
  version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
80
  requirements:
92
- - - ! '>='
81
+ - - ">="
93
82
  - !ruby/object:Gem::Version
94
83
  version: 0.12.0
95
84
  - !ruby/object:Gem::Dependency
96
85
  name: activesupport
97
86
  requirement: !ruby/object:Gem::Requirement
98
- none: false
99
87
  requirements:
100
- - - ! '>='
88
+ - - ">="
101
89
  - !ruby/object:Gem::Version
102
90
  version: '3.2'
103
91
  type: :runtime
104
92
  prerelease: false
105
93
  version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
94
  requirements:
108
- - - ! '>='
95
+ - - ">="
109
96
  - !ruby/object:Gem::Version
110
97
  version: '3.2'
111
98
  - !ruby/object:Gem::Dependency
112
99
  name: multi_xml
113
100
  requirement: !ruby/object:Gem::Requirement
114
- none: false
115
101
  requirements:
116
- - - ! '>='
102
+ - - ">="
117
103
  - !ruby/object:Gem::Version
118
104
  version: 0.5.2
119
105
  type: :runtime
120
106
  prerelease: false
121
107
  version_requirements: !ruby/object:Gem::Requirement
122
- none: false
123
108
  requirements:
124
- - - ! '>='
109
+ - - ">="
125
110
  - !ruby/object:Gem::Version
126
111
  version: 0.5.2
127
- description:
112
+ description:
128
113
  email: michael@asw.com
129
114
  executables: []
130
115
  extensions: []
131
116
  extra_rdoc_files: []
132
117
  files:
133
- - .rspec
118
+ - ".gitignore"
119
+ - ".rspec"
134
120
  - Gemfile
135
121
  - Gemfile.lock
136
122
  - Guardfile
@@ -139,6 +125,7 @@ files:
139
125
  - lib/pensio_api.rb
140
126
  - lib/pensio_api/billing_address.rb
141
127
  - lib/pensio_api/callback.rb
128
+ - lib/pensio_api/chargeback_event.rb
142
129
  - lib/pensio_api/credentials.rb
143
130
  - lib/pensio_api/ecommerce.rb
144
131
  - lib/pensio_api/errors/bad_request.rb
@@ -154,6 +141,7 @@ files:
154
141
  - lib/pensio_api/request.rb
155
142
  - lib/pensio_api/reservation.rb
156
143
  - lib/pensio_api/responses/base.rb
144
+ - lib/pensio_api/responses/chargeback_callback.rb
157
145
  - lib/pensio_api/responses/funding_list.rb
158
146
  - lib/pensio_api/responses/gateway_url.rb
159
147
  - lib/pensio_api/responses/refund.rb
@@ -168,9 +156,11 @@ files:
168
156
  - lib/pensio_api/subscription.rb
169
157
  - lib/pensio_api/terminal.rb
170
158
  - lib/pensio_api/transaction.rb
159
+ - lib/pensio_api/version.rb
171
160
  - pensio_api.gemspec
172
161
  - spec/lib/pensio_api/billing_address_spec.rb
173
162
  - spec/lib/pensio_api/callback_spec.rb
163
+ - spec/lib/pensio_api/chargeback_event_spec.rb
174
164
  - spec/lib/pensio_api/ecommerce_spec.rb
175
165
  - spec/lib/pensio_api/errors/bad_request_spec.rb
176
166
  - spec/lib/pensio_api/errors/gateway_error_spec.rb
@@ -179,6 +169,7 @@ files:
179
169
  - spec/lib/pensio_api/request_spec.rb
180
170
  - spec/lib/pensio_api/reservation_spec.rb
181
171
  - spec/lib/pensio_api/responses/base_spec.rb
172
+ - spec/lib/pensio_api/responses/chargeback_callback_spec.rb
182
173
  - spec/lib/pensio_api/responses/funding_list_spec.rb
183
174
  - spec/lib/pensio_api/responses/gateway_url_spec.rb
184
175
  - spec/lib/pensio_api/responses/refund_spec.rb
@@ -197,6 +188,7 @@ files:
197
188
  - spec/support/fixtures/bad_request_error.xml
198
189
  - spec/support/fixtures/capture_reservation.xml
199
190
  - spec/support/fixtures/charge_subscription.xml
191
+ - spec/support/fixtures/chargeback_callback.xml
200
192
  - spec/support/fixtures/create_multi_payment_request.xml
201
193
  - spec/support/fixtures/create_payment_request.xml
202
194
  - spec/support/fixtures/failure_callback.xml
@@ -217,34 +209,33 @@ files:
217
209
  - spec/support/fixtures/subscription_failure_callback.xml
218
210
  - spec/support/fixtures/success_callback.xml
219
211
  - spec/support/helpers.rb
220
- homepage:
212
+ homepage:
221
213
  licenses:
222
214
  - BSD-3-Clause
223
- post_install_message:
215
+ metadata: {}
216
+ post_install_message:
224
217
  rdoc_options: []
225
218
  require_paths:
226
219
  - lib
227
220
  required_ruby_version: !ruby/object:Gem::Requirement
228
- none: false
229
221
  requirements:
230
- - - ! '>='
222
+ - - ">="
231
223
  - !ruby/object:Gem::Version
232
224
  version: '0'
233
225
  required_rubygems_version: !ruby/object:Gem::Requirement
234
- none: false
235
226
  requirements:
236
- - - ! '>='
227
+ - - ">="
237
228
  - !ruby/object:Gem::Version
238
229
  version: '0'
239
230
  requirements: []
240
- rubyforge_project:
241
- rubygems_version: 1.8.23.2
242
- signing_key:
243
- specification_version: 3
231
+ rubygems_version: 3.0.3
232
+ signing_key:
233
+ specification_version: 4
244
234
  summary: Provides integration for the Pensio Merchant API
245
235
  test_files:
246
236
  - spec/lib/pensio_api/billing_address_spec.rb
247
237
  - spec/lib/pensio_api/callback_spec.rb
238
+ - spec/lib/pensio_api/chargeback_event_spec.rb
248
239
  - spec/lib/pensio_api/ecommerce_spec.rb
249
240
  - spec/lib/pensio_api/errors/bad_request_spec.rb
250
241
  - spec/lib/pensio_api/errors/gateway_error_spec.rb
@@ -253,6 +244,7 @@ test_files:
253
244
  - spec/lib/pensio_api/request_spec.rb
254
245
  - spec/lib/pensio_api/reservation_spec.rb
255
246
  - spec/lib/pensio_api/responses/base_spec.rb
247
+ - spec/lib/pensio_api/responses/chargeback_callback_spec.rb
256
248
  - spec/lib/pensio_api/responses/funding_list_spec.rb
257
249
  - spec/lib/pensio_api/responses/gateway_url_spec.rb
258
250
  - spec/lib/pensio_api/responses/refund_spec.rb
@@ -271,6 +263,7 @@ test_files:
271
263
  - spec/support/fixtures/bad_request_error.xml
272
264
  - spec/support/fixtures/capture_reservation.xml
273
265
  - spec/support/fixtures/charge_subscription.xml
266
+ - spec/support/fixtures/chargeback_callback.xml
274
267
  - spec/support/fixtures/create_multi_payment_request.xml
275
268
  - spec/support/fixtures/create_payment_request.xml
276
269
  - spec/support/fixtures/failure_callback.xml