From 24948b042935366bc4acdd80c42e008b75001539 Mon Sep 17 00:00:00 2001 From: pippellia-btc Date: Tue, 17 Jun 2025 12:09:24 +0200 Subject: [PATCH] log when walks don't match the expected number --- pkg/walks/walks.go | 4 +-- pkg/walks/walks_test.go | 58 ++++++++++++----------------------------- 2 files changed, 19 insertions(+), 43 deletions(-) diff --git a/pkg/walks/walks.go b/pkg/walks/walks.go index 70cb198..8f2b706 100644 --- a/pkg/walks/walks.go +++ b/pkg/walks/walks.go @@ -5,6 +5,7 @@ import ( "context" "errors" "fmt" + "log" "math/rand/v2" "slices" @@ -184,9 +185,8 @@ func ToRemove(node graph.ID, walks []Walk) ([]Walk, error) { } if len(toRemove) != N { - return nil, fmt.Errorf("ToRemove: %w: %d", ErrInvalidRemoval, len(toRemove)) + log.Printf("ToRemove: %v: %d", ErrInvalidRemoval, len(toRemove)) } - return toRemove, nil } diff --git a/pkg/walks/walks_test.go b/pkg/walks/walks_test.go index 4e1044f..ddac7e9 100644 --- a/pkg/walks/walks_test.go +++ b/pkg/walks/walks_test.go @@ -2,7 +2,6 @@ package walks import ( "context" - "errors" "fmt" "math" "reflect" @@ -56,49 +55,26 @@ func TestGenerate(t *testing.T) { } func TestToRemove(t *testing.T) { - N = 3 - tests := []struct { - name string - walks []Walk - toRemove []Walk - err error - }{ - { - name: "no walks", - err: ErrInvalidRemoval, - }, - { - name: "too few walks to remove", - walks: []Walk{{Path: []graph.ID{"0", "1"}}}, - err: ErrInvalidRemoval, - }, - { - name: "valid", - walks: []Walk{ - {Path: []graph.ID{"0", "1"}}, - {Path: []graph.ID{"0", "2"}}, - {Path: []graph.ID{"0", "3"}}, - {Path: []graph.ID{"1", "0"}}, - }, - toRemove: []Walk{ - {Path: []graph.ID{"0", "1"}}, - {Path: []graph.ID{"0", "2"}}, - {Path: []graph.ID{"0", "3"}}, - }, - }, + walks := []Walk{ + {Path: []graph.ID{"0", "1"}}, + {Path: []graph.ID{"0", "2"}}, + {Path: []graph.ID{"0", "3"}}, + {Path: []graph.ID{"1", "0"}}, } - for _, test := range tests { - t.Run(test.name, func(t *testing.T) { - toRemove, err := ToRemove("0", test.walks) - if !errors.Is(err, test.err) { - t.Fatalf("expected error %v, got %v", test.err, err) - } + expected := []Walk{ + {Path: []graph.ID{"0", "1"}}, + {Path: []graph.ID{"0", "2"}}, + {Path: []graph.ID{"0", "3"}}, + } - if !reflect.DeepEqual(toRemove, test.toRemove) { - t.Fatalf("expected walks to remove %v, got %v", test.toRemove, toRemove) - } - }) + toRemove, err := ToRemove("0", walks) + if err != nil { + t.Fatalf("expected error nil, got %v", err) + } + + if !reflect.DeepEqual(toRemove, expected) { + t.Fatalf("expected walks to remove %v, got %v", expected, toRemove) } }