moip2 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. checksums.yaml +5 -5
  2. data/.rubocop.yml +6 -12
  3. data/Gemfile +0 -1
  4. data/Gemfile.lock +4 -4
  5. data/README.md +142 -14
  6. data/changelog.md +55 -3
  7. data/examples/ecommerce/payment-with-boleto.rb +129 -0
  8. data/examples/ecommerce/payment-with-credit-card.rb +119 -0
  9. data/examples/ecommerce/payment-with-hash.rb +101 -0
  10. data/examples/marketplace/create-classical-account-company.rb +74 -0
  11. data/examples/marketplace/create-classical-account-without-company.rb +47 -0
  12. data/examples/marketplace/moip-connect.rb +31 -0
  13. data/examples/marketplace/payment-with-escrow.rb +88 -0
  14. data/examples/marketplace/payment-with-pre-authorization.rb +87 -0
  15. data/examples/marketplace/shared-cart.rb +220 -0
  16. data/lib/moip2/api.rb +17 -2
  17. data/lib/moip2/balances_api.rb +18 -0
  18. data/lib/moip2/bank_accounts_api.rb +51 -0
  19. data/lib/moip2/client.rb +11 -11
  20. data/lib/moip2/connect_api.rb +2 -13
  21. data/lib/moip2/connect_client.rb +11 -0
  22. data/lib/moip2/entry_api.rb +21 -0
  23. data/lib/moip2/multi_payment_api.rb +8 -0
  24. data/lib/moip2/order_api.rb +2 -1
  25. data/lib/moip2/resource/balances.rb +12 -0
  26. data/lib/moip2/resource/bank_account.rb +12 -0
  27. data/lib/moip2/resource/entry.rb +13 -0
  28. data/lib/moip2/version.rb +1 -1
  29. data/lib/moip2/webhooks_api.rb +20 -4
  30. data/lib/moip2.rb +7 -0
  31. data/moip2.gemspec +2 -0
  32. data/spec/moip2/balances_api_spec.rb +22 -0
  33. data/spec/moip2/bank_accounts_api_spec.rb +173 -0
  34. data/spec/moip2/client_spec.rb +13 -76
  35. data/spec/moip2/connect_api_spec.rb +1 -1
  36. data/spec/moip2/connect_client_spec.rb +63 -0
  37. data/spec/moip2/customer_api_spec.rb +3 -3
  38. data/spec/moip2/entry_api_spec.rb +43 -0
  39. data/spec/moip2/multi_payment_api_spec.rb +32 -2
  40. data/spec/moip2/order_api_spec.rb +24 -1
  41. data/spec/moip2/response_spec.rb +2 -6
  42. data/spec/moip2/webhooks_spec.rb +87 -11
  43. data/spec/moip2_spec.rb +1 -1
  44. data/spec/spec_helper.rb +3 -14
  45. data/vcr_cassettes/bank_account_create_fail.yml +39 -0
  46. data/vcr_cassettes/bank_account_create_sucess.yml +41 -0
  47. data/vcr_cassettes/bank_account_deleted_existent.yml +38 -0
  48. data/vcr_cassettes/bank_account_deleted_nonexistent.yml +38 -0
  49. data/vcr_cassettes/bank_account_find_all.yml +9525 -0
  50. data/vcr_cassettes/bank_account_show_existent.yml +40 -0
  51. data/vcr_cassettes/bank_account_show_nonexistent.yml +38 -0
  52. data/vcr_cassettes/bank_account_update.yml +41 -0
  53. data/vcr_cassettes/capture_multi_payment_sucess.yml +44 -0
  54. data/vcr_cassettes/find_all_entries.yml +63 -0
  55. data/vcr_cassettes/find_all_orders_q_search.yml +39 -0
  56. data/vcr_cassettes/{get_webhooks.yml → find_all_webhooks.yml} +1 -1
  57. data/vcr_cassettes/find_all_webhooks_event.yml +42 -0
  58. data/vcr_cassettes/find_all_webhooks_limit.yml +48 -0
  59. data/vcr_cassettes/find_all_webhooks_multi_params.yml +38 -0
  60. data/vcr_cassettes/find_all_webhooks_no_filter.yml +58 -0
  61. data/vcr_cassettes/find_all_webhooks_offset.yml +58 -0
  62. data/vcr_cassettes/find_all_webhooks_resource_id.yml +38 -0
  63. data/vcr_cassettes/get_balances.yml +44 -0
  64. data/vcr_cassettes/show_entries.yml +43 -0
  65. data/vcr_cassettes/void_multi_payment_sucess.yml +46 -0
  66. metadata +50 -4
