Public source validation / validate (push) Failing after 3m8s
23 lines
899 B
Go
23 lines
899 B
Go
package service
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/itworx/pulse/internal/reverseproxy"
|
|
)
|
|
|
|
func TestBuildTopologyWithRoutesPreservesRouteSourceAndConfirmedOverride(t *testing.T) {
|
|
now := time.Date(2026, 8, 2, 12, 0, 0, 0, time.UTC)
|
|
topology, err := BuildTopologyWithRoutes(Snapshot{ObservedAt: now, Services: []ServiceStatus{{ID: "svc-a", Name: "API", State: StateUp}}}, nil, []reverseproxy.Route{{ID: "host-1", URL: "https://pulse.example.test", SourceID: "npm", TargetServiceID: "svc-a", Enabled: true, Overridden: true}}, 10, 10)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if len(topology.Nodes) != 2 || len(topology.Edges) != 1 {
|
|
t.Fatalf("unexpected route topology: %+v", topology)
|
|
}
|
|
if topology.Edges[0].SourceID != "npm" || !topology.Edges[0].Confirmed || topology.Edges[0].RelationType != RelationExposes {
|
|
t.Fatalf("route provenance was not preserved: %+v", topology.Edges[0])
|
|
}
|
|
}
|