jira-ruby 2.3.0 → 3.0.0.beta2

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.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/bug_report.md +20 -0
  3. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  4. data/.github/dependabot.yml +6 -0
  5. data/.github/workflows/CI.yml +29 -0
  6. data/.github/workflows/codeql.yml +96 -0
  7. data/.github/workflows/rubocop.yml +18 -0
  8. data/.gitignore +3 -1
  9. data/.rubocop.yml +120 -0
  10. data/.yardopts +4 -0
  11. data/Gemfile +11 -3
  12. data/Guardfile +2 -0
  13. data/README.md +94 -18
  14. data/Rakefile +3 -4
  15. data/jira-ruby.gemspec +11 -17
  16. data/lib/jira/base.rb +37 -36
  17. data/lib/jira/base_factory.rb +4 -1
  18. data/lib/jira/client.rb +123 -50
  19. data/lib/jira/has_many_proxy.rb +32 -28
  20. data/lib/jira/http_client.rb +80 -13
  21. data/lib/jira/http_error.rb +4 -0
  22. data/lib/jira/jwt_client.rb +18 -42
  23. data/lib/jira/oauth_client.rb +68 -3
  24. data/lib/jira/railtie.rb +2 -0
  25. data/lib/jira/request_client.rb +31 -2
  26. data/lib/jira/resource/agile.rb +7 -9
  27. data/lib/jira/resource/applinks.rb +5 -3
  28. data/lib/jira/resource/attachment.rb +128 -3
  29. data/lib/jira/resource/board.rb +5 -3
  30. data/lib/jira/resource/board_configuration.rb +2 -0
  31. data/lib/jira/resource/comment.rb +2 -0
  32. data/lib/jira/resource/component.rb +2 -0
  33. data/lib/jira/resource/createmeta.rb +3 -1
  34. data/lib/jira/resource/field.rb +13 -12
  35. data/lib/jira/resource/filter.rb +2 -0
  36. data/lib/jira/resource/issue.rb +95 -44
  37. data/lib/jira/resource/issue_picker_suggestions.rb +4 -1
  38. data/lib/jira/resource/issue_picker_suggestions_issue.rb +2 -0
  39. data/lib/jira/resource/issuelink.rb +6 -3
  40. data/lib/jira/resource/issuelinktype.rb +2 -0
  41. data/lib/jira/resource/issuetype.rb +2 -0
  42. data/lib/jira/resource/priority.rb +2 -0
  43. data/lib/jira/resource/project.rb +4 -2
  44. data/lib/jira/resource/rapidview.rb +5 -3
  45. data/lib/jira/resource/remotelink.rb +2 -0
  46. data/lib/jira/resource/resolution.rb +2 -0
  47. data/lib/jira/resource/serverinfo.rb +2 -0
  48. data/lib/jira/resource/sprint.rb +14 -23
  49. data/lib/jira/resource/status.rb +7 -1
  50. data/lib/jira/resource/status_category.rb +10 -0
  51. data/lib/jira/resource/suggested_issue.rb +2 -0
  52. data/lib/jira/resource/transition.rb +2 -0
  53. data/lib/jira/resource/user.rb +3 -1
  54. data/lib/jira/resource/version.rb +2 -0
  55. data/lib/jira/resource/watcher.rb +3 -2
  56. data/lib/jira/resource/webhook.rb +9 -3
  57. data/lib/jira/resource/worklog.rb +3 -2
  58. data/lib/jira/version.rb +3 -1
  59. data/lib/jira-ruby.rb +5 -3
  60. data/lib/tasks/generate.rake +3 -1
  61. data/spec/data/files/short.txt +1 -0
  62. data/spec/integration/attachment_spec.rb +3 -3
  63. data/spec/integration/comment_spec.rb +8 -8
  64. data/spec/integration/component_spec.rb +7 -7
  65. data/spec/integration/field_spec.rb +3 -3
  66. data/spec/integration/issue_spec.rb +20 -16
  67. data/spec/integration/issuelinktype_spec.rb +3 -3
  68. data/spec/integration/issuetype_spec.rb +3 -3
  69. data/spec/integration/priority_spec.rb +3 -3
  70. data/spec/integration/project_spec.rb +8 -8
  71. data/spec/integration/rapidview_spec.rb +10 -10
  72. data/spec/integration/resolution_spec.rb +3 -3
  73. data/spec/integration/status_category_spec.rb +20 -0
  74. data/spec/integration/status_spec.rb +4 -8
  75. data/spec/integration/transition_spec.rb +2 -2
  76. data/spec/integration/user_spec.rb +34 -11
  77. data/spec/integration/version_spec.rb +7 -7
  78. data/spec/integration/watcher_spec.rb +21 -18
  79. data/spec/integration/webhook_spec.rb +33 -0
  80. data/spec/integration/worklog_spec.rb +8 -8
  81. data/spec/jira/base_factory_spec.rb +13 -3
  82. data/spec/jira/base_spec.rb +135 -98
  83. data/spec/jira/client_spec.rb +63 -47
  84. data/spec/jira/has_many_proxy_spec.rb +3 -3
  85. data/spec/jira/http_client_spec.rb +94 -27
  86. data/spec/jira/http_error_spec.rb +2 -2
  87. data/spec/jira/oauth_client_spec.rb +14 -8
  88. data/spec/jira/request_client_spec.rb +4 -4
  89. data/spec/jira/resource/agile_spec.rb +30 -30
  90. data/spec/jira/resource/attachment_spec.rb +170 -57
  91. data/spec/jira/resource/board_spec.rb +24 -23
  92. data/spec/jira/resource/createmeta_spec.rb +48 -48
  93. data/spec/jira/resource/field_spec.rb +44 -27
  94. data/spec/jira/resource/filter_spec.rb +4 -4
  95. data/spec/jira/resource/issue_picker_suggestions_spec.rb +17 -17
  96. data/spec/jira/resource/issue_spec.rb +49 -43
  97. data/spec/jira/resource/jira_picker_suggestions_issue_spec.rb +3 -3
  98. data/spec/jira/resource/project_factory_spec.rb +3 -2
  99. data/spec/jira/resource/project_spec.rb +14 -14
  100. data/spec/jira/resource/sprint_spec.rb +88 -9
  101. data/spec/jira/resource/status_spec.rb +21 -0
  102. data/spec/jira/resource/user_factory_spec.rb +5 -5
  103. data/spec/jira/resource/worklog_spec.rb +4 -4
  104. data/spec/mock_responses/sprint/1.json +13 -0
  105. data/spec/mock_responses/status/1.json +8 -1
  106. data/spec/mock_responses/status.json +40 -5
  107. data/spec/mock_responses/statuscategory/1.json +7 -0
  108. data/spec/mock_responses/statuscategory.json +30 -0
  109. data/spec/mock_responses/{user_username=admin.json → user_accountId=1234567890abcdef01234567.json} +2 -1
  110. data/spec/spec_helper.rb +1 -0
  111. data/spec/support/clients_helper.rb +3 -5
  112. data/spec/support/mock_client.rb +9 -0
  113. data/spec/support/mock_response.rb +8 -0
  114. data/spec/support/shared_examples/integration.rb +25 -28
  115. metadata +27 -260
  116. data/.travis.yml +0 -9
  117. data/example.rb +0 -232
  118. data/http-basic-example.rb +0 -113
  119. data/lib/jira/resource/sprint_report.rb +0 -8
  120. data/lib/jira/tasks.rb +0 -0
  121. data/spec/integration/webhook.rb +0 -25
  122. data/spec/jira/jwt_uri_builder_spec.rb +0 -59
