hammer_cli_foreman 0.19.5 → 0.19.6

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
  SHA256:
3
- metadata.gz: ac2ca7b26bf726ecf4ca0ef5d63e2a4f39e3dc780b750aa72a38b94f0ebc29f0
4
- data.tar.gz: b3c19dafdb2f486a14b01dc916679f924a2a800a2ed65c5a2301e5a41c0ca75f
3
+ metadata.gz: 044c402964ebc3448c879c6858be3d8726ad8be7bafcbd25cef6d8f1a3ca4e02
4
+ data.tar.gz: 672a8c5be95a59de4908dd982e87c454e9f84025a6aff7751934035857ad1508
5
5
  SHA512:
6
- metadata.gz: db55041ba7a683e3a863f7683da073face647cd0252427b1f59c95860fe80c325fbc443d2e7ab44d3e681ee5999974fbbc462c8ac7bb8746ef5cc9435e241fca
7
- data.tar.gz: 886c91a2dff4aef20c28e96ac78fdaab10ad6d7abc81c91c68a875b32c63aac84705de7861b976d0d3d22ac16868f5e553ee4c0f2929fda6e63d0dfb8625a2ec
6
+ metadata.gz: d033b74af20d792cd58ff42d631189cf36245f062e05c2180dc6529914e28c3ddbff0c70afaae43e168eba1adcb8e33a8e0a1b146b78cc201f06999d5266292c
7
+ data.tar.gz: 1d36643cfeb4f03a4a5a36a035156bd02655fff13b12145ec825e94ba45f3f8da071fa71aa6b6ca4c2c640d2e2fd38c084c0c16ef239bc72c126a8758a882447
@@ -1,5 +1,13 @@
1
1
  Release notes
2
2
  =============
