github.com/olljanat/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  }