github.com/goreleaser/goreleaser@v1.25.1/internal/deprecate/deprecate_test.go (about)

     1  package deprecate
     2  
     3  import (
     4  	"bytes"
     5  	"testing"
     6  
     7  	"github.com/caarlos0/log"
     8  	"github.com/charmbracelet/lipgloss"
     9  	"github.com/goreleaser/goreleaser/internal/golden"
    10  	"github.com/goreleaser/goreleaser/internal/testctx"
    11  	"github.com/muesli/termenv"
    12  	"github.com/stretchr/testify/require"
    13  )
    14  
    15  func TestNotice(t *testing.T) {
    16  	lipgloss.SetColorProfile(termenv.Ascii)
    17  
    18  	var w bytes.Buffer
    19  	log.Log = log.New(&w)
    20  
    21  	log.Info("first")
    22  	ctx := testctx.New()
    23  	Notice(ctx, "foo.bar.whatever: foobar")
    24  	log.Info("last")
    25  	require.True(t, ctx.Deprecated)
    26  
    27  	golden.RequireEqualTxt(t, w.Bytes())
    28  }
    29  
    30  func TestNoticeCustom(t *testing.T) {
    31  	lipgloss.SetColorProfile(termenv.Ascii)
    32  
    33  	var w bytes.Buffer
    34  	log.Log = log.New(&w)
    35  
    36  	log.Info("first")
    37  	ctx := testctx.New()
    38  	NoticeCustom(ctx, "something-else", "some custom template with a url {{ .URL }}")
    39  	log.Info("last")
    40  	require.True(t, ctx.Deprecated)
    41  
    42  	golden.RequireEqualTxt(t, w.Bytes())
    43  }