quickpay-ruby-client 1.0.1 → 1.1.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: 03abde0062db5a1af9085fb988c7a7be2d6afa7f
4
- data.tar.gz: dba88591da33e971a544ea2e117ed2dd9b4ffcdb
3
+ metadata.gz: 39558975bb71b21a24e23dbb26e5061b89bd9f35
4
+ data.tar.gz: d83d53373168bbc250d98b3b802a3660011626e9
5
5
  SHA512:
6
- metadata.gz: 34a6e175531d5abf8dcbd0a5fac90a013e0e66aa4e079d68674f226e3ed1357ca81179df2bd8beec38c73274a0f11af21b15c00502416a6143a3fe701ffe69ca
7
- data.tar.gz: ca25a3ca07fe69f35eed2959e39687945fa8ae0baad062446bdbfc255c08c027e423f71a7c8d16f7362f56c0e9c31d35335e0d2d1405550fc812bba0163458e2
6
+ metadata.gz: 2dda9b126b854573119981d6e525a0e17e02b4096656d3db7ec68ed9bf4caed4ddbb5281b16e189ef4d530b3758a8753a5c7465b5c935c5ac5097060d41651a3
7
+ data.tar.gz: 6ba50abace736d75a9f470e7ee1a51aa05fd837a343fb05f337953d74dbe691e303a53f78eb3420e2d95969ff1323494343598bbb213d9f9ccc4746bef6fc340
@@ -0,0 +1,20 @@
1
+ # Changelog
2
+
3
+
4
+ ## Unreleased
5
+
6
+ ### Features:
7
+
8
+ (your contribution here)
9
+
10
+ ### Bugfixes
11
+
12
+ (your contribution here)
13
+
14
+
15
+ ## v1.1.0 (2016-01-11)
16
+
17
+ ### Features:
18
+
19
+ - Send options to the underlaying HTTParty (https://github.com/QuickPay/quickpay-ruby-client/pull/16)
20
+ - Be able to upload files (https://github.com/QuickPay/quickpay-ruby-client/pull/17<Paste>)
data/README.md CHANGED
@@ -111,3 +111,19 @@ end
111
111
  ```
112
112
 
113
113
  You can read more about api responses at [http://tech.quickpay.net/api/](http://tech.quickpay.net/api).
114
+
115
+ ## Contributions
116
+
117
+ To contribute:
118
+
119
+ 1. Write a spec that fails
120
+ 2. Fix spec by adding/changing code
121
+ 3. Add feature or bugfix to changelog in the "Unreleased" section
122
+ 4. Submit a pull request
123
+ 5. World is now a better place! :)
124
+
125
+ ### Running the specs
126
+
127
+ ```
128
+ bundle exec rspec
129
+ ```
@@ -1,5 +1,4 @@
1
1
  require 'json'
2
- require 'httparty'
3
2
  require 'quickpay/version'
4
3
  require 'quickpay/logger'
5
4
  require 'quickpay/constants'
@@ -1,11 +1,15 @@
1
+ require 'httmultiparty'
1
2
 
2
3
  module QuickPay
3
4
  module API
4
5
  class Request
5
- include HTTParty
6
+ include HTTMultiParty
7
+
8
+ attr_reader :options, :secret
6
9
 
7
10
  def initialize (options = {})
8
- @secret = options[:secret]
11
+ @options = options.dup
12
+ @secret = @options.delete(:secret)
9
13
  self.class.base_uri(options[:base_uri] || BASE_URI)
10
14
  end
11
15
 
@@ -13,19 +17,23 @@ module QuickPay
13
17
  raw = data.delete(:raw)
14
18
  req_headers = headers.merge(data.delete(:headers) || {})
15
19
 
16
- case method
17
- when :get, :delete
18
- options = { query: data }
19
- when :post, :patch, :put
20
- options = { body: data.to_json }
21
- req_headers["Content-Type"] = "application/json"
20
+ http_options = options.dup
21
+ if data.any? { |_key, value| value.is_a?(File) }
22
+ http_options[:body] = data
23
+ http_options[:detect_mime_type] = true
22
24
  else
23
- options = {}
25
+ case method
26
+ when :get, :delete
27
+ http_options[:query] = data
28
+ when :post, :patch, :put
29
+ http_options[:body] = data.to_json
30
+ req_headers["Content-Type"] = "application/json"
31
+ end
24
32
  end
25
33
 
26
- options = options.merge(:headers => headers.merge(req_headers))
27
- QuickPay.logger.debug { "#{method.to_s.upcase} #{base_uri}#{path} #{options}" }
28
- create_response(raw, self.class.send(method, path, options))
34
+ http_options[:headers] = headers.merge(req_headers)
35
+ QuickPay.logger.debug { "#{method.to_s.upcase} #{base_uri}#{path} #{http_options}" }
36
+ create_response(raw, self.class.send(method, path, http_options))
29
37
  end
30
38
 
31
39
  def create_response raw, res
@@ -69,7 +77,7 @@ module QuickPay
69
77
  'User-Agent' => user_agent,
70
78
  'Accept-Version' => "v#{QuickPay::API_VERSION}"
71
79
  }
72
- heads['Authorization'] = "Basic #{authorization}" if @secret != nil
80
+ heads['Authorization'] = "Basic #{authorization}" if secret != nil
73
81
  heads
74
82
  end
75
83
 
@@ -83,7 +91,7 @@ module QuickPay
83
91
  end
84
92
 
85
93
  def authorization
86
- Base64.strict_encode64(@secret)
94
+ Base64.strict_encode64(secret)
87
95
  end
88
96
  end
89
97
  end
@@ -1,3 +1,3 @@
1
1
  module QuickPay
2
- VERSION = "1.0.1"
2
+ VERSION = "1.1.0"
3
3
  end
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.version = QuickPay::VERSION
9
9
  spec.authors = ["QuickPay Developers"]
10
10
  spec.email = ["support@quickpay.net"]
11
-
11
+
12
12
  spec.summary = "Ruby client for QuickPay API"
13
13
  spec.description = "Embed QuickPay's secure payments directly into your Ruby applications. more at https://tech.quickpay.net"
14
14
  spec.homepage = "https://github.com/QuickPay/quickpay-ruby-client"
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency "rspec", "~> 3.2"
24
24
  spec.add_development_dependency "rspec-mocks"
25
25
  spec.add_development_dependency "webmock"
26
-
27
- spec.add_dependency "httparty", "~> 0.13"
28
-
26
+ spec.add_development_dependency "pry-byebug"
27
+
28
+ spec.add_dependency "httmultiparty", "~> 0.3.16"
29
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quickpay-ruby-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - QuickPay Developers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-14 00:00:00.000000000 Z
11
+ date: 2016-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -81,19 +81,33 @@ dependencies:
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: httparty
84
+ name: pry-byebug
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: httmultiparty
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
101
  - - ~>
88
102
  - !ruby/object:Gem::Version
89
- version: '0.13'
103
+ version: 0.3.16
90
104
  type: :runtime
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
108
  - - ~>
95
109
  - !ruby/object:Gem::Version
96
- version: '0.13'
110
+ version: 0.3.16
97
111
  description: Embed QuickPay's secure payments directly into your Ruby applications.
98
112
  more at https://tech.quickpay.net
99
113
  email:
@@ -105,6 +119,7 @@ files:
105
119
  - .gitignore
106
120
  - .rspec
107
121
  - .travis.yml
122
+ - CHANGELOG.md
108
123
  - Gemfile
109
124
  - LICENSE.txt
110
125
  - README.md