hammer_cli_katello 1.5.2 → 1.5.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -27,9 +27,9 @@ describe 'content-export complete version' do
27
27
 
28
28
  let(:export_history) do
29
29
  {
30
- "id": 1000,
31
- "path": "/tmp",
32
- "metadata": {}
30
+ "id" => 1000,
31
+ "path" => "/tmp",
32
+ "metadata" => {}
33
33
  }
34
34
  end
35
35
 
@@ -57,6 +57,24 @@ describe 'content-export complete version' do
57
57
  assert_equal(HammerCLI::EX_OK, result.exit_code)
58
58
  end
59
59
 
60
+ it "performs export with required options and async for syncable format" do
61
+ params = [
62
+ "--id=#{content_view_version_id}",
63
+ '--format=syncable',
64
+ '--async'
65
+ ]
66
+ expects_repositories_in_version(content_view_version_id)
67
+ ex = api_expects(:content_exports, :version)
68
+ ex.returns(response)
69
+
70
+ result = run_cmd(@cmd + params)
71
+
72
+ assert_equal("Content view version is being exported in task #{task_id}.\n"\
73
+ + "Once the task completes the listing files may be generated with the command:"\
74
+ + "\n hammer content-export generate-listing --task-id #{task_id}\n", result.out)
75
+ assert_equal(HammerCLI::EX_OK, result.exit_code)
76
+ end
77
+
60
78
  it "performs export with required options" do
