github.com/containers/podman/v4@v4.9.4/libpod/container_internal_linux_test.go (about) 1 //go:build !remote 2 // +build !remote 3 4 package libpod 5 6 import ( 7 "testing" 8 9 spec "github.com/opencontainers/runtime-spec/specs-go" 10 "github.com/stretchr/testify/assert" 11 ) 12 13 func TestGenerateUserPasswdEntry(t *testing.T) { 14 c := Container{ 15 config: &ContainerConfig{ 16 Spec: &spec.Spec{}, 17 ContainerSecurityConfig: ContainerSecurityConfig{ 18 User: "123456:456789", 19 }, 20 }, 21 state: &ContainerState{ 22 Mountpoint: "/does/not/exist/tmp/", 23 }, 24 } 25 user, err := c.generateUserPasswdEntry(0) 26 if err != nil { 27 t.Fatal(err) 28 } 29 assert.Equal(t, user, "123456:*:123456:456789:container user:/:/bin/sh\n") 30 31 c.config.User = "567890" 32 user, err = c.generateUserPasswdEntry(0) 33 if err != nil { 34 t.Fatal(err) 35 } 36 assert.Equal(t, user, "567890:*:567890:0:container user:/:/bin/sh\n") 37 } 38 39 func TestGenerateUserGroupEntry(t *testing.T) { 40 c := Container{ 41 config: &ContainerConfig{ 42 Spec: &spec.Spec{}, 43 ContainerSecurityConfig: ContainerSecurityConfig{ 44 User: "123456:456789", 45 }, 46 }, 47 state: &ContainerState{ 48 Mountpoint: "/does/not/exist/tmp/", 49 }, 50 } 51 group, err := c.generateUserGroupEntry(0) 52 if err != nil { 53 t.Fatal(err) 54 } 55 assert.Equal(t, group, "456789:x:456789:123456\n") 56 57 c.config.User = "567890" 58 group, err = c.generateUserGroupEntry(0) 59 if err != nil { 60 t.Fatal(err) 61 } 62 assert.Equal(t, group, "567890:x:567890:567890\n") 63 }