hammer_cli_katello 0.3.0 → 0.10.0

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 (64) hide show
  1. checksums.yaml +4 -4
  2. data/lib/hammer_cli_katello.rb +0 -1
  3. data/lib/hammer_cli_katello/activation_key.rb +12 -29
  4. data/lib/hammer_cli_katello/composite_content_view_name_resolvable.rb +6 -8
  5. data/lib/hammer_cli_katello/content_override.rb +48 -0
  6. data/lib/hammer_cli_katello/content_view.rb +98 -5
  7. data/lib/hammer_cli_katello/content_view_name_resolvable.rb +4 -6
  8. data/lib/hammer_cli_katello/content_view_purge.rb +92 -0
  9. data/lib/hammer_cli_katello/content_view_version.rb +13 -0
  10. data/lib/hammer_cli_katello/erratum.rb +9 -0
  11. data/lib/hammer_cli_katello/filter_rule.rb +3 -4
  12. data/lib/hammer_cli_katello/host_collection.rb +8 -2
  13. data/lib/hammer_cli_katello/host_errata.rb +1 -1
  14. data/lib/hammer_cli_katello/host_subscription.rb +25 -0
  15. data/lib/hammer_cli_katello/hostgroup_extensions.rb +7 -6
  16. data/lib/hammer_cli_katello/id_resolver.rb +13 -4
  17. data/lib/hammer_cli_katello/katello_environment_name_resolvable.rb +4 -6
  18. data/lib/hammer_cli_katello/lifecycle_environment_name_resolvable.rb +4 -6
  19. data/lib/hammer_cli_katello/organization.rb +1 -0
  20. data/lib/hammer_cli_katello/package.rb +16 -3
  21. data/lib/hammer_cli_katello/package_group.rb +16 -2
  22. data/lib/hammer_cli_katello/product_content.rb +36 -0
  23. data/lib/hammer_cli_katello/repository.rb +48 -7
  24. data/lib/hammer_cli_katello/version.rb +1 -1
  25. data/test/data/3.4/foreman_api.json +1 -0
  26. data/test/functional/{activaton_key → activation_key}/add_host_collection_test.rb +0 -0
  27. data/test/functional/activation_key/content_override_test.rb +91 -0
  28. data/test/functional/{activaton_key → activation_key}/create_test.rb +0 -0
  29. data/test/functional/{activaton_key → activation_key}/list_test.rb +0 -0
  30. data/test/functional/{activaton_key → activation_key}/product_content_test.rb +0 -0
  31. data/test/functional/{activaton_key → activation_key}/remove_host_collection_test.rb +0 -0
  32. data/test/functional/{activaton_key → activation_key}/subscriptions_test.rb +0 -0
  33. data/test/functional/{activaton_key → activation_key}/update_test.rb +0 -0
  34. data/test/functional/content_view/add_content_view_version_test.rb +57 -3
  35. data/test/functional/content_view/add_repository_test.rb +1 -0
  36. data/test/functional/content_view/copy_test.rb +53 -0
  37. data/test/functional/content_view/delete_test.rb +62 -0
  38. data/test/functional/content_view/publish_test.rb +1 -0
  39. data/test/functional/content_view/puppet_module/add_test.rb +1 -0
  40. data/test/functional/content_view/purge_test.rb +72 -0
  41. data/test/functional/content_view/remove_content_view_version_test.rb +57 -3
  42. data/test/functional/content_view/remove_test.rb +78 -0
  43. data/test/functional/content_view/update_test.rb +53 -0
  44. data/test/functional/content_view/version/republish_repositories_test.rb +35 -0
  45. data/test/functional/erratum/list_test.rb +108 -0
  46. data/test/functional/host/subscription/content_override_test.rb +95 -0
  47. data/test/functional/host/subscription/product_content_test.rb +27 -0
  48. data/test/functional/host_collection/content_api_expectations.rb +35 -0
  49. data/test/functional/host_collection/content_install_test.rb +42 -17
  50. data/test/functional/host_collection/content_remove_test.rb +22 -12
  51. data/test/functional/host_collection/content_update_test.rb +22 -12
  52. data/test/functional/hostgroup/create_test.rb +6 -0
  53. data/test/functional/hostgroup/data/hostgroup.json +2 -2
  54. data/test/functional/hostgroup/info_test.rb +2 -1
  55. data/test/functional/hostgroup/update_test.rb +12 -0
  56. data/test/functional/package/list_test.rb +89 -18
  57. data/test/functional/package_group/list_test.rb +33 -0
  58. data/test/functional/repository/export_test.rb +121 -0
  59. data/test/functional/repository/remove_content_test.rb +98 -8
  60. data/test/functional/repository/update_test.rb +108 -0
  61. data/test/functional/repository/upload_test.rb +73 -3
  62. data/test/test_helper.rb +1 -1
  63. data/test/unit/id_resolver_test.rb +26 -0
  64. metadata +54 -21
