Files
larksuite-cli/internal/cmdutil/annotations_test.go
梁硕 c0fef4bf6b feat: add strict mode identity filter, profile management and credential extension
Port changes from feat/strict-mode-identity-filter_3 branch:
- Add strict mode for identity filtering and configuration
- Add profile management commands (add/list/remove/rename/use)
- Add credential extension framework (registry, env provider)
- Add VFS abstraction layer
- Refactor factory default and client options
- Update shortcuts to use new credential and validation patterns

Change-Id: I8c104c6b147e1901d94aefcefe35a174932c742b
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-03 20:04:46 +08:00

76 lines
2.0 KiB
Go

// Copyright (c) 2026 Lark Technologies Pte. Ltd.
// SPDX-License-Identifier: MIT
package cmdutil
import (
"testing"
"github.com/spf13/cobra"
)
func TestDisableAuthCheck(t *testing.T) {
cmd := &cobra.Command{Use: "test"}
if IsAuthCheckDisabled(cmd) {
t.Error("expected auth check to be enabled by default")
}
DisableAuthCheck(cmd)
if !IsAuthCheckDisabled(cmd) {
t.Error("expected auth check to be disabled after DisableAuthCheck")
}
}
func TestIsAuthCheckDisabled_Inheritance(t *testing.T) {
parent := &cobra.Command{Use: "parent"}
child := &cobra.Command{Use: "child"}
parent.AddCommand(child)
if IsAuthCheckDisabled(child) {
t.Error("expected child auth check enabled before parent annotation")
}
DisableAuthCheck(parent)
if !IsAuthCheckDisabled(child) {
t.Error("expected child to inherit disabled auth check from parent")
}
}
func TestIsAuthCheckDisabled_NoInheritanceUpward(t *testing.T) {
parent := &cobra.Command{Use: "parent"}
child := &cobra.Command{Use: "child"}
parent.AddCommand(child)
DisableAuthCheck(child)
if IsAuthCheckDisabled(parent) {
t.Error("parent should not inherit disabled auth check from child")
}
if !IsAuthCheckDisabled(child) {
t.Error("child should have disabled auth check")
}
}
func TestSetGetSupportedIdentities(t *testing.T) {
cmd := &cobra.Command{Use: "test"}
if got := GetSupportedIdentities(cmd); got != nil {
t.Errorf("expected nil, got %v", got)
}
SetSupportedIdentities(cmd, []string{"user", "bot"})
got := GetSupportedIdentities(cmd)
if len(got) != 2 || got[0] != "user" || got[1] != "bot" {
t.Errorf("expected [user bot], got %v", got)
}
}
func TestSetSupportedIdentities_OverwriteExisting(t *testing.T) {
cmd := &cobra.Command{Use: "test", Annotations: map[string]string{"other": "val"}}
SetSupportedIdentities(cmd, []string{"bot"})
if cmd.Annotations["other"] != "val" {
t.Error("existing annotation should be preserved")
}
got := GetSupportedIdentities(cmd)
if len(got) != 1 || got[0] != "bot" {
t.Errorf("expected [bot], got %v", got)
}
}