diff --git a/internal/report/console/console.go b/internal/report/console/console.go index efca37f..f660616 100644 --- a/internal/report/console/console.go +++ b/internal/report/console/console.go @@ -10,7 +10,6 @@ import ( "github.com/jedib0t/go-pretty/v6/table" "github.com/jedib0t/go-pretty/v6/text" "github.com/rs/zerolog/log" - "github.com/sergi/go-diff/diffmatchpatch" "gitlab.com/TECHNOFAB/nixtest/internal/types" "gitlab.com/TECHNOFAB/nixtest/internal/util" ) @@ -25,16 +24,10 @@ func PrintErrors(results types.Results, noColor bool) { fmt.Println(text.FgRed.Sprintf("⚠ Test \"%s/%s\" failed:", result.Spec.Suite, result.Spec.Name)) message := result.ErrorMessage if result.Status == types.StatusFailure && message == "" { - if noColor { - var err error - message, err = util.ComputeDiff(result.Expected, result.Actual) - if err != nil { - log.Panic().Err(err).Msg("failed to compute diff") - } - } else { - dmp := diffmatchpatch.New() - diffs := dmp.DiffMain(result.Expected, result.Actual, true) - message = fmt.Sprintf("Diff:\n%s", dmp.DiffPrettyText(diffs)) + var err error + message, err = util.ComputeDiff(result.Expected, result.Actual) + if err != nil { + log.Panic().Err(err).Msg("failed to compute diff") } } diff --git a/lib/scriptHelpers.sh b/lib/scriptHelpers.sh index b1e3514..ba08e47 100644 --- a/lib/scriptHelpers.sh +++ b/lib/scriptHelpers.sh @@ -11,16 +11,16 @@ function assert_not_eq() { assert "$1 -ne $2" "$3" } function assert_contains() { - echo "$1" | grep -q -- "$2" || { - echo "Assertion failed: $3. $1 does not contain $2" >&2; + echo -n "$1" | grep -q -- "$2" || { + echo "Assertion failed: $3. The following does not contain $2: $1" >&2; exit 1; } } function assert_not_contains() { - echo "$1" | grep -q -- "$2" && { - echo "Assertion failed: $3. $1 does contain $2" >&2; + echo -n "$1" | grep -q -- "$2" && { + echo "Assertion failed: $3. The following does contain $2: $1" >&2; exit 1; - } + } || true } function assert_file_contains() { grep -q -- "$2" $1 || {