@@ -0,0 +1,51 @@
1
+ module Moip2
2
+ class BankAccountsApi
3
+ attr_reader :client
4
+
5
+ def initialize(client)
6
+ @client = client
7
+ end
8
+
9
+ def create(account_id, bank_account)
10
+ Resource::BankAccount.new client, client.post(
11
+ base_account_path(account_id),
12
+ bank_account,
13
+ )
14
+ end
15
+
16
+ def show(bank_account_id)
17
+ Resource::BankAccount.new client, client.get(
18
+ base_bank_account_path(bank_account_id),
19
+ )
20
+ end
21
+
22
+ def delete(bank_account_id)
23
+ Resource::BankAccount.new client, client.delete(
24
+ base_bank_account_path(bank_account_id),
25
+ )
26
+ end
27
+
28
+ def update(bank_account_id, bank_account)
29
+ Resource::BankAccount.new client, client.put(
30
+ base_bank_account_path(bank_account_id),
31
+ bank_account,
32
+ )
33
+ end
34
+
35
+ def find_all(account_id)
36
+ Resource::BankAccount.new client, client.get(
37
+ base_account_path(account_id),
38
+ )
39
+ end
40
+
41
+ private
42
+
43
+ def base_bank_account_path(bank_account_id)
44
+ "/v2/bankaccounts/#{bank_account_id}"
45
+ end
46
+
47
+ def base_account_path(account_id)
48
+ "/v2/accounts/#{account_id}/bankaccounts"
49
+ end
50
+ end
51
+ end
data/lib/moip2/client.rb CHANGED
@@ -4,12 +4,12 @@ module Moip2
4
4
 
5
5
  attr_reader :env, :auth, :uri
6
6
 
7
- def initialize(env = :sandbox, auth = nil, host = get_base_uri(env), opts = {})
7
+ def initialize(env = :sandbox, auth = nil, opts = {})
8
8
  @env = env.to_sym
9
9
  @auth = auth
10
10
  @opts = opts
11
11
 
12
- @uri = host
12
+ @uri = get_base_uri
13
13
  self.class.base_uri @uri
14
14
  end
15
15
 
@@ -62,20 +62,20 @@ module Moip2
62
62
  create_response resp
63
63
  end
64
64
 
65
- private
66
-
67
- def get_base_uri(env)
68
- return ENV["base_uri"] if ENV["base_uri"]
69
-
70
- @env = env.to_sym
71
-
65
+ def host
72
66
  if production?
73
- "https://api.moip.com.br"
67
+ "api.moip.com.br"
74
68
  else
75
- "https://sandbox.moip.com.br"
69
+ "sandbox.moip.com.br"
76
70
  end
77
71
  end
78
72
 
73
+ private
74
+
75
+ def get_base_uri
76
+ "https://#{host}"
77
+ end
78
+
79
79
  def create_response(resp)
80
80
  raise NotFoundError, "Resource not found" if resp.code == 404
81
81
 
@@ -2,25 +2,14 @@ module Moip2
2
2
  class ConnectApi
3
3
  attr_reader :client
4
4
 
5
- CONNECT_SANDBOX = "connect-sandbox.moip.com.br".freeze
6
- CONNECT_PRODUCTION = "connect.moip.com.br".freeze
7
-
8
5
  def initialize(client)
9
6
  @client = client
10
7
  end
11
8
 
