go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/providers/os/resources/groups/dscache_test.go (about) 1 // Copyright (c) Mondoo, Inc. 2 // SPDX-License-Identifier: BUSL-1.1 3 4 package groups_test 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/assert" 10 "go.mondoo.com/cnquery/providers/os/connection/mock" 11 "go.mondoo.com/cnquery/providers/os/resources/groups" 12 ) 13 14 func TestParseDscacheutilResult(t *testing.T) { 15 mock, err := mock.New("./testdata/osx.toml", nil) 16 if err != nil { 17 t.Fatal(err) 18 } 19 20 c, err := mock.RunCommand("dscacheutil -q group") 21 if err != nil { 22 t.Fatal(err) 23 } 24 25 m, err := groups.ParseDscacheutilResult(c.Stdout) 26 assert.Nil(t, err) 27 assert.Equal(t, 3, len(m), "detected the right amount of groups") 28 29 grp := findGroup(m, "395") 30 assert.Equal(t, int64(395), grp.Gid, "detected group id") 31 assert.Equal(t, "com.apple.access_ftp", grp.Name, "detected group name") 32 assert.Equal(t, []string{}, grp.Members, "detected group members") 33 34 grp = findGroup(m, "216") 35 assert.Equal(t, int64(216), grp.Gid, "detected group id") 36 assert.Equal(t, "_postgres", grp.Name, "detected group name") 37 assert.Equal(t, []string{"_devicemgr", "_calendar", "_teamsserver", "_xserverdocs"}, grp.Members, "detected group members") 38 }