@@ -1,18 +1,108 @@
1
1
  require_relative '../test_helper'
2
+ require_relative '../organization/organization_helpers'
2
3
  require 'hammer_cli_katello/repository'
3
4
 
4
5
  module HammerCLIKatello
5
6
  describe Repository::RemoveContentCommand do
6
- it 'allows minimal parameters' do
7
- api_expects(:repositories, :remove_content) { |p| p['id'] == '1' && p['ids'] == %w(1) }
8
- run_cmd(%w(repository remove-content --ids 1 --id 1))
7
+ include OrganizationHelpers
8
+
9
+ it 'allows minimal options' do
10
+ api_expects(:repositories, :remove_content) do |p|
11
+ p['id'] == '1' && p['ids'] == %w(20 21 22)
12
+ end
13
+
14
+ run_cmd(%w(repository remove-content --id 1 --ids 20,21,22))
9
15
  end
10
16
 
11
- it 'resolves repository id' do
12
- api_expects(:repositories, :index) { |p| p['name'] == 'repo1' }
13
- .returns(index_response([{'id' => '1'}]))
14
- api_expects(:repositories, :remove_content) { |p| p['id'] == '1' && p['ids'] == %w(1) }
15
- run_cmd(%w(repository remove-content --ids 1 --name repo1))
17
+ describe 'resolves repository ID' do
18
+ it 'by requiring product' do
19
+ api_expects_no_call
20
+ result = run_cmd(%w(repository remove-content --name repo1 --ids 20,21,22))
21
+ assert(result.err[/--product, --product-id is required/], 'Incorrect error message')
22
+ end
23
+
24
+ it 'by product ID' do
25
+ ex = api_expects(:repositories, :index) do |p|
26
+ p['name'] == 'repo1' && p['product_id'] == 3
27
+ end
28
+ ex.returns(index_response([{'id' => 1}]))
29
+
30
+ api_expects(:repositories, :remove_content) do |p|
31
+ p['id'] == 1 && p['ids'] == %w(20 21 22)
32
+ end
33
+
34
+ run_cmd(%w(repository remove-content --name repo1 --product-id 3 --ids 20,21,22))
35
+ end
36
+ end
37
+
38
+ describe 'resolves product ID' do
39
+ it 'by requiring organization options' do
40
+ api_expects_no_call
41
+ result = run_cmd(%w(repository remove-content --name repo1 --product prod1 --ids 20,21,22))
42
+ assert(result.err[/--organization-id, --organization, --organization-label is required/],
43
+ "Organization option requirements must be validated")
44
+ end
45
+
46
+ it 'by organization ID' do
47
+ ex = api_expects(:products, :index) do |p|
48
+ p['name'] == 'prod3' && p['organization_id'] == '5'
49
+ end
50
+ ex.returns(index_response([{'id' => 3}]))
51
+
52
+ ex = api_expects(:repositories, :index) do |p|
53
+ p['name'] == 'repo1' && p['product_id'] == 3
54
+ end
55
+ ex.returns(index_response([{'id' => 1}]))
56
+
57
+ api_expects(:repositories, :remove_content) do |p|
58
+ p['id'] == 1 && p['ids'] == %w(20 21 22)
59
+ end
60
+
61
+ run_cmd(%w(repository remove-content --name repo1 --product prod3 --organization-id 5
62
+ --ids 20,21,22))
63
+ end
64
+
65
+ it 'by organization name' do
66
+ expect_organization_search('org5', 5)
67
+
68
+ ex = api_expects(:products, :index) do |p|
69
+ p['name'] == 'prod3' && p['organization_id'] == 5
70
+ end
71
+ ex.returns(index_response([{'id' => 3}]))
72
+
73
+ ex = api_expects(:repositories, :index) do |p|
74
+ p['name'] == 'repo1' && p['product_id'] == 3
75
+ end
76
+ ex.returns(index_response([{'id' => 1}]))
77
+
78
+ api_expects(:repositories, :remove_content) do |p|
79
+ p['id'] == 1 && p['ids'] == %w(20 21 22)
80
+ end
81
+
82
+ run_cmd(%w(repository remove-content --name repo1 --product prod3 --organization org5
83
+ --ids 20,21,22))
84
+ end
85
+
86
+ it 'by organization label' do
87
+ expect_organization_search('org5', 5, field: 'label')
88
+
89
+ ex = api_expects(:products, :index) do |p|
90
+ p['name'] == 'prod3' && p['organization_id'] == 5
91
+ end
92
+ ex.returns(index_response([{'id' => 3}]))
93
+
94
+ ex = api_expects(:repositories, :index) do |p|
95
+ p['name'] == 'repo1' && p['product_id'] == 3
96
+ end
97
+ ex.returns(index_response([{'id' => 1}]))
98
+
99
+ api_expects(:repositories, :remove_content) do |p|
100
+ p['id'] == 1 && p['ids'] == %w(20 21 22)
101
+ end
102
+
103
+ run_cmd(%w(repository remove-content --name repo1 --product prod3 --organization-label org5
104
+ --ids 20,21,22))
105
+ end
16
106
  end
