Files
open-cluster-management/pkg/cmd/hub/work_test.go
Jian Qiu f9d4628f17 Enhance test coverage (#1174)
Signed-off-by: Jian Qiu <jqiu@redhat.com>
2025-09-11 07:26:59 +00:00

73 lines
1.6 KiB
Go

package hub
import (
"testing"
"github.com/spf13/cobra"
)
func TestNewWorkController(t *testing.T) {
cmd := NewWorkController()
if cmd == nil {
t.Fatal("NewWorkController() returned nil")
}
// Test command properties
if cmd.Use != "manager" {
t.Errorf("Expected Use to be 'manager', got %q", cmd.Use)
}
if cmd.Short != "Start the Work Hub Manager" {
t.Errorf("Expected Short to be 'Start the Work Hub Manager', got %q", cmd.Short)
}
// Test that flags are added
flags := cmd.Flags()
if flags == nil {
t.Error("Expected flags to be set")
}
// Verify command is runnable (has RunE or Run set)
if cmd.RunE == nil && cmd.Run == nil {
t.Error("Expected command to have RunE or Run set")
}
}
func TestWorkControllerFlags(t *testing.T) {
cmd := NewWorkController()
flags := cmd.Flags()
// Test that essential flags are present (from common options and work hub options)
if !flags.HasFlags() {
t.Error("Expected command to have flags")
}
// Test flag parsing with help
cmd.SetArgs([]string{"--help"})
err := cmd.Execute()
if err != nil {
t.Errorf("Flag parsing with --help failed: %v", err)
}
}
func TestWorkControllerCommandType(t *testing.T) {
cmd := NewWorkController()
// Verify it returns a cobra.Command
if _, ok := interface{}(cmd).(*cobra.Command); !ok {
t.Error("NewWorkController() should return *cobra.Command")
}
}
func TestWorkControllerCommandExecution(t *testing.T) {
cmd := NewWorkController()
// Test command execution with help flag
cmd.SetArgs([]string{"--help"})
err := cmd.Execute()
if err != nil {
t.Errorf("Command execution with --help failed: %v", err)
}
}