github.com/docker/docker-ce@v17.12.1-ce-rc2+incompatible/components/cli/opts/secret_test.go (about) 1 package opts 2 3 import ( 4 "os" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 "github.com/stretchr/testify/require" 9 ) 10 11 func TestSecretOptionsSimple(t *testing.T) { 12 var opt SecretOpt 13 14 testCase := "app-secret" 15 assert.NoError(t, opt.Set(testCase)) 16 17 reqs := opt.Value() 18 require.Len(t, reqs, 1) 19 req := reqs[0] 20 assert.Equal(t, "app-secret", req.SecretName) 21 assert.Equal(t, "app-secret", req.File.Name) 22 assert.Equal(t, "0", req.File.UID) 23 assert.Equal(t, "0", req.File.GID) 24 } 25 26 func TestSecretOptionsSourceTarget(t *testing.T) { 27 var opt SecretOpt 28 29 testCase := "source=foo,target=testing" 30 assert.NoError(t, opt.Set(testCase)) 31 32 reqs := opt.Value() 33 require.Len(t, reqs, 1) 34 req := reqs[0] 35 assert.Equal(t, "foo", req.SecretName) 36 assert.Equal(t, "testing", req.File.Name) 37 } 38 39 func TestSecretOptionsShorthand(t *testing.T) { 40 var opt SecretOpt 41 42 testCase := "src=foo,target=testing" 43 assert.NoError(t, opt.Set(testCase)) 44 45 reqs := opt.Value() 46 require.Len(t, reqs, 1) 47 req := reqs[0] 48 assert.Equal(t, "foo", req.SecretName) 49 } 50 51 func TestSecretOptionsCustomUidGid(t *testing.T) { 52 var opt SecretOpt 53 54 testCase := "source=foo,target=testing,uid=1000,gid=1001" 55 assert.NoError(t, opt.Set(testCase)) 56 57 reqs := opt.Value() 58 require.Len(t, reqs, 1) 59 req := reqs[0] 60 assert.Equal(t, "foo", req.SecretName) 61 assert.Equal(t, "testing", req.File.Name) 62 assert.Equal(t, "1000", req.File.UID) 63 assert.Equal(t, "1001", req.File.GID) 64 } 65 66 func TestSecretOptionsCustomMode(t *testing.T) { 67 var opt SecretOpt 68 69 testCase := "source=foo,target=testing,uid=1000,gid=1001,mode=0444" 70 assert.NoError(t, opt.Set(testCase)) 71 72 reqs := opt.Value() 73 require.Len(t, reqs, 1) 74 req := reqs[0] 75 assert.Equal(t, "foo", req.SecretName) 76 assert.Equal(t, "testing", req.File.Name) 77 assert.Equal(t, "1000", req.File.UID) 78 assert.Equal(t, "1001", req.File.GID) 79 assert.Equal(t, os.FileMode(0444), req.File.Mode) 80 }