mirror of https://github.com/linkerd/linkerd2.git
50 lines
1.2 KiB
Go
50 lines
1.2 KiB
Go
package cmd
|
|
|
|
import (
|
|
"fmt"
|
|
"io/ioutil"
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/sergi/go-diff/diffmatchpatch"
|
|
)
|
|
|
|
func diffCompare(t *testing.T, actual string, expected string) {
|
|
if actual != expected {
|
|
dmp := diffmatchpatch.New()
|
|
diffs := dmp.DiffMain(expected, actual, true)
|
|
|
|
// colorized output for local testing
|
|
// t.Fatalf("Unexpected output:\n%+v", dmp.DiffPrettyText(diffs))
|
|
|
|
diffs = dmp.DiffCleanupSemantic(diffs)
|
|
patches := dmp.PatchMake(diffs)
|
|
patchText := dmp.PatchToText(patches)
|
|
t.Fatalf("Unexpected output:\n%+v", patchText)
|
|
}
|
|
}
|
|
|
|
/**
|
|
Attempts to read a file and return the contents of that file as a string.
|
|
readOptionalTestFile returns an empty string if the file name parameter being passed
|
|
in is an empty string.
|
|
**/
|
|
func readOptionalTestFile(t *testing.T, fileName string) string {
|
|
var fileData string
|
|
|
|
if fileName != "" {
|
|
file, err := os.Open(fmt.Sprintf("%s/%s", "testdata", fileName))
|
|
if err != nil {
|
|
t.Fatalf("Failed to open expected output file: %v", err)
|
|
}
|
|
|
|
goldenStdOutFile, err := ioutil.ReadAll(file)
|
|
if err != nil {
|
|
t.Fatalf("Failed to read expected output file: %v", err)
|
|
}
|
|
fileData = string(goldenStdOutFile)
|
|
}
|
|
|
|
return fileData
|
|
}
|