17
107
  end
18
108
  end
@@ -0,0 +1,108 @@
1
+ require_relative '../test_helper'
2
+ require_relative '../organization/organization_helpers'
3
+ require 'hammer_cli_katello/repository'
4
+
5
+ module HammerCLIKatello
6
+ describe Repository::UpdateCommand do
7
+ include OrganizationHelpers
8
+
9
+ it 'allows minimal options' do
10
+ api_expects(:repositories, :update) do |p|
11
+ p['id'] == '1' && p['name'] == 'rep1'
12
+ end
13
+
14
+ run_cmd(%w(repository update --id 1 --new-name rep1))
15
+ end
16
+
17
+ describe 'resolves repository ID' do
18
+ it 'by requiring product' do
19
+ api_expects_no_call
20
+ result = run_cmd(%w(repository update --name repo1 --new-name rep1))
21
+ assert(result.err[/--product, --product-id is required/], 'Incorrect error message')
22
+ end
23
+
24
+ it 'by product ID' do
25
+ ex = api_expects(:repositories, :index) do |p|
26
+ p['name'] == 'repo1' && p['product_id'] == 3
27
+ end
28
+ ex.returns(index_response([{'id' => 1}]))
29
+
30
+ api_expects(:repositories, :update) do |p|
31
+ p['id'] == 1 && p['name'] == 'rep1'
32
+ end
33
+
34
+ run_cmd(%w(repository update --name repo1 --product-id 3 --new-name rep1))
35
+ end
36
+ end
37
+
38
+ describe 'resolves product ID' do
39
+ it 'by requiring organization options' do
40
+ api_expects_no_call
41
+ result = run_cmd(%w(repository update --name repo1 --product prod1 --new-name rep1))
42
+ assert(result.err[/--organization-id, --organization, --organization-label is required/],
43
+ "Organization option requirements must be validated")
44
+ end
45
+
46
+ it 'by organization ID' do
47
+ ex = api_expects(:products, :index) do |p|
48
+ p['name'] == 'prod3' && p['organization_id'] == '5'
49
+ end
50
+ ex.returns(index_response([{'id' => 3}]))
51
+
52
+ ex = api_expects(:repositories, :index) do |p|
53
+ p['name'] == 'repo1' && p['product_id'] == 3
54
+ end
55
+ ex.returns(index_response([{'id' => 1}]))
56
+
57
+ api_expects(:repositories, :update) do |p|
58
+ p['id'] == 1 && p['name'] == 'rep1'
59
+ end
60
+
61
+ run_cmd(%w(repository update --name repo1 --product prod3 --organization-id 5
62
+ --new-name rep1))
63
+ end
64
+
65
+ it 'by organization name' do
66
+ expect_organization_search('org5', 5)
67
+
68
+ ex = api_expects(:products, :index) do |p|
69
+ p['name'] == 'prod3' && p['organization_id'] == 5
70
+ end
71
+ ex.returns(index_response([{'id' => 3}]))
72
+
73
+ ex = api_expects(:repositories, :index) do |p|
74
+ p['name'] == 'repo1' && p['product_id'] == 3
75
+ end
76
+ ex.returns(index_response([{'id' => 1}]))
77
+
78
+ api_expects(:repositories, :update) do |p|
79
+ p['id'] == 1 && p['name'] == 'rep1'
80
+ end
81
+
82
+ run_cmd(%w(repository update --name repo1 --product prod3 --organization org5
83
+ --new-name rep1))
84
+ end
85
+
86
+ it 'by organization label' do
87
+ expect_organization_search('org5', 5, field: 'label')
88
+
89
+ ex = api_expects(:products, :index) do |p|
90
+ p['name'] == 'prod3' && p['organization_id'] == 5
91
+ end
92
+ ex.returns(index_response([{'id' => 3}]))
93
+
94
+ ex = api_expects(:repositories, :index) do |p|
95
+ p['name'] == 'repo1' && p['product_id'] == 3
96
+ end
97
+ ex.returns(index_response([{'id' => 1}]))
98
+
99
+ api_expects(:repositories, :update) do |p|
100
+ p['id'] == 1 && p['name'] == 'rep1'
101
+ end
102
+
103
+ run_cmd(%w(repository update --name repo1 --product prod3 --organization-label org5
104
+ --new-name rep1))
105
+ end
106
+ end
107
+ end
108
+ end
@@ -5,6 +5,7 @@ require File.join(File.dirname(__FILE__), './repository_helpers')
5
5
  describe 'upload repository' do
