github.com/solongordon/pop@v4.10.0+incompatible/soda/cmd/root_integration_test.go (about)

     1  package cmd
     2  
     3  import (
     4  	"os"
     5  	"testing"
     6  
     7  	"github.com/stretchr/testify/require"
     8  )
     9  
    10  func Test_RootCmd_NoArg(t *testing.T) {
    11  	oldEnv := os.Getenv("GO_ENV")
    12  	defer os.Setenv("GO_ENV", oldEnv)
    13  
    14  	// Fallback on default env
    15  	r := require.New(t)
    16  	c := RootCmd
    17  	c.SetArgs([]string{})
    18  	err := c.Execute()
    19  	r.NoError(err)
    20  	r.Equal("development", env)
    21  
    22  	// Override with GO_ENV
    23  	c.SetArgs([]string{})
    24  	os.Setenv("GO_ENV", "test")
    25  	err = c.Execute()
    26  	r.NoError(err)
    27  	r.Equal("test", env)
    28  
    29  	// CLI flag priority
    30  	c.SetArgs([]string{
    31  		"--env",
    32  		"production",
    33  	})
    34  	os.Setenv("GO_ENV", "test")
    35  	err = c.Execute()
    36  	r.NoError(err)
    37  	r.Equal("production", env)
    38  }