Skip to content

Commit

Permalink
add delete user action test
Browse files Browse the repository at this point in the history
  • Loading branch information
jreidinger committed Oct 8, 2021
1 parent 06ece8a commit 322cf75
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 0 deletions.
1 change: 1 addition & 0 deletions src/lib/y2users/linux/delete_user_action.rb
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
require "yast/i18n"
require "yast2/execute"
require "y2issues/issue"
require "y2users/linux/user_action"

module Y2Users
module Linux
Expand Down
47 changes: 47 additions & 0 deletions test/lib/y2users/linux/delete_user_action_test.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
require_relative "../test_helper"

require "y2users/user"
require "y2users/linux/delete_user_action"
require "y2users/commit_config"

describe Y2Users::Linux::DeleteUserAction do
subject(:action) { described_class.new(user, commit_config) }
let(:user) { Y2Users::User.new("test") }
let(:commit_config) { nil }

before do
allow(Yast::Execute).to receive(:on_target!)
end

describe "#perform" do
it "deletes user with userdel" do
expect(Yast::Execute).to receive(:on_target!) do |cmd, *_args|
expect(cmd).to eq "/usr/sbin/userdel"
end

action.perform
end

it "passes user name as last parameter" do
expect(Yast::Execute).to receive(:on_target!) do |cmd, *args|
expect(args.last).to eq "test"
end

action.perform
end

context "commit config contain remove_home" do
let(:commit_config) { Y2Users::CommitConfig.new.tap { |c| c.remove_home = true } }

it "passes --remove parameter" do
expect(Yast::Execute).to receive(:on_target!) do |cmd, *args|
expect(args).to include "--remove"
end

action.perform
end
end
end
end


0 comments on commit 322cf75

Please sign in to comment.