6
6
  include ProductHelpers
7
7
  include RepositoryHelpers
8
+ include ForemanTaskHelpers
8
9
 
9
10
  before do
10
11
  @cmd = %w(repository upload-content)
@@ -41,7 +42,8 @@ describe 'upload repository' do
41
42
  :size => 0,
42
43
  :checksum => 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
43
44
  }
44
- par[:id] == repo_id.to_s && par[:uploads] == [upload]
45
+ par[:id] == repo_id.to_s && par[:uploads] == [upload] && par[:sync_capsule] == true &&
46
+ par[:publish_repository] == true
45
47
  end
46
48
 
47
49
  ex2.returns("")
@@ -80,7 +82,8 @@ describe 'upload repository' do
80
82
  :size => 0,
81
83
  :checksum => 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
82
84
  }
83
- par[:id] == repo_id && par[:uploads] == [upload]
85
+ par[:id] == repo_id && par[:uploads] == [upload] && par[:sync_capsule] == true &&
86
+ par[:publish_repository] == true
84
87
  end
85
88
 
86
89
  ex2.returns("")
@@ -114,7 +117,8 @@ describe 'upload repository' do
114
117
  :size => 0,
115
118
  :checksum => 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
116
119
  }
117
- par[:id] == repo_id.to_s && par[:uploads] == [upload]
120
+ par[:id] == repo_id.to_s && par[:uploads] == [upload] && par[:sync_capsule] == true &&
121
+ par[:publish_repository] == true
118
122
  end
119
123
 
120
124
  ex2.returns("")
@@ -130,6 +134,72 @@ describe 'upload repository' do
130
134
  File.delete("test.rpm")
131
135
  end
132
136
 
