better-mundipagg 0.1.5 → 0.2.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: 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