better-mundipagg 0.1.5 → 0.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ba13bebb3ce4d3ce8c35075014ae706f4a749573
4
- data.tar.gz: 7e150574131173f10d80272af10275c66767767c
3
+ metadata.gz: dc98b3a6e230f9877bc8b8aa6d0766ca9d477324
4
+ data.tar.gz: d7935f53c5a047c05a3fe15801b4f95bda52218b
5
5
  SHA512:
6
- metadata.gz: 3f836d052ec8f2ed3f5908b13d926b1c7d181383adba2c8b5665a60771540e02fa930b3de0e6b5bb1698b7aab8af64b35589ebdbc1d777940de8c94b6d68a7c4
7
- data.tar.gz: c793c6bf8b9fb24d00cb4ea92b95c409642a3428dfdfa1a7c5f65d249720dfb019fe154d956325b94727280c7c53aae6553e5ab5a46654e62882a71e5a776797
6
+ metadata.gz: 53d2217512c9177b7b2ef3d6fd77996024ca6f64646b4212b8e2f77b0fd86015d91e6478889a76742fb075e3b994b688d381d87ac1a65b10d5ede86a4b59ea1b
7
+ data.tar.gz: 2b9ee2275e52522feda739b50d1ec51a83d77cd65e015d3c4b65e602f4055723688c0648f5af563059e954e224f2021d7b80b29f3f2195481c712ecec216df4f
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- better-mundipagg (0.1.4)
4
+ better-mundipagg (0.2.0)
5
5
  activemerchant
6
6
  activemodel
7
7
  savon
data/circle.yml ADDED
@@ -0,0 +1,3 @@
1
+ machine:
2
+ ruby:
3
+ version: 2.2.0
@@ -45,10 +45,34 @@ module Mundipagg
45
45
  end
46
46
 
47
47
  def error_item
48
- {
49
- description: payload[:credit_card_transaction_result_collection][:credit_card_transaction_result][:acquirer_message].split("|").last,
50
- error_code: payload[:credit_card_transaction_result_collection][:credit_card_transaction_result][:acquirer_return_code]
51
- }
48
+ { description: error_description, error_code: acquirer_return_code }
49
+ end
50
+
51
+ def error_description
52
+ case acquirer_message_code
53
+ when "1000"
54
+ I18n.t("1000", scope: "mundipagg.errors", default: "Transação não autorizada.")
55
+ when "1011"
56
+ I18n.t("1011", scope: "mundipagg.errors", default: "Cartão inválido.")
57
+ when "1013"
58
+ I18n.t("1013", scope: "mundipagg.errors", default: "Transação não autorizada.")
59
+ when "1025"
60
+ I18n.t("1025", scope: "mundipagg.errors", default: "Cartão bloqueado.")
61
+ when "2001"
62
+ I18n.t("2001", scope: "mundipagg.errors", default: "Cartão vencido.")
63
+ when "9111"
64
+ I18n.t("9111", scope: "mundipagg.errors", default: "Time-out na transação.")
65
+ else
66
+ I18n.t("default", scope: "mundipagg.errors", default: "Transação não autorizada.")
67
+ end
68
+ end
69
+
70
+ def acquirer_return_code
71
+ payload[:credit_card_transaction_result_collection][:credit_card_transaction_result][:acquirer_return_code]
72
+ end
73
+
74
+ def acquirer_message_code
75
+ @acquirer_message_code ||= payload[:credit_card_transaction_result_collection][:credit_card_transaction_result][:acquirer_message].split("|").last
52
76
  end
53
77
  end
54
78
  end
@@ -1,3 +1,3 @@
1
1
  module Mundipagg
2
- VERSION = "0.1.5"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -91,7 +91,7 @@ RSpec.describe Mundipagg::CreditCard::Response do
91
91
  create_order_result: {
92
92
  credit_card_transaction_result_collection: {
93
93
  credit_card_transaction_result: {
94
- acquirer_message: "Rede|Out of Money",
94
+ acquirer_message: "Rede|#{error_code}",
95
95
  acquirer_return_code: "E666"
96
96
  }
97
97
  }
@@ -99,6 +99,9 @@ RSpec.describe Mundipagg::CreditCard::Response do
99
99
  }
100
100
  }
101
101
  end
102
+
103
+ let(:error_code) { "1000" }
104
+
102
105
  let(:response) { described_class.new body }
103
106
 
104
107
  describe "#payload" do
@@ -106,7 +109,7 @@ RSpec.describe Mundipagg::CreditCard::Response do
106
109
  expect(response.payload).to eq({
107
110
  credit_card_transaction_result_collection: {
108
111
  credit_card_transaction_result: {
109
- acquirer_message: "Rede|Out of Money",
112
+ acquirer_message: "Rede|#{error_code}",
110
113
  acquirer_return_code: "E666"
111
114
  }
112
115
  }
@@ -117,6 +120,23 @@ RSpec.describe Mundipagg::CreditCard::Response do
117
120
  describe "#error" do
118
121
  it { expect(response.error).to be_a(Mundipagg::Error) }
119
122
  it { expect(response.error.code).to eq("E666") }
120
- it { expect(response.error.message).to eq("Out of Money") }
123
+ it { expect(response.error.message).to eq("Transação não autorizada.") }
124
+ end
125
+
126
+ describe "#error_description" do
127
+ [
128
+ ["1000", "Transação não autorizada."],
129
+ ["1011", "Cartão inválido."],
130
+ ["1013", "Transação não autorizada."],
131
+ ["1025", "Cartão bloqueado."],
132
+ ["2001", "Cartão vencido."],
133
+ ["9111", "Time-out na transação."],
134
+ ["WTF", "Transação não autorizada."]
135
+ ].each do |(code, message)|
136
+ context "when the code is #{code}" do
137
+ let(:error_code) { code }
138
+ it { expect(response.error_description).to eq(message) }
139
+ end
140
+ end
121
141
  end
122
142
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: better-mundipagg
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bruno Azisaka
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-15 00:00:00.000000000 Z
11
+ date: 2015-04-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -124,6 +124,7 @@ files:
124
124
  - Gemfile.lock
125
125
  - README.md
126
126
  - Vagrantfile
127
+ - circle.yml
127
128
  - lib/mundipagg.rb
128
129
  - lib/mundipagg/boleto.rb
129
130
  - lib/mundipagg/client.rb