Skip to content

Commit

Permalink
golden: Add a var to disable normalization of crlf
Browse files Browse the repository at this point in the history
  • Loading branch information
dnephin committed Mar 29, 2020
1 parent e6000d7 commit dc13988
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions golden/golden.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,19 @@ type helperT interface {
Helper()
}

// NormalizeCRLFToLF enables end-of-line normalization for actual values passed
// to Assert and String, as well as the values saved to golden files with
// -test.update-golden.
//
// Defaults to true. If you use the core.autocrlf=true git setting on windows
// you will need to set this to false.
//
// The value may be set to false by setting GOTESTTOOLS_GOLDEN_NormalizeCRLFToLF=false
// in the environment before running tests.
//
// The default value may change in a future major release.
var NormalizeCRLFToLF = os.Getenv("GOTESTTOOLS_GOLDEN_NormalizeCRLFToLF") != "false"

// Open opens the file in ./testdata
func Open(t assert.TestingT, filename string) *os.File {
if ht, ok := t.(helperT); ok {
Expand Down Expand Up @@ -64,6 +77,9 @@ func update(filename string, actual []byte, normalize normalize) error {
type normalize func([]byte) []byte

func removeCarriageReturn(in []byte) []byte {
if !NormalizeCRLFToLF {
return in
}
return bytes.Replace(in, []byte("\r\n"), []byte("\n"), -1)
}

Expand Down

0 comments on commit dc13988

Please sign in to comment.