137
+ it "only syncs the capsule on the last file import" do
138
+ File.new("test1.rpm", "w")
139
+ File.new("test2.rpm", "w")
140
+
141
+ params = ["--id=#{repo_id}", "--path=test*.rpm"]
142
+
143
+ # Begin first upload cycle
144
+
145
+ ex = api_expects(:content_uploads, :create, "Create upload for content") do |par|
146
+ par[:repository_id] == repo_id.to_s
147
+ end
148
+
149
+ ex.returns(upload_response)
150
+
151
+ ex = api_expects(:repositories, :import_uploads, 'Take in an upload') do |par|
152
+ upload = {
153
+ :id => '1234',
154
+ :name => 'test1.rpm',
155
+ :size => 0,
156
+ :checksum => 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
157
+ }
158
+ par[:id] == repo_id.to_s && par[:uploads] == [upload] && par[:sync_capsule] == false &&
159
+ par[:publish_repository] == false
160
+ end
161
+
162
+ ex.returns("")
163
+
164
+ ex = api_expects(:content_uploads, :destroy, "Delete the upload") do |par|
165
+ par[:id] == upload_id && par[:repository_id] == repo_id.to_s
166
+ end
167
+
168
+ ex.returns("")
169
+
170
+ # Begin second upload cycle
171
+
172
+ ex = api_expects(:content_uploads, :create, "Create upload for content") do |par|
173
+ par[:repository_id] == repo_id.to_s
174
+ end
175
+
176
+ ex.returns(upload_response)
177
+
178
+ ex = api_expects(:repositories, :import_uploads, 'Take in an upload') do |par|
179
+ upload = {
180
+ :id => '1234',
181
+ :name => 'test2.rpm',
182
+ :size => 0,
183
+ :checksum => 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
184
+ }
185
+ par[:id] == repo_id.to_s && par[:uploads] == [upload] && par[:sync_capsule] == true &&
186
+ par[:publish_repository] == true
187
+ end
188
+
189
+ ex.returns("")
190
+
191
+ ex = api_expects(:content_uploads, :destroy, "Delete the upload") do |par|
192
+ par[:id] == upload_id && par[:repository_id] == repo_id.to_s
193
+ end
194
+
195
+ ex.returns("")
196
+
197
+ result = run_cmd(@cmd + params)
198
+ assert_equal(result.exit_code, 0)
199
+ File.delete("test1.rpm")
200
+ File.delete("test2.rpm")
201
+ end
202
+
133
203
  it "errors if there are no matching files" do
134
204
  params = ["--id=#{repo_id}", "--path=#{path}"]
135
205
 
@@ -17,7 +17,7 @@ require 'minitest/spec'
17
17
  require 'mocha/setup'
18
18
  require 'hammer_cli'
19
19
 
20
- KATELLO_VERSION = Gem::Version.new(ENV['TEST_API_VERSION'] || '3.2')
20
+ KATELLO_VERSION = Gem::Version.new(ENV['TEST_API_VERSION'] || '3.4')
21
21
 
22
22
  if HammerCLI.context[:api_connection]
23
23
  HammerCLI.context[:api_connection].create('foreman') do
@@ -9,6 +9,7 @@ module HammerCLIKatello
9
9
 
10
10
  before(:each) do
11
11
  api.stubs(:resources).returns([])
12
+ api.stubs(:resource).returns([])
12
13
  end
13
14
 
14
15
  describe '#repository_ids' do
@@ -43,5 +44,30 @@ module HammerCLIKatello
43
44
  id_resolver.repository_id(options).must_equal 5
44
45
  end
45
46
  end
47
+
48
+ describe '#content_view_version_id' do
49
+ it 'resolves ID from version number' do
50
+ options = {'option_version' => '2.0', 'option_content_view_id' => 4}
51
+ id_resolver.expects(:find_resources)
52
+ .with(:content_view_versions, options)
53
+ .returns(['id' => 5])
54
+ id_resolver.content_view_version_id(options).must_equal 5
55
+ end
56
+ end
57
+
58
+ describe '#content_view_version_ids' do
59
+ it 'resolves IDs from version numbers' do
60
+ versions = %w(2.0 3.0)
61
+ version_ids = [2, 3]
62
+ response = "{\"id\"=>2},{\"id\"=>3}"
63
+ options = {'option_versions' => versions, 'option_content_view_id' => 4}
64
+ versions.each_with_index do |version, i|
65
+ id_resolver.expects(:content_view_version_id)
66
+ .with(options.merge('option_version' => version))
67
+ .returns(['id' => version_ids[i]])
68
+ end
69
+ id_resolver.content_view_version_ids(options).must_equal response
70
+ end
71
+ end
46
72
  end
47
73
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hammer_cli_katello
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Price
@@ -34,7 +34,7 @@ authors:
34
34
  autorequire:
35
35
  bindir: bin
36
36
  cert_chain: []
37
- date: 2016-12-21 00:00:00.000000000 Z
37
+ date: 2017-03-30 00:00:00.000000000 Z
38
38
  dependencies:
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: hammer_cli_foreman
@@ -42,28 +42,28 @@ dependencies:
42
42
  requirements:
43
43
  - - "~>"
44
44
  - !ruby/object:Gem::Version
