Skip to content

Commit 54aae19

Browse files
shiv-tyagiadombeck
authored andcommitted
pam: add test case Error_when_user_is_disabled while selecting broker
1 parent 0699d1c commit 54aae19

File tree

2 files changed

+29
-1
lines changed

2 files changed

+29
-1
lines changed

internal/services/pam/pam_test.go

+13-1
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,7 @@ func TestSelectBroker(t *testing.T) {
193193
brokerID string
194194
username string
195195
sessionMode string
196+
existingDB string
196197

197198
currentUserNotRoot bool
198199

@@ -209,13 +210,24 @@ func TestSelectBroker(t *testing.T) {
209210
"Error_when_broker_does_not_exist": {username: "no broker", brokerID: "does not exist", wantErr: true},
210211
"Error_when_broker_does_not_provide_a_session_ID": {username: "NS_no_id", wantErr: true},
211212
"Error_when_starting_the_session": {username: "NS_error", wantErr: true},
213+
"Error_when_user_is_disabled": {username: "disabled", wantErr: true, existingDB: "cache-with-disabled-user.db"},
212214
}
213215
for name, tc := range tests {
214216
t.Run(name, func(t *testing.T) {
215217
t.Parallel()
216218

219+
cacheDir := t.TempDir()
220+
if tc.existingDB != "" {
221+
err := db.Z_ForTests_CreateDBFromYAML(filepath.Join(testutils.TestFamilyPath(t), tc.existingDB), cacheDir)
222+
require.NoError(t, err, "Setup: could not create database from testdata")
223+
}
224+
225+
m, err := users.NewManager(users.DefaultConfig, cacheDir)
226+
require.NoError(t, err, "Setup: could not create user manager")
227+
t.Cleanup(func() { _ = m.Stop() })
228+
217229
pm := newPermissionManager(t, tc.currentUserNotRoot)
218-
client := newPamClient(t, nil, globalBrokerManager, &pm)
230+
client := newPamClient(t, m, globalBrokerManager, &pm)
219231

220232
switch tc.brokerID {
221233
case "":
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
users:
2+
- name: TestSelectBroker/Error_when_user_is_disabled_separator_disabled
3+
uid: 1111
4+
gid: 11111
5+
gecos: gecos for other user
6+
dir: /home/disabled
7+
shell: /bin/bash
8+
broker_id: broker-id
9+
disabled: true
10+
groups:
11+
- name: group1
12+
gid: 11111
13+
ugid: ugid
14+
users_to_groups:
15+
- uid: 1111
16+
gid: 11111

0 commit comments

Comments
 (0)