github.com/joselitofilho/goreleaser@v0.155.1-0.20210123221854-e4891856c593/pkg/context/context_test.go (about)

     1  package context
     2  
     3  import (
     4  	"os"
     5  	"testing"
     6  	"time"
     7  
     8  	"github.com/goreleaser/goreleaser/pkg/config"
     9  	"github.com/stretchr/testify/require"
    10  )
    11  
    12  func TestNew(t *testing.T) {
    13  	require.NoError(t, os.Setenv("FOO", "NOT BAR"))
    14  	require.NoError(t, os.Setenv("BAR", "1"))
    15  	var ctx = New(config.Project{
    16  		Env: []string{
    17  			"FOO=BAR",
    18  		},
    19  	})
    20  	require.Equal(t, "BAR", ctx.Env["FOO"])
    21  	require.Equal(t, "1", ctx.Env["BAR"])
    22  	require.Equal(t, 4, ctx.Parallelism)
    23  }
    24  
    25  func TestNewWithTimeout(t *testing.T) {
    26  	ctx, cancel := NewWithTimeout(config.Project{}, time.Second)
    27  	require.NotEmpty(t, ctx.Env)
    28  	require.Equal(t, 4, ctx.Parallelism)
    29  	cancel()
    30  	<-ctx.Done()
    31  	require.EqualError(t, ctx.Err(), `context canceled`)
    32  }