45
- version: '0.6'
45
+ version: '0.10'
46
46
  type: :runtime
47
47
  prerelease: false
48
48
  version_requirements: !ruby/object:Gem::Requirement
49
49
  requirements:
50
50
  - - "~>"
51
51
  - !ruby/object:Gem::Version
52
- version: '0.6'
52
+ version: '0.10'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: hammer_cli_foreman_tasks
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
57
  - - "~>"
58
58
  - !ruby/object:Gem::Version
59
- version: 0.0.3
59
+ version: 0.0.10
60
60
  type: :runtime
61
61
  prerelease: false
62
62
  version_requirements: !ruby/object:Gem::Requirement
63
63
  requirements:
64
64
  - - "~>"
65
65
  - !ruby/object:Gem::Version
66
- version: 0.0.3
66
+ version: 0.0.10
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: hammer_cli_foreman_bootdisk
69
69
  requirement: !ruby/object:Gem::Requirement
@@ -233,10 +233,12 @@ files:
233
233
  - lib/hammer_cli_katello/capsule.rb
234
234
  - lib/hammer_cli_katello/commands.rb
235
235
  - lib/hammer_cli_katello/composite_content_view_name_resolvable.rb
236
+ - lib/hammer_cli_katello/content_override.rb
236
237
  - lib/hammer_cli_katello/content_view.rb
237
238
  - lib/hammer_cli_katello/content_view_component.rb
238
239
  - lib/hammer_cli_katello/content_view_name_resolvable.rb
239
240
  - lib/hammer_cli_katello/content_view_puppet_module.rb
241
+ - lib/hammer_cli_katello/content_view_purge.rb
240
242
  - lib/hammer_cli_katello/content_view_version.rb
241
243
  - lib/hammer_cli_katello/erratum.rb
242
244
  - lib/hammer_cli_katello/exception_handler.rb
@@ -271,6 +273,7 @@ files:
271
273
  - lib/hammer_cli_katello/package_group.rb
272
274
  - lib/hammer_cli_katello/ping.rb
273
275
  - lib/hammer_cli_katello/product.rb
276
+ - lib/hammer_cli_katello/product_content.rb
274
277
  - lib/hammer_cli_katello/puppet_module.rb
275
278
  - lib/hammer_cli_katello/repository.rb
276
279
  - lib/hammer_cli_katello/repository_scoped_to_product.rb
@@ -298,14 +301,16 @@ files:
298
301
  - test/data/2.5/foreman_api.json
299
302
  - test/data/3.0/foreman_api.json
300
303
  - test/data/3.2/foreman_api.json
304
+ - test/data/3.4/foreman_api.json
301
305
  - test/data/Readme.md
302
- - test/functional/activaton_key/add_host_collection_test.rb
303
- - test/functional/activaton_key/create_test.rb
304
- - test/functional/activaton_key/list_test.rb
305
- - test/functional/activaton_key/product_content_test.rb
306
- - test/functional/activaton_key/remove_host_collection_test.rb
307
- - test/functional/activaton_key/subscriptions_test.rb
308
- - test/functional/activaton_key/update_test.rb
306
+ - test/functional/activation_key/add_host_collection_test.rb
307
+ - test/functional/activation_key/content_override_test.rb
308
+ - test/functional/activation_key/create_test.rb
309
+ - test/functional/activation_key/list_test.rb
310
+ - test/functional/activation_key/product_content_test.rb
311
+ - test/functional/activation_key/remove_host_collection_test.rb
312
+ - test/functional/activation_key/subscriptions_test.rb
313
+ - test/functional/activation_key/update_test.rb
309
314
  - test/functional/capsule/content/cancel_synchronization_test.rb
310
315
  - test/functional/capsule/content/capsule_content_helpers.rb
311
316
  - test/functional/capsule/content/data/library_env.json
@@ -320,7 +325,9 @@ files:
320
325
  - test/functional/content_view/component/remove_test.rb
321
326
  - test/functional/content_view/component/update_test.rb
322
327
  - test/functional/content_view/content_view_helpers.rb
328
+ - test/functional/content_view/copy_test.rb
323
329
  - test/functional/content_view/create_test.rb
330
+ - test/functional/content_view/delete_test.rb
324
331
  - test/functional/content_view/filter/create_test.rb
325
332
  - test/functional/content_view/filter/delete_test.rb
