28 lines
842 B
Go
28 lines
842 B
Go
package main
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
func TestValidateScopeOverlapRejectsAllowedForbiddenConflict(t *testing.T) {
|
|
err := validateScopeOverlap([]string{"cmd/creator-web/server.go"}, []string{"cmd/creator-web/**"})
|
|
if err == nil || !strings.Contains(err.Error(), "overlaps forbidden") {
|
|
t.Fatalf("overlap error = %v", err)
|
|
}
|
|
}
|
|
|
|
func TestValidateRequiredTestsRejectsIncompleteEvidence(t *testing.T) {
|
|
err := validateRequiredTests([]string{"go test ./..."})
|
|
if err == nil || !strings.Contains(err.Error(), "missing required governance evidence") {
|
|
t.Fatalf("required test error = %v", err)
|
|
}
|
|
}
|
|
|
|
func TestValidateDeltaRejectsUnknownOrMissingFields(t *testing.T) {
|
|
err := validateDelta(map[string]int{"new_privileges": 0})
|
|
if err == nil || !strings.Contains(err.Error(), "exactly") {
|
|
t.Fatalf("delta error = %v", err)
|
|
}
|
|
}
|