apipie-postman 0.0.10 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/apipie-postman.rb +20 -10
  3. metadata +12 -59
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aeda7743bb6927b7777edb9342f3a275c86d77beec417611883399dcbf3e8d82
4
- data.tar.gz: 1d66263d27c38a1bc6dae8f2cfd6172e8830e3a2e70e1f05afac8627429aa5b3
3
+ metadata.gz: 47a875f470fa33a1468e90a9a29f968fb3bf8ff4c99cee4795607aad88c876de
4
+ data.tar.gz: 1e889ff4ffa29dfe66b55d028c8a83562ba76f8eaeb7b87ea8f42d0ddaaf2f32
5
5
  SHA512:
6
- metadata.gz: 437dbea53be02b6ebb000216890416c7296fba16817ef4b8d16028c3093e12327bcc86b9efc428c974daca6b16f280fad7df23e4991877377618c04f4118f0bb
7
- data.tar.gz: a65329f239dd995255aceebe4d2aa8933fd3f684c676e1b062aee3cd33e514aa039e73baa841210c795e4c3b5cb09f683278be7d1223e75c838a32a248f62b68
6
+ metadata.gz: fa6302e92ffa2a10c38a6b2d5c57aab8aa014908aa68fe4146d3ebf9ade1ad16cd1a81d8a6b299741ca2abf2356d6c62638b11fcd78e2ed49e39f2ad5915d573
7
+ data.tar.gz: 8a370a7709c23048a485f5e42b0076991c0f97df69071e6f5061235f3936fc8a75e1a6761a04cc84bd4e195a83f7acd165ae19da45044d78b004c8392b585530
@@ -29,17 +29,19 @@ module ApipiePostman
29
29
  def self.generate_docs
30
30
  file = File.read('doc/apipie_examples.json')
31
31
  @docs = JSON.parse(file)
32
- docs_hashes = []
33
- endpoints_hashes = []
32
+ folder_hashes = []
34
33
 
35
- @docs.each_key do |key|
36
- docs_hashes << @docs[key]
37
- end
34
+ @docs = @docs.each_with_object({}) do |array, result|
35
+ key = array[0].to_s.split('#')[0]
36
+ (result[key] ||= []).concat(array[1])
37
+ end.transform_values(&:flatten)
38
38
 
39
- docs_hashes.each do |doc_hash|
40
- doc_hash.each do |endpoint|
41
- endpoints_hashes << create_endpoint_hash(endpoint, endpoint['request_data'] || {})
39
+ @docs.each_key do |key|
40
+ key_endpoint_hashes = []
41
+ @docs[key].each do |endpoint|
42
+ key_endpoint_hashes << create_endpoint_hash(endpoint, endpoint['request_data'] || {})
42
43
  end
44
+ folder_hashes << create_folder(key, key_endpoint_hashes)
43
45
  end
44
46
 
45
47
  body = {
@@ -49,7 +51,7 @@ module ApipiePostman
49
51
  description: 'Test description',
50
52
  schema: 'https://schema.getpostman.com/json/collection/v2.1.0/collection.json'
51
53
  },
52
- item: endpoints_hashes
54
+ item: folder_hashes
53
55
  }
54
56
  }.to_json
55
57
 
@@ -76,7 +78,7 @@ module ApipiePostman
76
78
 
77
79
  def self.create_endpoint_hash(endpoint, req_body)
78
80
  {
79
- name: endpoint['title'] == 'Default' ? "#{endpoint['verb']} #{endpoint['path']}" : endpoint['title'],
81
+ name: "#{endpoint['verb']} #{endpoint['path']}",
80
82
  request: {
81
83
  url: "#{self.configuration.base_url}#{endpoint['path']}",
82
84
  method: endpoint['verb'],
@@ -90,4 +92,12 @@ module ApipiePostman
90
92
  response: []
91
93
  }
92
94
  end
95
+
96
+ def self.create_folder(key, item_hashes)
97
+ {
98
+ name: key,
99
+ description: key,
100
+ item: item_hashes
101
+ }
102
+ end
93
103
  end
metadata CHANGED
@@ -1,83 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apipie-postman
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor Motogna
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-14 00:00:00.000000000 Z
11
+ date: 2024-01-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: 1.0.0
20
17
  - - "~>"
21
18
  - !ruby/object:Gem::Version
22
- version: '1.0'
23
- type: :runtime
24
- prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- requirements:
19
+ version: '2.7'
27
20
  - - ">="
28
21
  - !ruby/object:Gem::Version
29
- version: 1.0.0
30
- - - "~>"
31
- - !ruby/object:Gem::Version
32
- version: '1.0'
33
- - !ruby/object:Gem::Dependency
34
- name: pry
35
- requirement: !ruby/object:Gem::Requirement
36
- requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: 0.14.1
40
- type: :development
41
- prerelease: false
42
- version_requirements: !ruby/object:Gem::Requirement
43
- requirements:
44
- - - "~>"
45
- - !ruby/object:Gem::Version
46
- version: 0.14.1
47
- - !ruby/object:Gem::Dependency
48
- name: rspec
49
- requirement: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - "~>"
52
- - !ruby/object:Gem::Version
53
- version: '3.10'
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - "~>"
59
- - !ruby/object:Gem::Version
60
- version: '3.10'
61
- - !ruby/object:Gem::Dependency
62
- name: rubocop
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '1.22'
68
- - - ">="
69
- - !ruby/object:Gem::Version
70
- version: 1.22.1
71
- type: :development
22
+ version: 2.7.12
23
+ type: :runtime
72
24
  prerelease: false
73
25
  version_requirements: !ruby/object:Gem::Requirement
74
26
  requirements:
75
27
  - - "~>"
76
28
  - !ruby/object:Gem::Version
77
- version: '1.22'
29
+ version: '2.7'
78
30
  - - ">="
79
31
  - !ruby/object:Gem::Version
80
- version: 1.22.1
32
+ version: 2.7.12
81
33
  description: Use 'bundle exec apipie-postman' and 'rake apipie_postman' to generate
82
34
  the docs!
83
35
  email: vmotogna@gmail.com
@@ -91,23 +43,24 @@ files:
91
43
  homepage: https://github.com/VictorMotogna/apipie-postman
92
44
  licenses:
93
45
  - MIT
94
- metadata: {}
46
+ metadata:
47
+ rubygems_mfa_required: 'true'
95
48
  post_install_message:
96
49
  rdoc_options: []
97
50
  require_paths:
98
51
  - lib
99
52
  required_ruby_version: !ruby/object:Gem::Requirement
100
53
  requirements:
101
- - - "~>"
54
+ - - ">="
102
55
  - !ruby/object:Gem::Version
103
- version: '2.5'
56
+ version: 3.0.0
104
57
  required_rubygems_version: !ruby/object:Gem::Requirement
105
58
  requirements:
106
59
  - - ">="
107
60
  - !ruby/object:Gem::Version
108
61
  version: '0'
109
62
  requirements: []
110
- rubygems_version: 3.0.3
63
+ rubygems_version: 3.4.10
111
64
  signing_key:
112
65
  specification_version: 4
113
66
  summary: Generate Postman collection from apipie output.