3
+ ### 0.19.6 (2020-01-10)
4
+ * Add auth source external command ([PR #480](https://github.com/theforeman/hammer-cli-foreman/pull/480)), [#28704](http://projects.theforeman.org/issues/28704)
5
+ * Fix undefined method on wrong oidc token endpoint ([PR #479](https://github.com/theforeman/hammer-cli-foreman/pull/479)), [#28196](http://projects.theforeman.org/issues/28196)
6
+ * Fix unauthorized user error message ([PR #478](https://github.com/theforeman/hammer-cli-foreman/pull/478)), [#28646](http://projects.theforeman.org/issues/28646)
7
+ * Add specific oidc option information ([PR #475](https://github.com/theforeman/hammer-cli-foreman/pull/475)), [#28628](http://projects.theforeman.org/issues/28628)
8
+ * Remove url field from gce info ([PR #466](https://github.com/theforeman/hammer-cli-foreman/pull/466)) ([PR #481](https://github.com/theforeman/hammer-cli-foreman/pull/481)), [#28135](http://projects.theforeman.org/issues/28135)
9
+ * Add images uuid to cr images ([PR #457](https://github.com/theforeman/hammer-cli-foreman/pull/457)) ([PR #482](https://github.com/theforeman/hammer-cli-foreman/pull/482)), [#28132](http://projects.theforeman.org/issues/28132)
10
+
3
11
  ### 0.19.5 (2019-12-31)
4
12
  * Restrict mocha to not use version > 1.9.0 ([PR #460](https://github.com/theforeman/hammer-cli-foreman/pull/460)), [#28417](http://projects.theforeman.org/issues/28417)
5
13
  * Increase id column width for available networks ([PR #468](https://github.com/theforeman/hammer-cli-foreman/pull/468)), [#28503](http://projects.theforeman.org/issues/28503)
@@ -55,7 +55,7 @@ module HammerCLIForeman
55
55
  def error(ex)
56
56
  if ex.is_a?(RestClient::Unauthorized) && session.valid?
57
57
  if @user_changed
58
- return UnauthorizedError.new(_("Invalid username or password, continuing with session for '%s'.") % session.user_name)
58
+ return UnauthorizedError.new(_("Invalid credentials, continuing with session for '%s'.") % session.user_name)
59
59
  else
60
60
  session.destroy
61
61
  return SessionExpired.new(_("Session has expired."))
@@ -37,10 +37,10 @@ module HammerCLIForeman
37
37
  option ["-u", "--username"], "USERNAME", _("Username to access the remote system")
38
38
  option ["-p", "--password"], "PASSWORD", _("Password to access the remote system")
39
39
  option ["-t", "--oidc-token-endpoint"], "OPENIDC-TOKEN-ENDPOINT", _("Openidc provider URL which issues access token")
40
- option ["-a", "--oidc-authorization-endpoint"], "OPENIDC-AUTHORIZATION-ENDPOINT", _("Openidc provider URL which issues authentication code")
40
+ option ["-a", "--oidc-authorization-endpoint"], "OPENIDC-AUTHORIZATION-ENDPOINT", _("Openidc provider URL which issues authentication code (two factor only)")
41
41
  option ["-c", "--oidc-client-id"], "OPENIDC-CLIENT-ID", _("Client id used in the Openidc provider")
42
42
  option ["-f", "--two-factor"], :flag, _("Authenticate with two factor")
43
- option ["-r", "--oidc-redirect-uri"], "OPENIDC-REDIRECT-URI", _("Redirect URI for the authencation code grant flow")
43
+ option ["-r", "--oidc-redirect-uri"], "OPENIDC-REDIRECT-URI", _("Redirect URI for the authentication code grant flow")
44
44
 
45
45
  def execute
46
46
  if option_two_factor?
@@ -1,10 +1,11 @@
1
1
  require 'hammer_cli_foreman/auth_source_ldap'
2
+ require 'hammer_cli_foreman/auth_source_external'
2
3
 
3
4
  module HammerCLIForeman
4
-
5
5
  class AuthSource < HammerCLIForeman::Command
6
6
  resource :auth_sources
7
7
  subcommand 'ldap', HammerCLIForeman::AuthSourceLdap.desc, HammerCLIForeman::AuthSourceLdap
8
+ subcommand 'external', HammerCLIForeman::AuthSourceExternal.desc, HammerCLIForeman::AuthSourceExternal
8
9
 
9
10
  class ListCommand < HammerCLIForeman::ListCommand
10
11
  desc _('List all auth sources')
@@ -18,16 +19,6 @@ module HammerCLIForeman
18
19
  build_options
19
20
  end
20
21
 
21
- class UpdateCommand < HammerCLIForeman::UpdateCommand
22
- desc _('Update organization and location for Auth Source')
23
- resource :auth_source_externals
24
-
25
- success_message _('Taxonomy updated.')
26
- failure_message _('Taxonomy not changed. Please check if appropriate auth source exists')
27
-
28
- build_options
29
- end
30
-
31
22
  autoload_subcommands
32
23
  end
33
24
  end
@@ -0,0 +1,35 @@
1
+ module HammerCLIForeman
2
+ class AuthSourceExternal < HammerCLIForeman::Command
3
+ resource :auth_source_externals
4
+ command_name 'external'
5
+ desc _('Manage external auth sources')
6
+
7
+ class ListCommand < HammerCLIForeman::ListCommand
8
+ output do
9
+ field :id, _('Id')
10
+ field :name, _('Name')
11
+ end
12
+
13
+ build_options
14
+ end
15
+
16
+ class InfoCommand < HammerCLIForeman::InfoCommand
17
+ output ListCommand.output_definition do
18
+ HammerCLIForeman::References.taxonomies(self)
19
+ end
20
+
21
+ build_options
22
+ end
23
+
24
+ class UpdateCommand < HammerCLIForeman::UpdateCommand
25
+ desc _('Update organization and location for Auth Source')
26
+
27
+ success_message _('Successfully updated the %{name} external auth source.')
28
+ failure_message _('Failed to update %{name} external auth source')
29
+
30
+ build_options
31
+ end
32
+
33
+ autoload_subcommands
34
+ end
35
+ end
@@ -31,7 +31,6 @@ module HammerCLIForeman
31
31
  include ProviderNameLegacy
32
32
 
33
33
  output ListCommand.output_definition do
34
- field :url, _("Url")
35
34
  field :description, _("Description")
36
35
  field :user, _("User")
37
36
  HammerCLIForeman::References.taxonomies(self)
@@ -133,7 +132,7 @@ module HammerCLIForeman
133
132
  command_name 'images'
134
133
 
135
134
  output do
136
- field :id, _('Id')
135
+ field :uuid, _('Uuid')
137
136
  field :name, _('Name')
138
137
  end
139
138
 
@@ -7,7 +7,11 @@ module HammerCLIForeman
7
7
  def volume_attributes; []; end
8
8
  def interfaces_attrs_name; 'interfaces_attributes'; end
9
9
  def host_attributes; []; end
10
- def provider_specific_fields; []; end
10
+ def provider_specific_fields
11
+ [
12
+ Fields::Field.new(label: _('Url'), path: [:url])
13
+ ]
14
+ end
11
15
  def mandatory_resource_options; %i[name provider]; end
12
16
  end
13
17
  end
@@ -10,7 +10,7 @@ module HammerCLIForeman
10
10
  end
11
11
 
12
12
  def provider_specific_fields
13
- [
13
+ super + [
14
14
  Fields::Field.new(:label => _('Region'), :path => [:region])
15
15
  ]
16
16
  end
@@ -10,7 +10,7 @@ module HammerCLIForeman
10
10
  end
11
11
 
12
12
  def provider_specific_fields
13
- [
13
+ super + [
14
14
  Fields::Field.new(:label => _('Tenant'), :path => [:tenant]),
15
15
  Fields::Field.new(:label => _('Project domain name'), :path => [:project_domain_name]),
16
16
  Fields::Field.new(:label => _('Project domain ID'), :path => [:project_domain_id])
@@ -40,7 +40,7 @@ module HammerCLIForeman
40
40
  end
41
41
 
42
42
  def provider_specific_fields
43
- [
43
+ super + [
44
44
  Fields::Field.new(:label => _('Datacenter'), :path => [:datacenter])
45
45
  ]
46
46
  end
@@ -10,7 +10,7 @@ module HammerCLIForeman
10
10
  end
11
11
 
12
12
  def provider_specific_fields
13
- [
13
+ super + [
14
14
  Fields::Field.new(:label => _('Region'), :path => [:region])
15
15
  ]
16
16
  end
@@ -61,7 +61,7 @@ module HammerCLIForeman
61
61
  end
62
62
 
63
63
  def provider_specific_fields
64
- [
64
+ super + [
65
65
  Fields::Field.new(:label => _('Datacenter'), :path => [:datacenter]),
66
66
  Fields::Field.new(:label => _('Server'), :path => [:server])
67
67
  ]
@@ -9,6 +9,8 @@ module HammerCLIForeman
9
9
 
10
10
  def get_token(username, password)
11
11
  uri = URI.parse(@url)
12
+ return nil unless uri.respond_to?(:request_uri)
13
+
12
14
  request = Net::HTTP::Post.new(uri)
13
15
  request.content_type = 'application/x-www-form-urlencoded'
14
16
  request.set_form_data(
@@ -1,5 +1,5 @@
1
1
  module HammerCLIForeman
2
2
  def self.version
3
- @version ||= Gem::Version.new "0.19.5"
3
+ @version ||= Gem::Version.new "0.19.6"
4
4
  end
5
5
  end
@@ -200,8 +200,8 @@ end
200
200
 
201
201
  describe 'images' do
202
202
  let(:cmd) { base_cmd << 'images' }
203
- let(:image1) { { id: 1, name: 'image1' } }
204
- let(:image2) { { id: 2, name: 'image2' } }
203
+ let(:image1) { { uuid: 1, name: 'image1' } }
204
+ let(:image2) { { uuid: 2, name: 'image2' } }
205
205
  let(:images) { [image1, image2] }
206
206
 
207
207
  it 'lists available images for a compute resource' do
@@ -211,7 +211,7 @@ end
211
211
 
212
212
  output = IndexMatcher.new(
213
213
  [
214
- %w[ID NAME],
214
+ %w[UUID NAME],
215
215
  %w[1 image1],
216
216
  %w[2 image2]
217
217
  ]
@@ -211,7 +211,7 @@ describe HammerCLIForeman::Api::SessionAuthenticatorWrapper do
211
211
  ex = RestClient::Unauthorized.new
212
212
  new_ex = auth.error(ex)
213
213
 
214
- assert_equal "Invalid username or password, continuing with session for 'admin'.", new_ex.message
214
+ assert_equal "Invalid credentials, continuing with session for 'admin'.", new_ex.message
215
215
  end
216
216
  end
217
217
 
@@ -265,12 +265,33 @@ module ResourceMocks
265
265
 
266
266
  def self.auth_source_ldap_index
267
267
  ResourceMocks.mock_action_call(:auth_source_ldaps, :index, {
268
- "results" => [{
269
- "name" => "my LDAP",
270
- "id" => 1,
271
- "tls" => false,
272
- "port" => 389,
273
- "server_type" => "POSIX"
268
+ 'results' => [{
269
+ 'name' => 'my LDAP',
270
+ 'id' => 1,
271
+ 'tls' => false,
272
+ 'port' => 389,
273
+ 'server_type' => 'POSIX'
274
+ }]
275
+ })
276
+ end
277
+
278
+ def self.auth_source_external_index
279
+ ResourceMocks.mock_action_call(:auth_source_externals, :index, {
280
+ 'results' => [{
281
+ 'id' => 11,
282
+ 'name' => 'External',
283
+ 'locations' => [{
284
+ 'id' => 2,
285
+ 'name' => 'Default Location',
286
+ 'title' => 'Default Location',
287
+ 'description' => nil
288
+ }],
289
+ 'organizations' => [{
290
+ 'id' => 1,
291
+ 'name' => 'Default Organization',
292
+ 'title' => 'Default Organization',
293
+ 'description' => nil
294
+ }]
274
295
  }]
275
296
  })
276
297
  end
@@ -0,0 +1,40 @@
1
+ require File.join(File.dirname(__FILE__), 'test_helper')
2
+ require File.join(File.dirname(__FILE__), 'apipie_resource_mock')
3
+
4
+ require 'hammer_cli_foreman/auth_source'
5
+
6
+ describe HammerCLIForeman::AuthSourceExternal do
7
+
8
+ include CommandTestHelper
9
+
10
+ context 'ListCommand' do
11
+ before :each do
12
+ ResourceMocks.auth_source_external_index
13
+ end
14
+
15
+ let(:cmd) { HammerCLIForeman::AuthSourceExternal::ListCommand.new('', ctx) }
16
+
17
+ context 'parameters' do
18
+ it_should_accept 'no arguments'
19
+ it_should_accept 'per page', ['--per-page=1']
20
+ it_should_accept 'page', ['--page=2']
21
+ end
22
+
23
+ context 'output' do
24
+ let(:expected_record_count) { count_records(cmd.resource.call(:index)) }
25
+
26
+ it_should_print_n_records 1
27
+ it_should_print_column 'Name'
28
+ it_should_print_column 'Id'
29
+ end
30
+ end
31
+
32
+ context 'UpdateCommand' do
33
+ let(:cmd) { HammerCLIForeman::AuthSourceExternal::UpdateCommand.new('', ctx) }
34
+
35
+ context 'parameters' do
36
+ it_should_accept 'name', ['--name=External', '--new-name=auth-external-1']
37
+ it_should_accept 'id', ['--id=11', '--new-name=auth-external-2']
38
+ end
39
+ end
40
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hammer_cli_foreman
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.5
4
+ version: 0.19.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tomáš Strachota
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-12-31 00:00:00.000000000 Z
12
+ date: 2020-01-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: hammer_cli
@@ -80,14 +80,14 @@ email: tstracho@redhat.com
80
80
  executables: []
81
81
  extensions: []
82
82
  extra_rdoc_files:
83
- - doc/host_create.md
84
- - doc/release_notes.md
85
83
  - doc/configuration.md
86
- - doc/name_id_resolution.md
87
84
  - doc/developer_docs.md
88
- - doc/using_hammer_cli_foreman_command.md
89
- - doc/testing.md
85
+ - doc/name_id_resolution.md
90
86
  - doc/option_builder.md
87
+ - doc/testing.md
88
+ - doc/using_hammer_cli_foreman_command.md
89
+ - doc/host_create.md
90
+ - doc/release_notes.md
91
91
  - README.md
92
92
  files:
93
93
  - LICENSE
@@ -115,6 +115,7 @@ files:
115
115
  - lib/hammer_cli_foreman/audit.rb
116
116
  - lib/hammer_cli_foreman/auth.rb
117
117
  - lib/hammer_cli_foreman/auth_source.rb
118
+ - lib/hammer_cli_foreman/auth_source_external.rb
118
119
  - lib/hammer_cli_foreman/auth_source_ldap.rb
119
120
  - lib/hammer_cli_foreman/authenticate/login.rb
120
121
  - lib/hammer_cli_foreman/combination.rb
@@ -270,6 +271,7 @@ files:
270
271
  - test/unit/apipie_resource_mock.rb
271
272
  - test/unit/architecture_test.rb
272
273
  - test/unit/audit_test.rb
274
+ - test/unit/auth_source_external.rb
273
275
  - test/unit/auth_source_ldap_test.rb
274
276
  - test/unit/commands_test.rb
275
277
  - test/unit/common_parameter_test.rb
@@ -337,107 +339,109 @@ required_rubygems_version: !ruby/object:Gem::Requirement
337
339
  - !ruby/object:Gem::Version
338
340
  version: '0'
339
341
  requirements: []
340
- rubygems_version: 3.0.3
342
+ rubyforge_project:
343
+ rubygems_version: 2.7.10
341
344
  signing_key:
342
345
  specification_version: 4
343
346
  summary: Foreman commands for Hammer
344
347
  test_files:
345
- - test/unit/image_test.rb
346
- - test/unit/helpers/resource_disabled.rb
347
- - test/unit/helpers/fake_searchables.rb
348
- - test/unit/helpers/command.rb
349
- - test/unit/messages_test.rb
350
- - test/unit/smart_variable_test.rb
351
- - test/unit/config_group_test.rb
352
- - test/unit/option_sources/id_params_test.rb
353
- - test/unit/option_sources/ids_params_test.rb
354
- - test/unit/exception_handler_test.rb
355
- - test/unit/user_test.rb
356
- - test/unit/api/session_authenticator_wrapper_test.rb
357
- - test/unit/api/interactive_basic_auth_test.rb
358
- - test/unit/api/oauth/oauth_authentication_code_grant_test.rb
359
- - test/unit/api/oauth/oauth_password_grant_test.rb
360
- - test/unit/api/void_auth_test.rb
361
- - test/unit/hostgroup_test.rb
362
- - test/unit/realm_test.rb
363
- - test/unit/data/test_api.json
364
- - test/unit/auth_source_ldap_test.rb
365
- - test/unit/audit_test.rb
366
- - test/unit/test_helper.rb
367
- - test/unit/smart_class_parameter_test.rb
368
- - test/unit/partition_table_test.rb
369
- - test/unit/operating_system_test.rb
370
- - test/unit/media_test.rb
371
- - test/unit/architecture_test.rb
372
- - test/unit/usergroup_test.rb
373
- - test/unit/role_test.rb
374
- - test/unit/location_test.rb
375
- - test/unit/param_filters_test.rb
376
- - test/unit/apipie_resource_mock.rb
377
- - test/unit/option_builders_test.rb
378
- - test/unit/api_test.rb
379
- - test/unit/test_output_adapter.rb
380
- - test/unit/sessions_test.rb
381
- - test/unit/organization_test.rb
382
- - test/unit/settings_test.rb
383
- - test/unit/template_test.rb
384
- - test/unit/dependency_resolver_test.rb
385
- - test/unit/smart_proxy_test.rb
386
- - test/unit/domain_test.rb
387
- - test/unit/defaults_test.rb
388
- - test/unit/model_test.rb
389
- - test/unit/puppet_class_test.rb
390
- - test/unit/compute_resource_test.rb
391
- - test/unit/id_resolver_test.rb
392
- - test/unit/filter_test.rb
393
- - test/unit/puppet_environment_test.rb
394
- - test/unit/output/formatters_test.rb
395
- - test/unit/host_test.rb
396
- - test/unit/config_report_test.rb
397
- - test/unit/fact_test.rb
398
- - test/unit/external_usergroup_test.rb
399
- - test/unit/commands_test.rb
400
- - test/unit/common_parameter_test.rb
401
- - test/unit/subnet_test.rb
402
- - test/data/1.24/foreman_api.json
403
- - test/data/1.18/foreman_api.json
404
- - test/data/1.11/foreman_api.json
405
348
  - test/data/1.10/foreman_api.json
406
- - test/data/1.17/foreman_api.json
407
- - test/data/1.15/foreman_api.json
349
+ - test/data/1.11/foreman_api.json
408
350
  - test/data/1.14/_foreman_api.json
409
351
  - test/data/1.14/foreman_api.json
352
+ - test/data/1.15/foreman_api.json
353
+ - test/data/1.16/foreman_api.json
354
+ - test/data/1.17/foreman_api.json
355
+ - test/data/1.18/foreman_api.json
356
+ - test/data/1.20/foreman_api.json
410
357
  - test/data/1.21/foreman_api.json
411
358
  - test/data/1.22/foreman_api.json
412
- - test/data/1.20/foreman_api.json
359
+ - test/data/1.24/foreman_api.json
413
360
  - test/data/README.md
414
- - test/data/1.16/foreman_api.json
415
- - test/functional/http_proxy_test.rb
416
- - test/functional/commands/list_test.rb
417
- - test/functional/smart_variable_test.rb
418
- - test/functional/user_test.rb
419
- - test/functional/personal_access_token_test.rb
420
361
  - test/functional/audit_test.rb
421
- - test/functional/test_helper.rb
422
- - test/functional/ping_test.rb
423
- - test/functional/smart_class_parameter_test.rb
424
- - test/functional/role_test.rb
425
- - test/functional/location_test.rb
362
+ - test/functional/auth_source_test.rb
363
+ - test/functional/commands/list_test.rb
364
+ - test/functional/compute_attribute_test.rb
365
+ - test/functional/compute_profile_test.rb
366
+ - test/functional/filter_test.rb
426
367
  - test/functional/hostgroup/create_test.rb
427
368
  - test/functional/hostgroup/update_test.rb
428
- - test/functional/subnet/create_test.rb
429
- - test/functional/subnet/update_test.rb
369
+ - test/functional/location_test.rb
430
370
  - test/functional/organization_test.rb
431
- - test/functional/settings_test.rb
432
- - test/functional/template_test.rb
371
+ - test/functional/personal_access_token_test.rb
433
372
  - test/functional/proxy_test.rb
434
- - test/functional/compute_resource_test.rb
435
- - test/functional/compute_attribute_test.rb
436
- - test/functional/filter_test.rb
437
- - test/functional/report_template_test.rb
438
- - test/functional/compute_profile_test.rb
439
- - test/functional/host_test.rb
373
+ - test/functional/settings_test.rb
374
+ - test/functional/smart_variable_test.rb
440
375
  - test/functional/ssh_keys_test.rb
376
+ - test/functional/subnet/create_test.rb
377
+ - test/functional/subnet/update_test.rb
378
+ - test/functional/test_helper.rb
379
+ - test/functional/user_test.rb
380
+ - test/functional/ping_test.rb
441
381
  - test/functional/status_test.rb
442
- - test/functional/auth_source_test.rb
382
+ - test/functional/compute_resource_test.rb
383
+ - test/functional/host_test.rb
384
+ - test/functional/http_proxy_test.rb
385
+ - test/functional/report_template_test.rb
386
+ - test/functional/role_test.rb
387
+ - test/functional/smart_class_parameter_test.rb
388
+ - test/functional/template_test.rb
389
+ - test/unit/api/void_auth_test.rb
390
+ - test/unit/api/interactive_basic_auth_test.rb
391
+ - test/unit/api/oauth/oauth_authentication_code_grant_test.rb
392
+ - test/unit/api/oauth/oauth_password_grant_test.rb
393
+ - test/unit/api/session_authenticator_wrapper_test.rb
394
+ - test/unit/api_test.rb
395
+ - test/unit/architecture_test.rb
396
+ - test/unit/audit_test.rb
397
+ - test/unit/auth_source_ldap_test.rb
398
+ - test/unit/commands_test.rb
399
+ - test/unit/common_parameter_test.rb
400
+ - test/unit/compute_resource_test.rb
401
+ - test/unit/config_group_test.rb
402
+ - test/unit/config_report_test.rb
403
+ - test/unit/data/test_api.json
404
+ - test/unit/defaults_test.rb
405
+ - test/unit/dependency_resolver_test.rb
406
+ - test/unit/domain_test.rb
407
+ - test/unit/exception_handler_test.rb
408
+ - test/unit/external_usergroup_test.rb
409
+ - test/unit/fact_test.rb
410
+ - test/unit/filter_test.rb
411
+ - test/unit/helpers/command.rb
412
+ - test/unit/helpers/fake_searchables.rb
413
+ - test/unit/helpers/resource_disabled.rb
414
+ - test/unit/hostgroup_test.rb
415
+ - test/unit/id_resolver_test.rb
416
+ - test/unit/image_test.rb
417
+ - test/unit/location_test.rb
418
+ - test/unit/media_test.rb
419
+ - test/unit/messages_test.rb
420
+ - test/unit/model_test.rb
421
+ - test/unit/operating_system_test.rb
422
+ - test/unit/option_builders_test.rb
423
+ - test/unit/option_sources/id_params_test.rb
424
+ - test/unit/option_sources/ids_params_test.rb
425
+ - test/unit/organization_test.rb
426
+ - test/unit/output/formatters_test.rb
427
+ - test/unit/param_filters_test.rb
428
+ - test/unit/partition_table_test.rb
429
+ - test/unit/puppet_class_test.rb
430
+ - test/unit/puppet_environment_test.rb
431
+ - test/unit/realm_test.rb
432
+ - test/unit/role_test.rb
433
+ - test/unit/settings_test.rb
434
+ - test/unit/smart_proxy_test.rb
435
+ - test/unit/smart_variable_test.rb
436
+ - test/unit/subnet_test.rb
437
+ - test/unit/test_helper.rb
438
+ - test/unit/user_test.rb
439
+ - test/unit/usergroup_test.rb
440
+ - test/unit/sessions_test.rb
441
+ - test/unit/host_test.rb
442
+ - test/unit/smart_class_parameter_test.rb
443
+ - test/unit/template_test.rb
444
+ - test/unit/test_output_adapter.rb
445
+ - test/unit/apipie_resource_mock.rb
446
+ - test/unit/auth_source_external.rb
443
447
  - test/test_helper.rb