go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/providers/os/resources/windows/secpol_test.go (about) 1 // Copyright (c) Mondoo, Inc. 2 // SPDX-License-Identifier: BUSL-1.1 3 4 package windows 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/assert" 10 "github.com/stretchr/testify/require" 11 "go.mondoo.com/cnquery/providers/os/connection/mock" 12 "go.mondoo.com/cnquery/providers/os/resources/powershell" 13 ) 14 15 func TestParseSecpol(t *testing.T) { 16 mock, err := mock.New("./testdata/secpol.toml", nil) 17 require.NoError(t, err) 18 19 encoded := powershell.Encode(SecpolScript) 20 f, err := mock.RunCommand(encoded) 21 require.NoError(t, err) 22 23 secpol, err := ParseSecpol(f.Stdout) 24 require.NoError(t, err) 25 26 assert.Equal(t, "42", secpol.SystemAccess["MaximumPasswordAge"]) 27 assert.Equal(t, "chris", secpol.SystemAccess["NewAdministratorName"]) 28 assert.Equal(t, "0", secpol.EventAudit["AuditLogonEvents"]) 29 assert.Equal(t, []interface{}{"S-1-1-0", "S-1-5-32-544", "S-1-5-32-545", "S-1-5-32-551"}, secpol.PrivilegeRights["SeNetworkLogonRight"]) 30 assert.Equal(t, "3,0", secpol.RegistryValues["MACHINE\\System\\CurrentControlSet\\Control\\Lsa\\FullPrivilegeAuditing"]) 31 }