@@ -0,0 +1,30 @@
1
+ [
2
+ {
3
+ "self": "http://localhost:2990/jira/rest/api/2/statuscategory/1",
4
+ "id": 1,
5
+ "key": "undefined",
6
+ "colorName": "medium-gray",
7
+ "name": "No Category"
8
+ },
9
+ {
10
+ "self": "http://localhost:2990/jira/rest/api/2/statuscategory/2",
11
+ "id": 2,
12
+ "key": "new",
13
+ "colorName": "blue-gray",
14
+ "name": "To Do"
15
+ },
16
+ {
17
+ "self": "http://localhost:2990/jira/rest/api/2/statuscategory/4",
18
+ "id": 4,
19
+ "key": "indeterminate",
20
+ "colorName": "yellow",
21
+ "name": "In Progress"
22
+ },
23
+ {
24
+ "self": "http://localhost:2990/jira/rest/api/2/statuscategory/3",
25
+ "id": 3,
26
+ "key": "done",
27
+ "colorName": "green",
28
+ "name": "Done"
29
+ }
30
+ ]
@@ -1,5 +1,6 @@
1
1
  {
2
- "self": "http://localhost:2990/jira/rest/api/2/user?username=admin",
2
+ "id": "1234567890abcdef01234567",
3
+ "self": "http://localhost:2990/jira/rest/api/2/user?accountId=1234567890abcdef01234567",
3
4
  "name": "admin",
4
5
  "emailAddress": "admin@example.com",
5
6
  "avatarUrls": {
data/spec/spec_helper.rb CHANGED
@@ -17,5 +17,6 @@ def get_mock_response(file, value_if_file_not_found = false)
17
17
  File.read(File.join(File.dirname(__FILE__), 'mock_responses/', file))
18
18
  rescue Errno::ENOENT => e
19
19
  raise e if value_if_file_not_found == false
20
+
20
21
  value_if_file_not_found
21
22
  end
@@ -1,5 +1,5 @@
1
1
  module ClientsHelper
2
- def with_each_client
2
+ def with_each_client(&)
3
3
  clients = {}
4
4
 
5
5
  oauth_client = JIRA::Client.new(consumer_key: 'foo', consumer_secret: 'bar')
@@ -7,10 +7,8 @@ module ClientsHelper
7
7
  clients['http://localhost:2990'] = oauth_client
8
8
 
9
9
  basic_client = JIRA::Client.new(username: 'foo', password: 'bar', auth_type: :basic, use_ssl: false)
10
- clients['http://foo:bar@localhost:2990'] = basic_client
10
+ clients['http://localhost:2990'] = basic_client
11
11
 
12
- clients.each do |site_url, client|
13
- yield site_url, client
14
- end
12
+ clients.each(&)
15
13
  end
16
14
  end
@@ -0,0 +1,9 @@
1
+ class Client
2
+ attr_reader :options
3
+
4
+ def initialize(options = {})
5
+ @options = options
6
+ end
7
+
8
+ def get(url) end
9
+ end
@@ -0,0 +1,8 @@
1
+ class Response
2
+ attr_reader :body, :status
3
+
4
+ def initialize(body, status = nil)
5
+ @body = body
6
+ @status = status
7
+ end
8
+ end
@@ -2,7 +2,7 @@ require 'cgi'
2
2
 
3
3
  def get_mock_from_path(method, options = {})
4
4
  prefix = if defined? belongs_to
5
- belongs_to.path_component + '/'
5
+ "#{belongs_to.path_component}/"
6
6
  else
7
7
  ''
8
8
  end
@@ -15,8 +15,8 @@ def get_mock_from_path(method, options = {})
15
15
  described_class.collection_path(client, prefix)
16
16
  end
17
17
  file_path = url.sub(client.options[:rest_base_path], '')
18
- file_path = file_path + '.' + options[:suffix] if options[:suffix]
19
- file_path = file_path + '.' + method.to_s unless method == :get
18
+ file_path = "#{file_path}.#{options[:suffix]}" if options[:suffix]
19
+ file_path = "#{file_path}.#{method}" unless method == :get
20
20
  value_if_not_found = options.key?(:value_if_not_found) ? options[:value_if_not_found] : false
21
21
  get_mock_response("#{file_path}.json", value_if_not_found)
22
22
  end
@@ -33,7 +33,7 @@ end
33
33
 
34
34
  def prefix
35
35
  prefix = '/'
36
- prefix = belongs_to.path_component + '/' if defined? belongs_to
36
+ prefix = "#{belongs_to.path_component}/" if defined? belongs_to
37
37
  prefix
38
38
  end
39
39
 
@@ -47,22 +47,22 @@ end
47
47
 
48
48
  shared_examples 'a resource' do
49
49
  it 'gracefully handles non-json responses' do
50
- if defined? target
51
- subject = target
52
- else
53
- subject = client.send(class_basename).build(described_class.key_attribute.to_s => '99999')
54
- end
50
+ subject = if defined? target
51
+ target
52
+ else
53
+ client.send(class_basename).build(described_class.key_attribute.to_s => '99999')
54
+ end
55
55
  stub_request(:put, site_url + subject.url)
56
56
  .to_return(status: 405, body: '<html><body>Some HTML</body></html>')
57
57
  expect(subject.save('foo' => 'bar')).to be_falsey
58
- expect(lambda do
58
+ expect do
59
59
  expect(subject.save!('foo' => 'bar')).to be_falsey
60
- end).to raise_error(JIRA::HTTPError)
60
+ end.to raise_error(JIRA::HTTPError)
61
61
  end
62
62
  end
63
63
 
64
64
  shared_examples 'a resource with a collection GET endpoint' do
65
- it 'should get the collection' do
65
+ it 'gets the collection' do
66
66
  stub_request(:get, site_url + described_class.collection_path(client))
67
67
  .to_return(status: 200, body: get_mock_from_path(:get))
68
68
  collection = build_receiver.all
@@ -73,13 +73,10 @@ shared_examples 'a resource with a collection GET endpoint' do
73
73
  end
74
74
 
75
75
  shared_examples 'a resource with JQL inputs and a collection GET endpoint' do
76
- it 'should get the collection' do
76
+ it 'gets the collection' do
77
77
  stub_request(
78
78
  :get,
79
- site_url +
80
- client.options[:rest_base_path] +
81
- '/search?jql=' +
82
- CGI.escape(jql_query_string)
79
+ "#{site_url}#{client.options[:rest_base_path]}/search?jql=#{CGI.escape(jql_query_string)}"
83
80
  ).to_return(status: 200, body: get_mock_response('issue.json'))
84
81
 
85
82
  collection = build_receiver.jql(jql_query_string)
@@ -94,7 +91,7 @@ shared_examples 'a resource with a singular GET endpoint' do
94
91
  # E.g., for JIRA::Resource::Project, we need to call
95
92
  # client.Project.find()
96
93
  stub_request(:get, site_url + described_class.singular_path(client, key, prefix))
97
- .to_return(status: 200, body: get_mock_from_path(:get, key: key))
94
+ .to_return(status: 200, body: get_mock_from_path(:get, key:))
98
95
  subject = client.send(class_basename).find(key, options)
99
96
 
100
97
  expect(subject).to have_attributes(expected_attributes)
@@ -104,7 +101,7 @@ shared_examples 'a resource with a singular GET endpoint' do
104
101
  # E.g., for JIRA::Resource::Project, we need to call
105
102
  # client.Project.build('key' => 'ABC123')
106
103
  stub_request(:get, site_url + described_class.singular_path(client, key, prefix))
107
- .to_return(status: 200, body: get_mock_from_path(:get, key: key))
104
+ .to_return(status: 200, body: get_mock_from_path(:get, key:))
108
105
 
109
106
  subject = build_receiver.build(described_class.key_attribute.to_s => key)
110
107
  subject.fetch
@@ -114,10 +111,10 @@ shared_examples 'a resource with a singular GET endpoint' do
114
111
 
115
112
  it 'handles a 404' do
116
113
  stub_request(:get, site_url + described_class.singular_path(client, '99999', prefix))
117
- .to_return(status: 404, body: '{"errorMessages":["' + class_basename + ' Does Not Exist"],"errors": {}}')
118
- expect(lambda do
114
+ .to_return(status: 404, body: "{\"errorMessages\":[\"#{class_basename} Does Not Exist\"],\"errors\": {}}")
115
+ expect do
119
116
  client.send(class_basename).find('99999', options)
120
- end).to raise_exception(JIRA::HTTPError)
117
+ end.to raise_exception(JIRA::HTTPError)
121
118
  end
122
119
  end
123
120
 
@@ -148,9 +145,9 @@ end
148
145
  shared_examples 'a resource with a PUT endpoint' do
149
146
  it 'saves an existing component' do
150
147
  stub_request(:get, site_url + described_class.singular_path(client, key, prefix))
151
- .to_return(status: 200, body: get_mock_from_path(:get, key: key))
148
+ .to_return(status: 200, body: get_mock_from_path(:get, key:))
152
149
  stub_request(:put, site_url + described_class.singular_path(client, key, prefix))
153
- .to_return(status: 200, body: get_mock_from_path(:put, key: key, value_if_not_found: nil))
150
+ .to_return(status: 200, body: get_mock_from_path(:put, key:, value_if_not_found: nil))
154
151
  subject = build_receiver.build(described_class.key_attribute.to_s => key)
155
152
  subject.fetch
156
153
  expect(subject.save(attributes_for_put)).to be_truthy
@@ -163,15 +160,15 @@ end
163
160
  shared_examples 'a resource with a PUT endpoint that rejects invalid fields' do
164
161
  it 'fails to save with an invalid field' do
165
162
  stub_request(:get, site_url + described_class.singular_path(client, key))
166
- .to_return(status: 200, body: get_mock_from_path(:get, key: key))
163
+ .to_return(status: 200, body: get_mock_from_path(:get, key:))
167
164
  stub_request(:put, site_url + described_class.singular_path(client, key))
168
- .to_return(status: 400, body: get_mock_from_path(:put, key: key, suffix: 'invalid'))
165
+ .to_return(status: 400, body: get_mock_from_path(:put, key:, suffix: 'invalid'))
169
166
  subject = client.send(class_basename).build(described_class.key_attribute.to_s => key)
170
167
  subject.fetch
171
168
 
172
169
  expect(subject.save('fields' => { 'invalid' => 'field' })).to be_falsey
173
- expect(lambda do
170
+ expect do
174
171
  subject.save!('fields' => { 'invalid' => 'field' })
175
- end).to raise_error(JIRA::HTTPError)
172
+ end.to raise_error(JIRA::HTTPError)
176
173
  end
177
174
  end
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jira-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 3.0.0.beta2
5
5
  platform: ruby
6
6
  authors:
7
7
  - SUMO Heavy Industries
8
8
  - test IO
9
- autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2023-01-23 00:00:00.000000000 Z
11
+ date: 2025-03-11 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: activesupport
@@ -59,169 +58,33 @@ dependencies:
59
58
  requirements:
60
59
  - - "~>"
61
60
  - !ruby/object:Gem::Version
62
- version: '0.5'
63
- - - ">="
64
- - !ruby/object:Gem::Version
65
- version: 0.5.0
61
+ version: '1.0'
66
62
  type: :runtime
67
63
  prerelease: false
68
64
  version_requirements: !ruby/object:Gem::Requirement
69
65
  requirements:
70
66
  - - "~>"
71
67
  - !ruby/object:Gem::Version
72
- version: '0.5'
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: 0.5.0
76
- - !ruby/object:Gem::Dependency
77
- name: guard
78
- requirement: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '2.13'
83
- - - ">="
84
- - !ruby/object:Gem::Version
85
- version: 2.13.0
86
- type: :development
87
- prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- requirements:
90
- - - "~>"
91
- - !ruby/object:Gem::Version
92
- version: '2.13'
93
- - - ">="
94
- - !ruby/object:Gem::Version
95
- version: 2.13.0
96
- - !ruby/object:Gem::Dependency
97
- name: guard-rspec
98
- requirement: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: '4.6'
103
- - - ">="
104
- - !ruby/object:Gem::Version
105
- version: 4.6.5
106
- type: :development
107
- prerelease: false
108
- version_requirements: !ruby/object:Gem::Requirement
109
- requirements:
110
- - - "~>"
111
- - !ruby/object:Gem::Version
112
- version: '4.6'
113
- - - ">="
114
- - !ruby/object:Gem::Version
115
- version: 4.6.5
116
- - !ruby/object:Gem::Dependency
117
- name: pry
118
- requirement: !ruby/object:Gem::Requirement
119
- requirements:
120
- - - "~>"
121
- - !ruby/object:Gem::Version
122
- version: '0.10'
123
- - - ">="
124
- - !ruby/object:Gem::Version
125
- version: 0.10.3
126
- type: :development
127
- prerelease: false
128
- version_requirements: !ruby/object:Gem::Requirement
129
- requirements:
130
- - - "~>"
131
- - !ruby/object:Gem::Version
132
- version: '0.10'
133
- - - ">="
134
- - !ruby/object:Gem::Version
135
- version: 0.10.3
136
- - !ruby/object:Gem::Dependency
137
- name: railties
138
- requirement: !ruby/object:Gem::Requirement
139
- requirements:
140
- - - ">="
141
- - !ruby/object:Gem::Version
142
- version: '0'
143
- type: :development
144
- prerelease: false
145
- version_requirements: !ruby/object:Gem::Requirement
146
- requirements:
147
- - - ">="
148
- - !ruby/object:Gem::Version
149
- version: '0'
150
- - !ruby/object:Gem::Dependency
151
- name: rake
152
- requirement: !ruby/object:Gem::Requirement
153
- requirements:
154
- - - "~>"
155
- - !ruby/object:Gem::Version
156
- version: '10.3'
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: 10.3.2
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - "~>"
165
- - !ruby/object:Gem::Version
166
- version: '10.3'
167
- - - ">="
168
- - !ruby/object:Gem::Version
169
- version: 10.3.2
170
- - !ruby/object:Gem::Dependency
171
- name: rspec
172
- requirement: !ruby/object:Gem::Requirement
173
- requirements:
174
- - - "~>"
175
- - !ruby/object:Gem::Version
176
- version: '3.0'
177
- - - ">="
178
- - !ruby/object:Gem::Version
179
- version: 3.0.0
180
- type: :development
181
- prerelease: false
182
- version_requirements: !ruby/object:Gem::Requirement
183
- requirements:
184
- - - "~>"
185
- - !ruby/object:Gem::Version
186
- version: '3.0'
187
- - - ">="
188
- - !ruby/object:Gem::Version
189
- version: 3.0.0
190
- - !ruby/object:Gem::Dependency
191
- name: webmock
192
- requirement: !ruby/object:Gem::Requirement
193
- requirements:
194
- - - "~>"
195
- - !ruby/object:Gem::Version
196
- version: '1.18'
197
- - - ">="
198
- - !ruby/object:Gem::Version
199
- version: 1.18.0
200
- type: :development
201
- prerelease: false
202
- version_requirements: !ruby/object:Gem::Requirement
203
- requirements:
204
- - - "~>"
205
- - !ruby/object:Gem::Version
206
- version: '1.18'
207
- - - ">="
208
- - !ruby/object:Gem::Version
209
- version: 1.18.0
68
+ version: '1.0'
210
69
  description: API for JIRA
211
- email:
212
70
  executables: []
213
71
  extensions: []
214
72
  extra_rdoc_files: []
215
73
  files:
74
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
75
+ - ".github/ISSUE_TEMPLATE/feature_request.md"
76
+ - ".github/dependabot.yml"
77
+ - ".github/workflows/CI.yml"
78
+ - ".github/workflows/codeql.yml"
79
+ - ".github/workflows/rubocop.yml"
216
80
  - ".gitignore"
217
- - ".travis.yml"
81
+ - ".rubocop.yml"
82
+ - ".yardopts"
218
83
  - Gemfile
219
84
  - Guardfile
220
85
  - LICENSE
221
86
  - README.md
222
87
  - Rakefile
223
- - example.rb
224
- - http-basic-example.rb
225
88
  - jira-ruby.gemspec
226
89
  - lib/jira-ruby.rb
227
90
  - lib/jira/base.rb
@@ -257,8 +120,8 @@ files:
257
120
  - lib/jira/resource/resolution.rb
258
121
  - lib/jira/resource/serverinfo.rb
259
122
  - lib/jira/resource/sprint.rb
260
- - lib/jira/resource/sprint_report.rb
261
123
  - lib/jira/resource/status.rb
124
+ - lib/jira/resource/status_category.rb
262
125
  - lib/jira/resource/suggested_issue.rb
263
126
  - lib/jira/resource/transition.rb
264
127
  - lib/jira/resource/user.rb
@@ -266,9 +129,9 @@ files:
266
129
  - lib/jira/resource/watcher.rb
267
130
  - lib/jira/resource/webhook.rb
268
131
  - lib/jira/resource/worklog.rb
269
- - lib/jira/tasks.rb
270
132
  - lib/jira/version.rb
271
133
  - lib/tasks/generate.rake
134
+ - spec/data/files/short.txt
272
135
  - spec/integration/attachment_spec.rb
273
136
  - spec/integration/comment_spec.rb
274
137
  - spec/integration/component_spec.rb
@@ -280,12 +143,13 @@ files:
280
143
  - spec/integration/project_spec.rb
281
144
  - spec/integration/rapidview_spec.rb
282
145
  - spec/integration/resolution_spec.rb
146
+ - spec/integration/status_category_spec.rb
283
147
  - spec/integration/status_spec.rb
284
148
  - spec/integration/transition_spec.rb
285
149
  - spec/integration/user_spec.rb
286
150
  - spec/integration/version_spec.rb
287
151
  - spec/integration/watcher_spec.rb
288
- - spec/integration/webhook.rb
152
+ - spec/integration/webhook_spec.rb
289
153
  - spec/integration/worklog_spec.rb
290
154
  - spec/jira/base_factory_spec.rb
291
155
  - spec/jira/base_spec.rb
@@ -293,7 +157,6 @@ files:
293
157
  - spec/jira/has_many_proxy_spec.rb
294
158
  - spec/jira/http_client_spec.rb
295
159
  - spec/jira/http_error_spec.rb
296
- - spec/jira/jwt_uri_builder_spec.rb
297
160
  - spec/jira/oauth_client_spec.rb
298
161
  - spec/jira/request_client_spec.rb
299
162
  - spec/jira/resource/agile_spec.rb
@@ -309,6 +172,7 @@ files:
309
172
  - spec/jira/resource/project_factory_spec.rb
310
173
  - spec/jira/resource/project_spec.rb
311
174
  - spec/jira/resource/sprint_spec.rb
175
+ - spec/jira/resource/status_spec.rb
312
176
  - spec/jira/resource/user_factory_spec.rb
313
177
  - spec/jira/resource/worklog_spec.rb
314
178
  - spec/mock_responses/board/1.json
@@ -354,10 +218,13 @@ files:
354
218
  - spec/mock_responses/rapidview/SAMPLEPROJECT.json
355
219
  - spec/mock_responses/resolution.json
356
220
  - spec/mock_responses/resolution/1.json
221
+ - spec/mock_responses/sprint/1.json
357
222
  - spec/mock_responses/sprint/1_issues.json
358
223
  - spec/mock_responses/status.json
359
224
  - spec/mock_responses/status/1.json
360
- - spec/mock_responses/user_username=admin.json
225
+ - spec/mock_responses/statuscategory.json
226
+ - spec/mock_responses/statuscategory/1.json
227
+ - spec/mock_responses/user_accountId=1234567890abcdef01234567.json
361
228
  - spec/mock_responses/version.post.json
362
229
  - spec/mock_responses/version/10000.invalid.put.json
363
230
  - spec/mock_responses/version/10000.json
@@ -369,13 +236,15 @@ files:
369
236
  - spec/support/matchers/have_attributes.rb
370
237
  - spec/support/matchers/have_many.rb
371
238
  - spec/support/matchers/have_one.rb
239
+ - spec/support/mock_client.rb
240
+ - spec/support/mock_response.rb
372
241
  - spec/support/shared_examples/integration.rb
373
242
  homepage: http://www.sumoheavy.com
374
243
  licenses:
375
244
  - MIT
376
245
  metadata:
377
246
  source_code_uri: https://github.com/sumoheavy/jira-ruby
378
- post_install_message:
247
+ rubygems_mfa_required: 'true'
379
248
  rdoc_options: []
380
249
  require_paths:
381
250
  - lib
@@ -383,116 +252,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
383
252
  requirements:
384
253
  - - ">="
385
254
  - !ruby/object:Gem::Version
386
- version: 1.9.3
255
+ version: 3.1.0
387
256
  required_rubygems_version: !ruby/object:Gem::Requirement
388
257
  requirements:
389
258
  - - ">="
390
259
  - !ruby/object:Gem::Version
391
260
  version: '0'
392
261
  requirements: []
393
- rubygems_version: 3.3.7
394
- signing_key:
262
+ rubygems_version: 3.6.2
395
263
  specification_version: 4
396
264
  summary: Ruby Gem for use with the Atlassian JIRA REST API
397
- test_files:
398
- - spec/integration/attachment_spec.rb
399
- - spec/integration/comment_spec.rb
400
- - spec/integration/component_spec.rb
401
- - spec/integration/field_spec.rb
402
- - spec/integration/issue_spec.rb
403
- - spec/integration/issuelinktype_spec.rb
404
- - spec/integration/issuetype_spec.rb
405
- - spec/integration/priority_spec.rb
406
- - spec/integration/project_spec.rb
407
- - spec/integration/rapidview_spec.rb
408
- - spec/integration/resolution_spec.rb
409
- - spec/integration/status_spec.rb
410
- - spec/integration/transition_spec.rb
411
- - spec/integration/user_spec.rb
412
- - spec/integration/version_spec.rb
413
- - spec/integration/watcher_spec.rb
414
- - spec/integration/webhook.rb
415
- - spec/integration/worklog_spec.rb
416
- - spec/jira/base_factory_spec.rb
417
- - spec/jira/base_spec.rb
418
- - spec/jira/client_spec.rb
419
- - spec/jira/has_many_proxy_spec.rb
420
- - spec/jira/http_client_spec.rb
421
- - spec/jira/http_error_spec.rb
422
- - spec/jira/jwt_uri_builder_spec.rb
423
- - spec/jira/oauth_client_spec.rb
424
- - spec/jira/request_client_spec.rb
425
- - spec/jira/resource/agile_spec.rb
426
- - spec/jira/resource/attachment_spec.rb
427
- - spec/jira/resource/board_spec.rb
428
- - spec/jira/resource/createmeta_spec.rb
429
- - spec/jira/resource/field_spec.rb
430
- - spec/jira/resource/filter_spec.rb
431
- - spec/jira/resource/issue_picker_suggestions_spec.rb
432
- - spec/jira/resource/issue_spec.rb
433
- - spec/jira/resource/issuelink_spec.rb
434
- - spec/jira/resource/jira_picker_suggestions_issue_spec.rb
435
- - spec/jira/resource/project_factory_spec.rb
436
- - spec/jira/resource/project_spec.rb
437
- - spec/jira/resource/sprint_spec.rb
438
- - spec/jira/resource/user_factory_spec.rb
439
- - spec/jira/resource/worklog_spec.rb
440
- - spec/mock_responses/board/1.json
441
- - spec/mock_responses/board/1_issues.json
442
- - spec/mock_responses/component.post.json
443
- - spec/mock_responses/component/10000.invalid.put.json
444
- - spec/mock_responses/component/10000.json
445
- - spec/mock_responses/component/10000.put.json
446
- - spec/mock_responses/empty_issues.json
447
- - spec/mock_responses/field.json
448
- - spec/mock_responses/field/1.json
449
- - spec/mock_responses/issue.json
450
- - spec/mock_responses/issue.post.json
451
- - spec/mock_responses/issue/10002.invalid.put.json
452
- - spec/mock_responses/issue/10002.json
453
- - spec/mock_responses/issue/10002.put.missing_field_update.json
454
- - spec/mock_responses/issue/10002/attachments/10000.json
455
- - spec/mock_responses/issue/10002/comment.json
456
- - spec/mock_responses/issue/10002/comment.post.json
457
- - spec/mock_responses/issue/10002/comment/10000.json
458
- - spec/mock_responses/issue/10002/comment/10000.put.json
459
- - spec/mock_responses/issue/10002/transitions.json
460
- - spec/mock_responses/issue/10002/transitions.post.json
461
- - spec/mock_responses/issue/10002/watchers.json
462
- - spec/mock_responses/issue/10002/worklog.json
463
- - spec/mock_responses/issue/10002/worklog.post.json
464
- - spec/mock_responses/issue/10002/worklog/10000.json
465
- - spec/mock_responses/issue/10002/worklog/10000.put.json
466
- - spec/mock_responses/issueLinkType.json
467
- - spec/mock_responses/issueLinkType/10000.json
468
- - spec/mock_responses/issuetype.json
469
- - spec/mock_responses/issuetype/5.json
470
- - spec/mock_responses/jira/rest/webhooks/1.0/webhook.json
471
- - spec/mock_responses/jira/rest/webhooks/1.0/webhook/2.json
472
- - spec/mock_responses/priority.json
473
- - spec/mock_responses/priority/1.json
474
- - spec/mock_responses/project.json
475
- - spec/mock_responses/project/SAMPLEPROJECT.issues.json
476
- - spec/mock_responses/project/SAMPLEPROJECT.json
477
- - spec/mock_responses/rapidview.json
478
- - spec/mock_responses/rapidview/SAMPLEPROJECT.issues.full.json
479
- - spec/mock_responses/rapidview/SAMPLEPROJECT.issues.json
480
- - spec/mock_responses/rapidview/SAMPLEPROJECT.json
481
- - spec/mock_responses/resolution.json
482
- - spec/mock_responses/resolution/1.json
483
- - spec/mock_responses/sprint/1_issues.json
484
- - spec/mock_responses/status.json
485
- - spec/mock_responses/status/1.json
486
- - spec/mock_responses/user_username=admin.json
487
- - spec/mock_responses/version.post.json
488
- - spec/mock_responses/version/10000.invalid.put.json
489
- - spec/mock_responses/version/10000.json
490
- - spec/mock_responses/version/10000.put.json
491
- - spec/mock_responses/webhook.json
492
- - spec/mock_responses/webhook/webhook.json
493
- - spec/spec_helper.rb
494
- - spec/support/clients_helper.rb
495
- - spec/support/matchers/have_attributes.rb
496
- - spec/support/matchers/have_many.rb
497
- - spec/support/matchers/have_one.rb
498
- - spec/support/shared_examples/integration.rb
265
+ test_files: []
data/.travis.yml DELETED
@@ -1,9 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 2.4
4
- - 2.5
5
- - 2.6
6
- - 2.7
7
- before_script:
8
- - rake jira:generate_public_cert
9
- script: bundle exec rake spec