12
- def self.connect_uri(production = false)
13
- production ? CONNECT_PRODUCTION : CONNECT_SANDBOX
14
- end
15
-
16
- def self.host(env = :sandbox)
17
- "https://#{connect_uri(env == :production)}"
18
- end
19
-
20
9
  def authorize_url(client_id, redirect_uri, scope)
21
10
  URI::HTTPS.build(
22
- host: self.class.connect_uri(client.production?),
23
- path: "/oauth/authorize",
11
+ host: client.host,
12
+ path: "/oauth/authorize",
24
13
  query: URI.encode_www_form(
25
14
  response_type: "code",
26
15
  client_id: client_id,
@@ -0,0 +1,11 @@
1
+ module Moip2
2
+ class ConnectClient < Client
3
+ def host
4
+ if production?
5
+ "connect.moip.com.br"
6
+ else
7
+ "connect-sandbox.moip.com.br"
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,21 @@
1
+ module Moip2
2
+ class EntryApi
3
+ attr_reader :client
4
+
5
+ def initialize(client)
6
+ @client = client
7
+ end
8
+
9
+ def base_path
10
+ "/v2/entries"
11
+ end
12
+
13
+ def show(id)
14
+ Resource::Entry.new client, client.get("#{base_path}/#{id}")
15
+ end
16
+
17
+ def find_all
18
+ Resource::Entry.new client, client.get("#{base_path}")
19
+ end
20
+ end
21
+ end
@@ -17,5 +17,13 @@ module Moip2
17
17
  def show(multi_payment_id)
18
18
  Resource::MultiPayment.new client.get("/v2/multipayments/#{multi_payment_id}")
19
19
  end
20
+
21
+ def capture(multi_payment_id)
22
+ Resource::MultiPayment.new client.post("/v2/multipayments/#{multi_payment_id}/capture", {})
23
+ end
24
+
25
+ def void(multi_payment_id)
26
+ Resource::MultiPayment.new client.post("/v2/multipayments/#{multi_payment_id}/void", {})
27
+ end
20
28
  end
21
29
  end
@@ -18,13 +18,14 @@ module Moip2
18
18
  Resource::Order.new client, client.get("#{base_path}/#{id}")
19
19
  end
20
20
 
21
- def find_all(limit: nil, offset: nil, filters: nil)
21
+ def find_all(limit: nil, offset: nil, q: nil, filters: nil)
22
22
  encoded_filters = Moip2::Util::FiltersEncoder.encode(filters)
23
23
 
24
24
  # `URI.encode...` will accept nil params, but they will pollute the URI
25
25
  params = {
26
26
  limit: limit,
27
27
  offset: offset,
28
+ q: q,
28
29
  filters: encoded_filters,
29
30
  }.reject { |_, value| value.nil? }
30
31
 
@@ -0,0 +1,12 @@
1
+ module Moip2
2
+ module Resource
3
+ class Balances < SimpleDelegator
4
+ attr_reader :client
5
+
6
+ def initialize(client, response)
7
+ super(response)
8
+ @client = client
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ module Moip2
2
+ module Resource
3
+ class BankAccount < SimpleDelegator
4
+ attr_reader :client
5
+
6
+ def initialize(client, response)
7
+ super(response)
8
+ @client = client
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,13 @@
1
+
2
+ module Moip2
3
+ module Resource
4
+ class Entry < SimpleDelegator
5
+ attr_reader :client
6
+
7
+ def initialize(client, response)
8
+ super(response)
9
+ @client = client
10
+ end
11
+ end
12
+ end
13
+ end
data/lib/moip2/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Moip2
2
- VERSION = "1.0.0".freeze
2
+ VERSION = "1.1.0".freeze
3
3
  end
@@ -6,12 +6,28 @@ module Moip2
6
6
  @client = client
7
7
  end
8
8
 
9
- def base_path
10
- "/v2/webhooks"
9
+ def find_all(limit: nil, offset: nil, resource_id: nil, event: nil)
10
+ # `URI.encode...` will accept nil params, but they will pollute the URI
11
+ params = {
12
+ limit: limit,
13
+ offset: offset,
14
+ resourceId: resource_id,
15
+ event: event,
16
+ }.reject { |_, value| value.nil? }
17
+
18
+ query_string = URI.encode_www_form(params)
19
+ path = "#{base_path}?#{query_string}"
20
+ response = client.get(path)
21
+
22
+ # We need to transform raw JSON in Webhooks objects
23
+ response.webhooks.map! { |webhooks| Resource::Webhooks.new client, webhooks }
24
+ Resource::Webhooks.new client, response
11
25
  end
12
26
 
13
- def show
14
- Resource::Webhooks.new(client, client.get(base_path.to_s))
27
+ private
28
+
29
+ def base_path
30
+ "/v2/webhooks"
15
31
  end
16
32
  end
17
33
  end
data/lib/moip2.rb CHANGED
@@ -9,6 +9,7 @@ require "moip2/auth/oauth"
9
9
 
10
10
  require "moip2/resource/account"
11
11
  require "moip2/resource/order"
12
+ require "moip2/resource/entry"
12
13
  require "moip2/resource/payment"
13
14
  require "moip2/resource/multi_order"
14
15
  require "moip2/resource/multi_payment"
@@ -20,10 +21,14 @@ require "moip2/resource/webhooks"
20
21
  require "moip2/resource/connect"
21
22
  require "moip2/resource/credit_card"
22
23
  require "moip2/resource/notification"
24
+ require "moip2/resource/balances"
25
+ require "moip2/resource/bank_account"
23
26
 
24
27
  require "moip2/response"
25
28
  require "moip2/client"
29
+ require "moip2/connect_client"
26
30
  require "moip2/order_api"
31
+ require "moip2/entry_api"
27
32
  require "moip2/multi_order_api"
28
33
  require "moip2/payment_api"
29
34
  require "moip2/multi_payment_api"
@@ -36,6 +41,8 @@ require "moip2/webhooks_api"
36
41
  require "moip2/accounts_api"
37
42
  require "moip2/connect_api"
38
43
  require "moip2/notifications_api"
44
+ require "moip2/balances_api"
45
+ require "moip2/bank_accounts_api"
39
46
 
40
47
  require "moip2/exceptions/invalid_enviroment_error"
41
48
 
data/moip2.gemspec CHANGED
@@ -13,6 +13,7 @@ Gem::Specification.new do |spec|
13
13
  "Caio Gama",
14
14
  "João Lucas Lucchetta",
15
15
  "Caio Gaspar",
16
+ "Jair Bressani Junior",
16
17
  ]
17
18
  spec.email = [
18
19
  "rodrigo.saito@moip.com.br",
@@ -20,6 +21,7 @@ Gem::Specification.new do |spec|
20
21
  "caio.gama@moip.com.br",
21
22
  "joao.lucchetta@moip.com.br",
22
23
  "caio.gaspar@moip.com.br",
24
+ "jair.bressani@moip.com.br",
23
25
  ]
24
26
  spec.summary = "Ruby client for moip v2 api"
25
27
  spec.description = "Ruby client for moip v2 api"
@@ -0,0 +1,22 @@
1
+ describe Moip2::BalancesApi do
2
+ let(:balances_api) { described_class.new sandbox_oauth_client }
3
+
4
+ describe "#show" do
5
+ let(:balances) do
6
+ VCR.use_cassette("get_balances") do
7
+ balances_api.show
8
+ end
9
+ end
10
+
11
+ it {
12
+ expect(balances).to have_attributes(
13
+ unavailable: be_an(Array),
14
+ future: be_an(Array),
15
+ current: be_an(Array),
16
+ )
17
+ }
18
+ it { expect(balances.unavailable.first).to have_attributes(amount: be_a(Numeric), currency: be_a(String)) }
19
+ it { expect(balances.future.first).to have_attributes(amount: be_a(Numeric), currency: be_a(String)) }
20
+ it { expect(balances.current.first).to have_attributes(amount: be_a(Numeric), currency: be_a(String)) }
21
+ end
22
+ end
@@ -0,0 +1,173 @@
1
+ describe Moip2::BankAccountsApi do
2
+ let(:bank_accounts_api) { described_class.new sandbox_client }
3
+
4
+ describe "#create" do
5
+ context "when given an existent moip account" do
6
+ let(:bank_account) do
7
+ {
8
+ bank_number: "237",
9
+ agency_number: "12345",
10
+ agency_check_number: "0",
11
+ account_number: "12345678",
12
+ account_check_number: "7",
13
+ type: "CHECKING",
14
+ holder: {
15
+ tax_document: {
16
+ type: "CPF",
17
+ number: "255.328.259-12",
18
+ },
19
+ fullname: "Jose Silva dos Santos",
20
+ },
21
+ }
22
+ end
23
+
24
+ let(:created_bank_account) do
25
+ VCR.use_cassette("bank_account_create_sucess") do
26
+ bank_accounts_api.create("MPA-CULBBYHD11", bank_account)
27
+ end
28
+ end
29
+
30
+ it "creates an bank_account accordingly" do
31
+ expect(created_bank_account.id).to_not be_nil
32
+ expect(created_bank_account.agency_number).to eq("12345")
33
+ expect(created_bank_account.holder.tax_document.number).to eq("255.328.259-12")
34
+ expect(created_bank_account.holder.tax_document.type).to eq("CPF")
35
+ expect(created_bank_account.holder.fullname).to eq("Jose Silva dos Santos")
36
+ expect(created_bank_account.account_number).to eq("12345678")
37
+ expect(created_bank_account.account_check_number).to eq("7")
38
+ expect(created_bank_account.bank_name).to_not be_nil
39
+ expect(created_bank_account.agency_check_number).to eq("0")
40
+ expect(created_bank_account.bank_number).to eq("237")
41
+ end
42
+ end
43
+
44
+ context "when given a nonexistent moip account" do
45
+ let(:non_created_bank_account) do
46
+ {
47
+ bank_number: "237",
48
+ agency_number: "12345",
49
+ agency_check_number: "0",
50
+ account_number: "12345678",
51
+ account_check_number: "7",
52
+ type: "CHECKING",
53
+ holder: {
54
+ tax_document: {
55
+ type: "CPF",
56
+ number: "255.328.259-12",
57
+ },
58
+ fullname: "Jose Silva dos Santos",
59
+ },
60
+ }
61
+ end
62
+
63
+ let(:bank_account) do
64
+ VCR.use_cassette("bank_account_create_fail") do
65
+ bank_accounts_api.create("MPA-F00B4R123456", non_created_bank_account)
66
+ end
67
+ end
68
+
69
+ it { expect(bank_account.response.code).to eq("401") }
70
+ end
71
+ end
72
+
73
+ describe "#show" do
74
+ context "when given an existent bank_account" do
75
+ let(:bank_account) do
76
+ VCR.use_cassette("bank_account_show_existent") do
77
+ bank_accounts_api.show("BKA-YBG1D8FKXXMT")
78
+ end
79
+ end
80
+
81
+ it "shows an the bank_account accordingly" do
82
+ expect(bank_account.id).to_not be_nil
83
+ expect(bank_account.agency_number).to eq("12345")
84
+ expect(bank_account.holder.tax_document.number).to eq("255.328.259-12")
85
+ expect(bank_account.holder.tax_document.type).to eq("CPF")
86
+ expect(bank_account.holder.fullname).to eq("Jose Silva dos Santos")
87
+ expect(bank_account.account_number).to eq("12345678")
88
+ expect(bank_account.account_check_number).to eq("7")
89
+ expect(bank_account.bank_name).to_not be_nil
90
+ expect(bank_account.agency_check_number).to eq("0")
91
+ expect(bank_account.bank_number).to eq("237")
92
+ end
93
+ end
94
+
95
+ context "when given a nonexistent account" do
96
+ let(:bank_account) do
97
+ VCR.use_cassette("bank_account_show_nonexistent") do
98
+ bank_accounts_api.show("BKA-F00B4R123456")
99
+ end
100
+ end
101
+
102
+ it { expect { bank_account }.to raise_error(Moip2::NotFoundError) }
103
+ end
104
+ end
105
+
106
+ describe "#find_all" do
107
+ let(:bank_account) do
108
+ VCR.use_cassette("bank_account_find_all") do
109
+ bank_accounts_api.find_all("MPA-CULBBYHD11")
110
+ end
111
+ end
112
+ it { expect(bank_account.first["id"]).to eq("BKA-EQW51MWMAO22") }
113
+ end
114
+
115
+ describe "#update" do
116
+ let(:bank_account) do
117
+ {
118
+ bank_number: "237",
119
+ agency_number: "54321",
120
+ agency_check_number: "0",
121
+ account_number: "12345678",
122
+ account_check_number: "7",
123
+ type: "CHECKING",
124
+ holder: {
125
+ tax_document: {
126
+ type: "CPF",
127
+ number: "255.328.259-12",
128
+ },
129
+ fullname: "Jose Silva dos Santos",
130
+ },
131
+ }
132
+ end
133
+
134
+ let(:updated_bank_account) do
135
+ VCR.use_cassette("bank_account_update") do
136
+ bank_accounts_api.update("BKA-QQSVKMC06A6I", bank_account)
137
+ end
138
+ end
139
+
140
+ it "returns an bank_account accordingly to the update" do
141
+ expect(updated_bank_account.id).to_not be_nil
142
+ expect(updated_bank_account.agency_number).to eq("54321")
143
+ expect(updated_bank_account.holder.tax_document.number).to eq("255.328.259-12")
144
+ expect(updated_bank_account.holder.tax_document.type).to eq("CPF")
145
+ expect(updated_bank_account.holder.fullname).to eq("Jose Silva dos Santos")
146
+ expect(updated_bank_account.account_number).to eq("12345678")
147
+ expect(updated_bank_account.account_check_number).to eq("7")
148
+ expect(updated_bank_account.bank_name).to_not be_nil
149
+ expect(updated_bank_account.agency_check_number).to eq("0")
150
+ expect(updated_bank_account.bank_number).to eq("237")
151
+ end
152
+ end
153
+
154
+ describe "#delete" do
155
+ context "when given an existent bank account" do
156
+ let(:bank_account) do
157
+ VCR.use_cassette("bank_account_deleted_existent") do
158
+ bank_accounts_api.delete("BKA-YBG1D8FKXXMT")
159
+ end
160
+ end
161
+ it { expect(bank_account.response.code).to eq("200") }
162
+ end
163
+
164
+ context "when given a nonexistent bank account" do
165
+ let(:bank_account) do
166
+ VCR.use_cassette("bank_account_deleted_nonexistent") do
167
+ bank_accounts_api.delete("BKA-F00B4R123456")
168
+ end
169
+ end
170
+ it { expect { bank_account }.to raise_error(Moip2::NotFoundError) }
171
+ end
172
+ end
173
+ end
@@ -16,105 +16,42 @@ describe Moip2::Client do
16
16
  end
17
17
 
18
18
  describe "initialize on sandbox with OAuth" do
19
- let(:client) do
20
- described_class.new :sandbox, auth
21
- end
22
-
23
- let(:client) { described_class.new :sandbox, oauth }
24
- it { expect(client.uri).to eq ENV["sandbox_url"] }
25
- it { expect(client.env).to eq :sandbox }
26
- it {
27
- expect(client.opts[:headers]["Authorization"]).to eq "OAuth 9fdc242631454d4c95d82e27b4127394_v2"
28
- }
29
- end
30
-
31
- describe "initialize on production" do
32
- let(:client) do
33
- described_class.new :production, oauth
34
- end
35
-
36
- it { expect(client.uri).to eq "https://api.moip.com.br" }
37
- it { expect(client.env).to eq :production }
38
- it {
39
- expect(client.opts[:headers]["Authorization"]).to eq "OAuth 9fdc242631454d4c95d82e27b4127394_v2"
40
- }
41
- end
42
-
43
- describe "initialize on sandbox with base_uri and OAuth" do
44
- before do
45
- ENV["base_uri"] = "http://localhost:5000"
46
- end
47
-
48
19
  let(:client) do
49
20
  described_class.new :sandbox, oauth
50
21
  end
51
22
 
52
- it { expect(client.uri).to eq "http://localhost:5000" }
23
+ it { expect(client.uri).to eq "https://sandbox.moip.com.br" }
53
24
  it { expect(client.env).to eq :sandbox }
54
- it {
55
- expect(client.opts[:headers]["Authorization"]).to eq "OAuth 9fdc242631454d4c95d82e27b4127394_v2"
56
- }
57
- end
58
-
59
- describe "initialize on production with base_uri and OAuth" do
60
- before do
61
- ENV["base_uri"] = "http://localhost:5000"
25
+ it do
26
+ expect(client.opts[:headers]["Authorization"]).
27
+ to eq "OAuth 9fdc242631454d4c95d82e27b4127394_v2"
62
28
  end
29
+ end
63
30
 
31
+ describe "initialize on production with OAuth" do
64
32
  let(:client) do
65
33
  described_class.new :production, oauth
66
34
  end
67
35
 
68
- it { expect(client.uri).to eq "http://localhost:5000" }
36
+ it { expect(client.uri).to eq "https://api.moip.com.br" }
69
37
  it { expect(client.env).to eq :production }
70
- it {
71
- expect(client.opts[:headers]["Authorization"]).to eq "OAuth 9fdc242631454d4c95d82e27b4127394_v2"
72
- }
73
- end
74
-
75
- describe "initialize on sandbox with base_uri" do
76
- before do
77
- ENV["base_uri"] = "http://localhost:5000"
78
- end
79
-
80
- let(:client) do
81
- described_class.new :sandbox, auth
38
+ it do
39
+ expect(client.opts[:headers]["Authorization"]).
40
+ to eq "OAuth 9fdc242631454d4c95d82e27b4127394_v2"
82
41
  end
83
-
84
- it { expect(client.uri).to eq "http://localhost:5000" }
85
- it { expect(client.env).to eq :sandbox }
86
- it { expect(client.opts[:headers]["Authorization"]).to eq "Basic VE9LRU46U0VDUkVU" }
87
42
  end
88
43
 
89
- describe "initialize on production with base_uri" do
90
- before do
91
- ENV["base_uri"] = "http://localhost:5000"
92
- end
93
-
94
- let(:client) do
95
- described_class.new :production, auth
96
- end
97
-
98
- it { expect(client.uri).to eq "http://localhost:5000" }
99
- it { expect(client.env).to eq :production }
100
- it { expect(client.opts[:headers]["Authorization"]).to eq "Basic VE9LRU46U0VDUkVU" }
101
- end
102
-
103
- describe "initialize on sandbox" do
104
- before do
105
- ENV["base_uri"] = nil
106
- end
107
-
44
+ describe "initialize on sandbox with Basic authentication" do
108
45
  let(:client) do
109
46
  described_class.new :sandbox, auth
110
47
  end
111
48
 
112
- it { expect(client.uri).to eq ENV["sandbox_url"] }
49
+ it { expect(client.uri).to eq "https://sandbox.moip.com.br" }
113
50
  it { expect(client.env).to eq :sandbox }
114
51
  it { expect(client.opts[:headers]["Authorization"]).to eq "Basic VE9LRU46U0VDUkVU" }
115
52
  end
116
53
 
117
- describe "initialize on production" do
54
+ describe "initialize on production with Basic authentication" do
118
55
  let(:client) do
119
56
  described_class.new :production, auth
120
57
  end
@@ -1,5 +1,5 @@
1
1
  describe Moip2::ConnectApi do
2
- let(:connect_api) { described_class.new sandbox_client_connect }
2
+ let(:connect_api) { described_class.new sandbox_connect_client }
3
3
 
4
4
  describe "#authorize_url" do
5
5
  let (:authorize_url) do