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