326
333
  - test/functional/content_view/filter/info_test.rb
@@ -329,10 +336,15 @@ files:
329
336
  - test/functional/content_view/list_test.rb
330
337
  - test/functional/content_view/publish_test.rb
331
338
  - test/functional/content_view/puppet_module/add_test.rb
339
+ - test/functional/content_view/purge_test.rb
332
340
  - test/functional/content_view/remove_content_view_version_test.rb
341
+ - test/functional/content_view/remove_test.rb
342
+ - test/functional/content_view/update_test.rb
333
343
  - test/functional/content_view/version/incremental_update_test.rb
334
344
  - test/functional/content_view/version/list_test.rb
335
345
  - test/functional/content_view/version/promote_test.rb
346
+ - test/functional/content_view/version/republish_repositories_test.rb
347
+ - test/functional/erratum/list_test.rb
336
348
  - test/functional/filter_rule/create_test.rb
337
349
  - test/functional/filter_rule/delete_test.rb
338
350
  - test/functional/filter_rule/info_test.rb
@@ -346,10 +358,13 @@ files:
346
358
  - test/functional/host/host_helpers.rb
347
359
  - test/functional/host/subscription/attach_test.rb
348
360
  - test/functional/host/subscription/auto_attach_test.rb
361
+ - test/functional/host/subscription/content_override_test.rb
362
+ - test/functional/host/subscription/product_content_test.rb
349
363
  - test/functional/host/subscription/register_test.rb
350
364
  - test/functional/host/subscription/remove_test.rb
351
365
  - test/functional/host/subscription/unregister_test.rb
352
366
  - test/functional/host_collection/add_host_test.rb
367
+ - test/functional/host_collection/content_api_expectations.rb
353
368
  - test/functional/host_collection/content_install_test.rb
354
369
  - test/functional/host_collection/content_remove_test.rb
355
370
  - test/functional/host_collection/content_update_test.rb
@@ -371,6 +386,7 @@ files:
371
386
  - test/functional/lifecycle_environment/update_test.rb
372
387
  - test/functional/organization/organization_helpers.rb
373
388
  - test/functional/package/list_test.rb
389
+ - test/functional/package_group/list_test.rb
374
390
  - test/functional/ping_test.rb
375
391
  - test/functional/product/create_test.rb
376
392
  - test/functional/product/delete_test.rb
@@ -381,11 +397,13 @@ files:
381
397
  - test/functional/product/set_sync_plan_test.rb
382
398
  - test/functional/product/update_test.rb
383
399
  - test/functional/repository/delete_test.rb
400
+ - test/functional/repository/export_test.rb
384
401
  - test/functional/repository/info_test.rb
385
402
  - test/functional/repository/list_test.rb
386
403
  - test/functional/repository/remove_content_test.rb
387
404
  - test/functional/repository/repository_helpers.rb
388
405
  - test/functional/repository/synchronize_test.rb
406
+ - test/functional/repository/update_test.rb
389
407
  - test/functional/repository/upload_test.rb
390
408
  - test/functional/subscription/list_test.rb
391
409
  - test/functional/sync_plan/sync_plan_helpers.rb
@@ -415,7 +433,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
415
433
  version: '0'
416
434
  requirements: []
417
435
  rubyforge_project:
418
- rubygems_version: 2.5.1
436
+ rubygems_version: 2.6.8
419
437
  signing_key:
420
438
  specification_version: 4
421
439
  summary: Katello commands for Hammer
@@ -423,14 +441,16 @@ test_files:
423
441
  - test/data/2.5/foreman_api.json
424
442
  - test/data/3.0/foreman_api.json
425
443
  - test/data/3.2/foreman_api.json
444
+ - test/data/3.4/foreman_api.json
426
445
  - test/data/Readme.md
427
- - test/functional/activaton_key/add_host_collection_test.rb
428
- - test/functional/activaton_key/create_test.rb
429
- - test/functional/activaton_key/list_test.rb
430
- - test/functional/activaton_key/product_content_test.rb
431
- - test/functional/activaton_key/remove_host_collection_test.rb
432
- - test/functional/activaton_key/subscriptions_test.rb
433
- - test/functional/activaton_key/update_test.rb
446
+ - test/functional/activation_key/add_host_collection_test.rb
447
+ - test/functional/activation_key/content_override_test.rb
448
+ - test/functional/activation_key/create_test.rb
449
+ - test/functional/activation_key/list_test.rb
450
+ - test/functional/activation_key/product_content_test.rb
451
+ - test/functional/activation_key/remove_host_collection_test.rb
452
+ - test/functional/activation_key/subscriptions_test.rb
453
+ - test/functional/activation_key/update_test.rb
434
454
  - test/functional/capsule/content/cancel_synchronization_test.rb
