test(teams-members): cover metadata, subcommand registration, and confirm flag

Verify the parent command's name, aliases, and subcommand set, plus
metadata and --confirm flag presence on each delete subcommand.
This commit is contained in:
Ross Golder 2026-07-30 10:27:20 +07:00
parent c8f75c9975
commit d8aa859811
No known key found for this signature in database
GPG key ID: 253A7E508D2D59CD

View file

@ -0,0 +1,67 @@
// Copyright 2026 The Gitea Authors. All rights reserved.
// SPDX-License-Identifier: MIT
package members
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestMembersCommandMetadata(t *testing.T) {
cmd := &CmdTeamsMembers
assert.Equal(t, "members", cmd.Name)
assert.Contains(t, cmd.Aliases, "member")
assert.Equal(t, "Manage team members", cmd.Usage)
assert.NotNil(t, cmd.Action)
}
func TestMembersSubcommandsRegistered(t *testing.T) {
want := []string{"list", "create", "delete"}
have := make(map[string]bool, len(want))
for _, sub := range CmdTeamsMembers.Commands {
have[sub.Name] = true
}
for _, name := range want {
assert.True(t, have[name], "expected subcommand %q not registered", name)
}
}
func TestMembersListMetadata(t *testing.T) {
cmd := &CmdTeamsMembersList
assert.Equal(t, "list", cmd.Name)
assert.Contains(t, cmd.Aliases, "ls")
assert.Equal(t, "<team-id>", cmd.ArgsUsage)
assert.NotNil(t, cmd.Action)
}
func TestMembersCreateMetadata(t *testing.T) {
cmd := &CmdTeamsMembersCreate
assert.Equal(t, "create", cmd.Name)
for _, want := range []string{"add", "c"} {
assert.Contains(t, cmd.Aliases, want)
}
assert.Equal(t, "<team-id> <username>", cmd.ArgsUsage)
assert.NotNil(t, cmd.Action)
}
func TestMembersDeleteMetadata(t *testing.T) {
cmd := &CmdTeamsMembersDelete
assert.Equal(t, "delete", cmd.Name)
for _, want := range []string{"rm", "remove"} {
assert.Contains(t, cmd.Aliases, want)
}
assert.Equal(t, "<team-id> <username>", cmd.ArgsUsage)
assert.NotNil(t, cmd.Action)
}
func TestMembersDeleteHasConfirmFlag(t *testing.T) {
for _, flag := range CmdTeamsMembersDelete.Flags {
if flag.Names()[0] == "confirm" {
return
}
}
t.Fatal("expected --confirm flag on members delete")
}