Files
go-sip/internal/contract/event_identity_test.go
T

34 lines
847 B
Go

package contract
import (
"encoding/json"
"os"
"path/filepath"
"testing"
)
func TestCurrentCallExamplesRetainOriginalEventIdentity(t *testing.T) {
var originalID string
for _, name := range []string{"mq-execute", "mq-execute-ack", "mq-result-no-recording", "mq-result-uploaded"} {
raw, err := os.ReadFile(filepath.Join("..", "..", "contracts", "schema", "examples", name+".json"))
if err != nil {
t.Fatal(err)
}
if err := ValidateCurrent("mq", raw); err != nil {
t.Fatalf("%s: %v", name, err)
}
var event struct {
EventID string `json:"event_id"`
}
if err := json.Unmarshal(raw, &event); err != nil {
t.Fatal(err)
}
if originalID == "" {
originalID = event.EventID
}
if event.EventID != originalID {
t.Fatalf("%s changed source identity: want=%q got=%q", name, originalID, event.EventID)
}
}
}