435
455
  - test/functional/capsule/content/capsule_content_helpers.rb
436
456
  - test/functional/capsule/content/data/library_env.json
@@ -445,7 +465,9 @@ test_files:
445
465
  - test/functional/content_view/component/remove_test.rb
446
466
  - test/functional/content_view/component/update_test.rb
447
467
  - test/functional/content_view/content_view_helpers.rb
468
+ - test/functional/content_view/copy_test.rb
448
469
  - test/functional/content_view/create_test.rb
470
+ - test/functional/content_view/delete_test.rb
449
471
  - test/functional/content_view/filter/create_test.rb
450
472
  - test/functional/content_view/filter/delete_test.rb
451
473
  - test/functional/content_view/filter/info_test.rb
@@ -454,10 +476,15 @@ test_files:
454
476
  - test/functional/content_view/list_test.rb
455
477
  - test/functional/content_view/publish_test.rb
456
478
  - test/functional/content_view/puppet_module/add_test.rb
479
+ - test/functional/content_view/purge_test.rb
457
480
  - test/functional/content_view/remove_content_view_version_test.rb
481
+ - test/functional/content_view/remove_test.rb
482
+ - test/functional/content_view/update_test.rb
458
483
  - test/functional/content_view/version/incremental_update_test.rb
459
484
  - test/functional/content_view/version/list_test.rb
460
485
  - test/functional/content_view/version/promote_test.rb
486
+ - test/functional/content_view/version/republish_repositories_test.rb
487
+ - test/functional/erratum/list_test.rb
461
488
  - test/functional/filter_rule/create_test.rb
462
489
  - test/functional/filter_rule/delete_test.rb
463
490
  - test/functional/filter_rule/info_test.rb
@@ -471,10 +498,13 @@ test_files:
471
498
  - test/functional/host/host_helpers.rb
472
499
  - test/functional/host/subscription/attach_test.rb
473
500
  - test/functional/host/subscription/auto_attach_test.rb
501
+ - test/functional/host/subscription/content_override_test.rb
502
+ - test/functional/host/subscription/product_content_test.rb
474
503
  - test/functional/host/subscription/register_test.rb
475
504
  - test/functional/host/subscription/remove_test.rb
476
505
  - test/functional/host/subscription/unregister_test.rb
477
506
  - test/functional/host_collection/add_host_test.rb
507
+ - test/functional/host_collection/content_api_expectations.rb
478
508
  - test/functional/host_collection/content_install_test.rb
479
509
  - test/functional/host_collection/content_remove_test.rb
480
510
  - test/functional/host_collection/content_update_test.rb
@@ -496,6 +526,7 @@ test_files:
496
526
  - test/functional/lifecycle_environment/update_test.rb
497
527
  - test/functional/organization/organization_helpers.rb
498
528
  - test/functional/package/list_test.rb
529
+ - test/functional/package_group/list_test.rb
499
530
  - test/functional/ping_test.rb
500
531
  - test/functional/product/create_test.rb
501
532
  - test/functional/product/delete_test.rb
@@ -506,11 +537,13 @@ test_files:
506
537
  - test/functional/product/set_sync_plan_test.rb
507
538
  - test/functional/product/update_test.rb
508
539
  - test/functional/repository/delete_test.rb
540
+ - test/functional/repository/export_test.rb
509
541
  - test/functional/repository/info_test.rb
510
542
  - test/functional/repository/list_test.rb
511
543
  - test/functional/repository/remove_content_test.rb
512
544
  - test/functional/repository/repository_helpers.rb
513
545
  - test/functional/repository/synchronize_test.rb
546
+ - test/functional/repository/update_test.rb
514
547
  - test/functional/repository/upload_test.rb
515
548
  - test/functional/subscription/list_test.rb
516
549
  - test/functional/sync_plan/sync_plan_helpers.rb