swagger_hub_api_pusher 1.0.0 → 1.0.1

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: 6d70b3fa8846fe6c8f5567112fbacbd3167acbfc
4
- data.tar.gz: 7fce8828fa2713b120579cd651ce08384a4b6ed8
3
+ metadata.gz: 39cd72764be2152b6ab200e4dd374cfd9e1e992b
4
+ data.tar.gz: df4cdc7980fb744e783a07759d6578d1ee6609db
5
5
  SHA512:
6
- metadata.gz: 841384d1abd26acf0e0d87c8c5fc45b8b40c60a8fe8a56d31074b6aa8e6fac9485233514c681e389d3b314f1b59df333be48aaf3b320e8d1b0f3faf081c3d4b6
7
- data.tar.gz: ab1ce26c81eff0cb36b8fdaa941eb7f0e907bb44d0a6741a991d164a630d1fa00af680f51f039ef353336e4220232dcd20f5229ec02ed2cfdeceb19f86750b4a
6
+ metadata.gz: e57a58aa72f17310b54218b587d4bd67d8b1cb173e180a6e0279c48a2b60feb8ae3919dac5b1629ae840c87c7c122181aba1fa9fb8cfc0556e841e9707fde4fb
7
+ data.tar.gz: 9afe26066aecf8c4b859b2bedfd718d9ed09c9d2ba1d531d54393a726a0394bb2af05289092ae1dc5c7d6cf3e60f4bfa0a63856e853778382ae962473ce1b07b
@@ -1,36 +1,37 @@
1
- require 'httparty'
1
+ require 'uri'
2
+ require 'net/https'
2
3
 
3
4
  module SwaggerHubApiPusher
4
5
  class Pusher
6
+ SUCCESS_STATUSES = [200, 201].freeze
7
+ BASE_URL = 'https://api.swaggerhub.com/apis/'.freeze
8
+
5
9
  def execute
6
10
  raise ArgumentError, config.errors_messages unless config.valid?
7
11
 
8
- response = Client.post(url,
9
- body: File.read(config.swagger_file),
10
- headers: {
11
- 'Content-Type' => 'application/json',
12
- 'Authorization' => config.api_key
13
- }
14
- )
12
+ uri = URI.parse(url)
13
+ request = Net::HTTP::Post.new(uri)
14
+ request['Content-Type'] = 'application/json'
15
+ request['Authorization'] = config.api_key
16
+ request.body = File.read(config.swagger_file)
17
+
18
+ response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
19
+ http.request(request)
20
+ end
15
21
 
16
- if response.success?
17
- puts 'swagger.json was successfully posted'
22
+ if SUCCESS_STATUSES.include?(response.code.to_i)
23
+ 'swagger.json was successfully posted'
18
24
  else
19
- puts JSON.parse(response.body)['message']
25
+ JSON.parse(response.body)['message']
20
26
  end
21
27
  end
22
28
 
23
29
  private def url
24
- "/#{config.owner}/#{config.api_name}?version=#{config.version}"
30
+ "#{BASE_URL}/#{config.owner}/#{config.api_name}?version=#{config.version}"
25
31
  end
26
32
 
27
33
  private def config
28
34
  @config ||= SwaggerHubApiPusher.config
29
35
  end
30
-
31
- class Client
32
- include HTTParty
33
- base_uri 'https://api.swaggerhub.com/apis'
34
- end
35
36
  end
36
37
  end
@@ -1,3 +1,3 @@
1
1
  module SwaggerHubApiPusher
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
@@ -21,10 +21,9 @@ Gem::Specification.new do |spec|
21
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
22
  spec.require_paths = ["lib"]
23
23
 
24
- spec.add_runtime_dependency "httparty", "~> 0.15.5"
25
-
26
24
  spec.add_development_dependency "bundler", "~> 1.14"
27
25
  spec.add_development_dependency "rake", "~> 10.0"
28
26
  spec.add_development_dependency "rspec", "~> 3.0"
29
27
  spec.add_development_dependency "pry", "~> 0.10.4"
28
+ spec.add_development_dependency "webmock", "~> 3.0.1"
30
29
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swagger_hub_api_pusher
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Markov Alexey
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-06-28 00:00:00.000000000 Z
11
+ date: 2017-06-29 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: httparty
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: 0.15.5
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: 0.15.5
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: bundler
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -80,6 +66,20 @@ dependencies:
80
66
  - - "~>"
81
67
  - !ruby/object:Gem::Version
82
68
  version: 0.10.4
69
+ - !ruby/object:Gem::Dependency
70
+ name: webmock
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 3.0.1
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 3.0.1
83
83
  description: Rake task for pushing swagger.json to SwaggerHub API
84
84
  email:
85
85
  - piton4eg@mail.ru