61
79
  params = [
62
80
  "--id=#{content_view_version_id}",
@@ -78,6 +96,33 @@ describe 'content-export complete version' do
78
96
  assert_equal(HammerCLI::EX_OK, result.exit_code)
79
97
  end
80
98
 
99
+ it "performs export with format" do
100
+ params = [
101
+ "--id=#{content_view_version_id}",
102
+ '--format=syncable'
103
+ ]
104
+ expects_repositories_in_version(content_view_version_id)
105
+ ex = api_expects(:content_exports, :version)
106
+ ex.returns(response)
107
+
108
+ expect_foreman_task(task_id).at_least_once
109
+ path = "/foo/bar"
110
+ syncable_export_history = {
111
+ "id" => 1000,
112
+ "path" => path,
113
+ "metadata" => {"format" => "syncable"}
114
+ }
115
+ HammerCLIKatello::ContentExportComplete::VersionCommand.
116
+ any_instance.
117
+ expects(:fetch_export_history).
118
+ returns(syncable_export_history)
119
+
120
+ result = run_cmd(@cmd + params)
121
+ assert_match(/Generated/, result.out)
122
+ assert_match(path, result.out)
123
+ assert_equal(HammerCLI::EX_OK, result.exit_code)
124
+ end
125
+
81
126
  it 'fails on missing required params' do
82
127
  params = [
83
128
  '--boo-id=2'
@@ -0,0 +1,62 @@
1
+ require File.join(File.dirname(__FILE__), '../../test_helper')
2
+ require 'hammer_cli_katello/content_export'
3
+
4
+ describe('content-export generate-listing') do
5
+ include ForemanTaskHelpers
6
+
7
+ before do
8
+ @cmd = %w(content-export generate-listing)
9
+ @params = []
10
+ @export_history_id = 100
11
+ @path = '/tmp'
12
+ @export_history = {
13
+ 'id' => @export_history_id,
14
+ 'path' => @path,
15
+ 'metadata' => {'format' => 'syncable'}
16
+ }
17
+ @task_id = SecureRandom.uuid
18
+ end
19
+
20
+ let(:cmd) { @cmd + @params }
21
+ let(:result) { run_cmd(cmd) }
22
+
23
+ describe('given an export history id') do
24
+ it('loads export history by id') do
25
+ @params = ["--id=#{@export_history_id}"]
26
+
27
+ HammerCLIKatello::ContentExport::GenerateListingCommand.
28
+ any_instance.
29
+ expects(:fetch_export_history).
30
+ returns(@export_history)
31
+ assert_match(/Generated/, result.out)
32
+ assert_match(@path, result.out)
33
+ end
34
+ end
35
+
36
+ describe('given a task id') do
37
+ it('loads export history based on the task') do
38
+ @params = ["--task-id=#{@task_id}"]
39
+
40
+ HammerCLIKatello::ContentExport::GenerateListingCommand.
41
+ any_instance.
42
+ expects(:reload_task).
43
+ returns('id' => 'taskid')
44
+
45
+ HammerCLIKatello::ContentExport::GenerateListingCommand.
46
+ any_instance.
47
+ expects(:fetch_export_history).
48
+ returns(@export_history)
49
+
50
+ assert_match(/Generated/, result.out)
51
+ assert_match(@path, result.out)
52
+ end
53
+ end
54
+
55
+ describe('given no arguments') do
56
+ it('tells the user to verify the arguments') do
57
+ expected = "Error: No export history was found. Verify the value given for "\
58
+ + "--task-id or --id\n"
59
+ assert_equal(expected, result.err)
60
+ end
61
+ end
62
+ end
data/test/test_helper.rb CHANGED
@@ -17,7 +17,7 @@ require 'minitest/spec'
17
17
  require 'mocha/minitest'
18
18
  require 'hammer_cli'
19
19
 
20
- KATELLO_VERSION = Gem::Version.new(ENV['TEST_API_VERSION'] || '4.6')
20
+ KATELLO_VERSION = Gem::Version.new(ENV['TEST_API_VERSION'] || '4.5')
21
21
 
22
22
  if HammerCLI.context[:api_connection]
23
23
  HammerCLI.context[:api_connection].create('foreman') do
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: 1.5.2
4
+ version: 1.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Price
@@ -35,62 +35,62 @@ authors:
35
35
  autorequire:
36
36
  bindir: bin
37
37
  cert_chain: []
38
- date: 2022-07-06 00:00:00.000000000 Z
38
+ date: 2022-09-28 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: hammer_cli_foreman
42
42
  requirement: !ruby/object:Gem::Requirement
43
43
  requirements:
44
- - - '>='
44
+ - - ">="
45
45
  - !ruby/object:Gem::Version
46
46
  version: '0'
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - '>='
51
+ - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: '0'
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: hammer_cli_foreman_tasks
56
56
  requirement: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - '>='
58
+ - - ">="
59
59
  - !ruby/object:Gem::Version
60
60
  version: '0'
61
61
  type: :runtime
62
62
  prerelease: false
63
63
  version_requirements: !ruby/object:Gem::Requirement
64
64
  requirements:
65
- - - '>='
65
+ - - ">="
66
66
  - !ruby/object:Gem::Version
67
67
  version: '0'
68
68
  - !ruby/object:Gem::Dependency
69
69
  name: rake
70
70
  requirement: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - '>='
72
+ - - ">="
73
73
  - !ruby/object:Gem::Version
74
74
  version: '0'
75
75
  type: :development
76
76
  prerelease: false
77
77
  version_requirements: !ruby/object:Gem::Requirement
78
78
  requirements:
79
- - - '>='
79
+ - - ">="
80
80
  - !ruby/object:Gem::Version
81
81
  version: '0'
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: thor
84
84
  requirement: !ruby/object:Gem::Requirement
85
85
  requirements:
86
- - - '>='
86
+ - - ">="
87
87
  - !ruby/object:Gem::Version
88
88
  version: '0'
89
89
  type: :development
90
90
  prerelease: false
91
91
  version_requirements: !ruby/object:Gem::Requirement
92
92
  requirements:
93
- - - '>='
93
+ - - ">="
94
94
  - !ruby/object:Gem::Version
95
95
  version: '0'
96
96
  - !ruby/object:Gem::Dependency
@@ -111,56 +111,56 @@ dependencies:
111
111
  name: minitest-spec-context
112
112
  requirement: !ruby/object:Gem::Requirement
113
113
  requirements:
114
- - - '>='
114
+ - - ">="
115
115
  - !ruby/object:Gem::Version
116
116
  version: '0'
117
117
  type: :development
118
118
  prerelease: false
119
119
  version_requirements: !ruby/object:Gem::Requirement
120
120
  requirements:
121
- - - '>='
121
+ - - ">="
122
122
  - !ruby/object:Gem::Version
123
123
  version: '0'
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: simplecov
126
126
  requirement: !ruby/object:Gem::Requirement
127
127
  requirements:
128
- - - '>='
128
+ - - ">="
129
129
  - !ruby/object:Gem::Version
130
130
  version: '0'
131
131
  type: :development
132
132
  prerelease: false
133
133
  version_requirements: !ruby/object:Gem::Requirement
134
134
  requirements:
135
- - - '>='
135
+ - - ">="
136
136
  - !ruby/object:Gem::Version
137
137
  version: '0'
138
138
  - !ruby/object:Gem::Dependency
139
139
  name: mocha
140
140
  requirement: !ruby/object:Gem::Requirement
141
141
  requirements:
142
- - - '>='
142
+ - - ">="
143
143
  - !ruby/object:Gem::Version
144
144
  version: '0'
145
145
  type: :development
146
146
  prerelease: false
147
147
  version_requirements: !ruby/object:Gem::Requirement
148
148
  requirements:
149
- - - '>='
149
+ - - ">="
150
150
  - !ruby/object:Gem::Version
151
151
  version: '0'
152
152
  - !ruby/object:Gem::Dependency
153
153
  name: ci_reporter
154
154
  requirement: !ruby/object:Gem::Requirement
155
155
  requirements:
156
- - - '>='
156
+ - - ">="
157
157
  - !ruby/object:Gem::Version
158
158
  version: '0'
159
159
  type: :development
160
160
  prerelease: false
161
161
  version_requirements: !ruby/object:Gem::Requirement
162
162
  requirements:
163
- - - '>='
163
+ - - ">="
164
164
  - !ruby/object:Gem::Version
165
165
  version: '0'
166
166
  - !ruby/object:Gem::Dependency
@@ -181,14 +181,14 @@ dependencies:
181
181
  name: rubocop-checkstyle_formatter
182
182
  requirement: !ruby/object:Gem::Requirement
183
183
  requirements:
184
- - - '>='
184
+ - - ">="
185
185
  - !ruby/object:Gem::Version
186
186
  version: '0'
187
187
  type: :development
188
188
  prerelease: false
189
189
  version_requirements: !ruby/object:Gem::Requirement
190
190
  requirements:
191
- - - '>='
191
+ - - ">="
192
192
  - !ruby/object:Gem::Version
193
193
  version: '0'
194
194
  description: Hammer-CLI-Katello is a plugin for Hammer to provide connectivity to
@@ -321,7 +321,6 @@ files:
321
321
  - test/data/4.3/foreman_api.json
322
322
  - test/data/4.4/foreman_api.json
323
323
  - test/data/4.5/foreman_api.json
324
- - test/data/4.6/foreman_api.json
325
324
  - test/data/Readme.md
326
325
  - test/functional/acs/create_test.rb
327
326
  - test/functional/acs/delete_test.rb
@@ -360,6 +359,7 @@ files:
360
359
  - test/functional/content_export/complete/repository_test.rb
361
360
  - test/functional/content_export/complete/version_test.rb
362
361
  - test/functional/content_export/content_export_helpers.rb
362
+ - test/functional/content_export/generate_listing_test.rb
363
363
  - test/functional/content_export/generate_metadata_test.rb
364
364
  - test/functional/content_export/incremental/library_test.rb
365
365
  - test/functional/content_export/incremental/repository_test.rb
@@ -514,17 +514,16 @@ require_paths:
514
514
  - lib
515
515
  required_ruby_version: !ruby/object:Gem::Requirement
516
516
  requirements:
517
- - - '>='
517
+ - - ">="
518
518
  - !ruby/object:Gem::Version
519
519
  version: '0'
520
520
  required_rubygems_version: !ruby/object:Gem::Requirement
521
521
  requirements:
522
- - - '>='
522
+ - - ">="
523
523
  - !ruby/object:Gem::Version
524
524
  version: '0'
525
525
  requirements: []
526
- rubyforge_project:
527
- rubygems_version: 2.0.14.1
526
+ rubygems_version: 3.1.6
528
527
  signing_key:
529
528
  specification_version: 4
530
529
  summary: Katello commands for Hammer
@@ -553,7 +552,6 @@ test_files:
553
552
  - test/data/4.3/foreman_api.json
554
553
  - test/data/4.4/foreman_api.json
555
554
  - test/data/4.5/foreman_api.json
556
- - test/data/4.6/foreman_api.json
557
555
  - test/data/Readme.md
558
556
  - test/functional/acs/create_test.rb
559
557
  - test/functional/acs/delete_test.rb
@@ -592,6 +590,7 @@ test_files:
592
590
  - test/functional/content_export/complete/repository_test.rb
593
591
  - test/functional/content_export/complete/version_test.rb
594
592
  - test/functional/content_export/content_export_helpers.rb
593
+ - test/functional/content_export/generate_listing_test.rb
595
594
  - test/functional/content_export/generate_metadata_test.rb
596
595
  - test/functional/content_export/incremental/library_test.rb
597
596
  - test/functional/content_export/incremental/repository_test.rb