github.com/panekj/cli@v0.0.0-20230304125325-467dd2f3797e/cli/command/cli_options_test.go (about)

     1  package command
     2  
     3  import (
     4  	"os"
     5  	"testing"
     6  
     7  	"gotest.tools/v3/assert"
     8  )
     9  
    10  func contentTrustEnabled(t *testing.T) bool {
    11  	var cli DockerCli
    12  	assert.NilError(t, WithContentTrustFromEnv()(&cli))
    13  	return cli.contentTrust
    14  }
    15  
    16  // NB: Do not t.Parallel() this test -- it messes with the process environment.
    17  func TestWithContentTrustFromEnv(t *testing.T) {
    18  	const envvar = "DOCKER_CONTENT_TRUST"
    19  	t.Setenv(envvar, "true")
    20  	assert.Check(t, contentTrustEnabled(t))
    21  	t.Setenv(envvar, "false")
    22  	assert.Check(t, !contentTrustEnabled(t))
    23  	t.Setenv(envvar, "invalid")
    24  	assert.Check(t, contentTrustEnabled(t))
    25  	os.Unsetenv(envvar)
    26  	assert.Check(t, !contentTrustEnabled(t))
    27  }