Compare commits

..

1 commit

Author SHA1 Message Date
Renovate Bot
ff1444f8e8 chore(deps): lock file maintenance 2026-02-01 01:36:38 +00:00
7 changed files with 27 additions and 22 deletions

6
flake.lock generated
View file

@ -2,11 +2,11 @@
"nodes": { "nodes": {
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1774386573, "lastModified": 1769461804,
"narHash": "sha256-4hAV26quOxdC6iyG7kYaZcM3VOskcPUrdCQd/nx8obc=", "narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "46db2e09e1d3f113a13c0d7b81e2f221c63b8ce9", "rev": "bfc1b8a4574108ceef22f02bafcf6611380c100d",
"type": "github" "type": "github"
}, },
"original": { "original": {

2
go.mod
View file

@ -4,7 +4,7 @@ go 1.23.0
require ( require (
github.com/akedrou/textdiff v0.1.0 github.com/akedrou/textdiff v0.1.0
github.com/rs/zerolog v1.35.0 github.com/rs/zerolog v1.34.0
github.com/spf13/pflag v1.0.10 github.com/spf13/pflag v1.0.10
github.com/stretchr/testify v1.11.1 github.com/stretchr/testify v1.11.1
) )

2
go.sum
View file

@ -34,8 +34,6 @@ github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUc
github.com/rs/xid v1.6.0/go.mod h1:7XoLgs4eV+QndskICGsho+ADou8ySMSjJKDIan90Nz0= github.com/rs/xid v1.6.0/go.mod h1:7XoLgs4eV+QndskICGsho+ADou8ySMSjJKDIan90Nz0=
github.com/rs/zerolog v1.34.0 h1:k43nTLIwcTVQAncfCw4KZ2VY6ukYoZaBPNOE8txlOeY= github.com/rs/zerolog v1.34.0 h1:k43nTLIwcTVQAncfCw4KZ2VY6ukYoZaBPNOE8txlOeY=
github.com/rs/zerolog v1.34.0/go.mod h1:bJsvje4Z08ROH4Nhs5iH600c3IkWhwp44iRc54W6wYQ= github.com/rs/zerolog v1.34.0/go.mod h1:bJsvje4Z08ROH4Nhs5iH600c3IkWhwp44iRc54W6wYQ=
github.com/rs/zerolog v1.35.0 h1:VD0ykx7HMiMJytqINBsKcbLS+BJ4WYjz+05us+LRTdI=
github.com/rs/zerolog v1.35.0/go.mod h1:EjML9kdfa/RMA7h/6z6pYmq1ykOuA8/mjWaEvGI+jcw=
github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8=
github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I=
github.com/sergi/go-diff v1.4.0 h1:n/SP9D5ad1fORl+llWyN+D6qoUETXNZARKjyY2/KVCw= github.com/sergi/go-diff v1.4.0 h1:n/SP9D5ad1fORl+llWyN+D6qoUETXNZARKjyY2/KVCw=

View file

@ -10,6 +10,7 @@ import (
"github.com/jedib0t/go-pretty/v6/table" "github.com/jedib0t/go-pretty/v6/table"
"github.com/jedib0t/go-pretty/v6/text" "github.com/jedib0t/go-pretty/v6/text"
"github.com/rs/zerolog/log" "github.com/rs/zerolog/log"
"github.com/sergi/go-diff/diffmatchpatch"
"gitlab.com/TECHNOFAB/nixtest/internal/types" "gitlab.com/TECHNOFAB/nixtest/internal/types"
"gitlab.com/TECHNOFAB/nixtest/internal/util" "gitlab.com/TECHNOFAB/nixtest/internal/util"
) )
@ -24,11 +25,17 @@ func PrintErrors(results types.Results, noColor bool) {
fmt.Println(text.FgRed.Sprintf("⚠ Test \"%s/%s\" failed:", result.Spec.Suite, result.Spec.Name)) fmt.Println(text.FgRed.Sprintf("⚠ Test \"%s/%s\" failed:", result.Spec.Suite, result.Spec.Name))
message := result.ErrorMessage message := result.ErrorMessage
if result.Status == types.StatusFailure && message == "" { if result.Status == types.StatusFailure && message == "" {
if noColor {
var err error var err error
message, err = util.ComputeDiff(result.Expected, result.Actual) message, err = util.ComputeDiff(result.Expected, result.Actual)
if err != nil { if err != nil {
log.Panic().Err(err).Msg("failed to compute diff") 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))
}
} }
if message == "" { if message == "" {

View file

@ -11,16 +11,16 @@ function assert_not_eq() {
assert "$1 -ne $2" "$3" assert "$1 -ne $2" "$3"
} }
function assert_contains() { function assert_contains() {
echo -n "$1" | grep -q -- "$2" || { echo "$1" | grep -q -- "$2" || {
echo "Assertion failed: $3. The following does not contain $2: $1" >&2; echo "Assertion failed: $3. $1 does not contain $2" >&2;
exit 1; exit 1;
} }
} }
function assert_not_contains() { function assert_not_contains() {
echo -n "$1" | grep -q -- "$2" && { echo "$1" | grep -q -- "$2" && {
echo "Assertion failed: $3. The following does contain $2: $1" >&2; echo "Assertion failed: $3. $1 does contain $2" >&2;
exit 1; exit 1;
} || true }
} }
function assert_file_contains() { function assert_file_contains() {
grep -q -- "$2" $1 || { grep -q -- "$2" $1 || {

12
nix/repo/flake.lock generated
View file

@ -38,11 +38,11 @@
"nixmkdocs-lib": { "nixmkdocs-lib": {
"locked": { "locked": {
"dir": "lib", "dir": "lib",
"lastModified": 1771673823, "lastModified": 1767549915,
"narHash": "sha256-1WFFaQZDPdTX1vL9BP+myIcgZjwvfxSUMGnUTrFmgVc=", "narHash": "sha256-by3r2qddlyzylup5fzSaDwtoy3eFHNKb65IuIq6bsAs=",
"owner": "TECHNOFAB", "owner": "TECHNOFAB",
"repo": "nixmkdocs", "repo": "nixmkdocs",
"rev": "deebf3dae19776200f9ef016ef6542bf9e17be8d", "rev": "f3b2f4b19178e97c5580367be0f97e61a085db6d",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {
@ -81,11 +81,11 @@
"treefmt-nix": { "treefmt-nix": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1773297127, "lastModified": 1769691507,
"narHash": "sha256-6E/yhXP7Oy/NbXtf1ktzmU8SdVqJQ09HC/48ebEGBpk=", "narHash": "sha256-8aAYwyVzSSwIhP2glDhw/G0i5+wOrren3v6WmxkVonM=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "71b125cd05fbfd78cab3e070b73544abe24c5016", "rev": "28b19c5844cc6e2257801d43f2772a4b4c050a1b",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -19,6 +19,6 @@ buildGoModule {
]; ];
}; };
subPackages = ["cmd/nixtest"]; subPackages = ["cmd/nixtest"];
vendorHash = "sha256-tojMKT5Mkt7GkdrA3sz8Y54bt26Td/tm/B0E1fwdp1Q="; vendorHash = "sha256-WF/lzu9lt9SR3WiA8LLWVT1OwpE3sIOtSqf4HMIMmE8=";
meta.mainProgram = "nixtest"; meta.mainProgram = "nixtest";
} }