Initial commit of Descrybe v2 without local scratch artifacts.
Drop one-shot tmp/axe scripts and agent i18n scratch so the Gitea tree is deployable.
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"strings"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestDecideMembershipPromoteSkipsA1(t *testing.T) {
|
||||
t.Parallel()
|
||||
mutate, reason := decideMembershipPromote(true, true)
|
||||
if mutate || reason != "a1_cohort" {
|
||||
t.Fatalf("a1=true must never promote (even with -confirm): mutate=%v reason=%q", mutate, reason)
|
||||
}
|
||||
mutate, reason = decideMembershipPromote(true, false)
|
||||
if !mutate || reason != "" {
|
||||
t.Fatalf("non-A1 should promote: mutate=%v reason=%q", mutate, reason)
|
||||
}
|
||||
mutate, reason = decideMembershipPromote(false, true)
|
||||
if mutate || reason != "" {
|
||||
t.Fatalf("list-only: mutate=%v reason=%q", mutate, reason)
|
||||
}
|
||||
}
|
||||
|
||||
func TestValidatePromoteTargets(t *testing.T) {
|
||||
t.Parallel()
|
||||
if err := validatePromoteTargets(false, "", "", ""); err != nil {
|
||||
t.Fatalf("list-only: %v", err)
|
||||
}
|
||||
if err := validatePromoteTargets(true, "a@b.c", "", ""); err != nil {
|
||||
t.Fatalf("email: %v", err)
|
||||
}
|
||||
if err := validatePromoteTargets(true, "", "11111111-1111-1111-1111-111111111111", ""); err != nil {
|
||||
t.Fatalf("user-id: %v", err)
|
||||
}
|
||||
if err := validatePromoteTargets(true, "", "", "22222222-2222-2222-2222-222222222222"); err != nil {
|
||||
t.Fatalf("company-id alone: %v", err)
|
||||
}
|
||||
err := validatePromoteTargets(true, "", "", "")
|
||||
if err == nil || !strings.Contains(err.Error(), "requires -email, -user-id, or -company-id") {
|
||||
t.Fatalf("expected unscoped refuse, got %v", err)
|
||||
}
|
||||
err = validatePromoteTargets(true, " ", " ", " ")
|
||||
if err == nil || !strings.Contains(err.Error(), "requires -email, -user-id, or -company-id") {
|
||||
t.Fatalf("expected blank refuse, got %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGuardLiveMutation(t *testing.T) {
|
||||
t.Parallel()
|
||||
if err := guardLiveMutation(false, false, false, "-promote-company-admins"); err != nil {
|
||||
t.Fatalf("list-only: %v", err)
|
||||
}
|
||||
if err := guardLiveMutation(true, true, false, "-promote-company-admins"); err != nil {
|
||||
t.Fatalf("dry-run: %v", err)
|
||||
}
|
||||
if err := guardLiveMutation(true, false, true, "-promote-company-admins"); err != nil {
|
||||
t.Fatalf("confirm: %v", err)
|
||||
}
|
||||
err := guardLiveMutation(true, false, false, "-promote-company-admins")
|
||||
if err == nil || !strings.Contains(err.Error(), "no blind live writes") {
|
||||
t.Fatalf("expected blind-write refusal, got %v", err)
|
||||
}
|
||||
if !strings.Contains(err.Error(), "-promote-company-admins") {
|
||||
t.Fatalf("expected flag hint in error, got %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGuardLiveAssignDelegates(t *testing.T) {
|
||||
t.Parallel()
|
||||
err := guardLiveAssign(true, false, false)
|
||||
if err == nil || !strings.Contains(err.Error(), "-assign-missing-plans") {
|
||||
t.Fatalf("expected assign hint, got %v", err)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user