diff options
-rw-r--r-- | spec/functional/resource/group_spec.rb | 6 | ||||
-rw-r--r-- | spec/functional/resource/user/dscl_spec.rb | 2 | ||||
-rw-r--r-- | spec/functional/resource/user/useradd_spec.rb | 30 | ||||
-rw-r--r-- | spec/functional/resource/windows_service_spec.rb | 2 |
4 files changed, 18 insertions, 22 deletions
diff --git a/spec/functional/resource/group_spec.rb b/spec/functional/resource/group_spec.rb index 06a89a67c5..aa5a29f92c 100644 --- a/spec/functional/resource/group_spec.rb +++ b/spec/functional/resource/group_spec.rb @@ -105,7 +105,11 @@ describe Chef::Resource::Group, :requires_root_or_running_windows, :not_supporte end def remove_user(username) - user(username).run_action(:remove) if ! windows_domain_user?(username) + if ! windows_domain_user?(username) + u = user(username) + u.manage_home false # jekins hosts throw mail spool file not owned by user if we use manage_home true + u.run_action(:remove) + end # TODO: User shouldn't exist end diff --git a/spec/functional/resource/user/dscl_spec.rb b/spec/functional/resource/user/dscl_spec.rb index e2097710df..bedb37838c 100644 --- a/spec/functional/resource/user/dscl_spec.rb +++ b/spec/functional/resource/user/dscl_spec.rb @@ -76,7 +76,7 @@ describe "Chef::Resource::User with Chef::Provider::User::Dscl provider", metada let(:iterations) { nil } let(:user_resource) do - r = Chef::Resource::User.new("TEST USER RESOURCE", run_context) + r = Chef::Resource::User::DsclUser.new("TEST USER RESOURCE", run_context) r.username(username) r.uid(uid) r.gid(gid) diff --git a/spec/functional/resource/user/useradd_spec.rb b/spec/functional/resource/user/useradd_spec.rb index 43c26ac006..2c6ef4a41f 100644 --- a/spec/functional/resource/user/useradd_spec.rb +++ b/spec/functional/resource/user/useradd_spec.rb @@ -21,19 +21,14 @@ require "spec_helper" require "functional/resource/base" require "chef/mixin/shell_out" -def user_provider_for_platform - case ohai[:platform] - when "aix" - Chef::Provider::User::Aix - else - Chef::Provider::User::Useradd - end +def resource_for_platform(username, run_context) + Chef::Resource.resource_for_node(:user, node).new(username, run_context) end -metadata = { :unix_only => true, - :requires_root => true, - :not_supported_on_mac_osx => true, - :provider => { :user => user_provider_for_platform }, +metadata = { + :unix_only => true, + :requires_root => true, + :not_supported_on_mac_osx => true, } describe Chef::Provider::User::Useradd, metadata do @@ -86,7 +81,7 @@ describe Chef::Provider::User::Useradd, metadata do end ["cf-test"].each do |u| - r = Chef::Resource::User.new("DELETE USER", run_context) + r = resource_for_platform("DELETE USER", run_context) r.username("cf-test") r.run_action(:remove) end @@ -134,10 +129,7 @@ describe Chef::Provider::User::Useradd, metadata do Chef::RunContext.new(node, {}, events) end - let(:username) do - "cf-test" - end - + let(:username) { "cf-test" } let(:uid) { nil } let(:home) { nil } let(:manage_home) { false } @@ -146,7 +138,7 @@ describe Chef::Provider::User::Useradd, metadata do let(:comment) { nil } let(:user_resource) do - r = Chef::Resource::User.new("TEST USER RESOURCE", run_context) + r = resource_for_platform("TEST USER RESOURCE", run_context) r.username(username) r.uid(uid) r.home(home) @@ -310,8 +302,8 @@ describe Chef::Provider::User::Useradd, metadata do let(:existing_comment) { nil } let(:existing_user) do - r = Chef::Resource::User.new("TEST USER RESOURCE", run_context) - # username is identity attr, must match. + r = resource_for_platform("TEST USER RESOURCE", run_context) + # username is identity attr, must match. r.username(username) r.uid(existing_uid) r.home(existing_home) diff --git a/spec/functional/resource/windows_service_spec.rb b/spec/functional/resource/windows_service_spec.rb index f74e9bdac3..531f9e9250 100644 --- a/spec/functional/resource/windows_service_spec.rb +++ b/spec/functional/resource/windows_service_spec.rb @@ -28,7 +28,7 @@ describe Chef::Resource::WindowsService, :windows_only, :system_windows_service_ let(:password) { "1a2b3c4X!&narf" } let(:user_resource) do - r = Chef::Resource::User.new(username, run_context) + r = Chef::Resource::User::WindowsUser.new(username, run_context) r.username(username) r.password(password) r.comment("temp spec user") |