mirror of https://github.com/go-gitea/gitea.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
970 B
38 lines
970 B
// Copyright 2025 The Gitea Authors. All rights reserved. |
|
// SPDX-License-Identifier: MIT |
|
|
|
package cmd |
|
|
|
import ( |
|
"context" |
|
"testing" |
|
|
|
"github.com/stretchr/testify/assert" |
|
"github.com/urfave/cli/v3" |
|
) |
|
|
|
func TestDefaultCommand(t *testing.T) { |
|
test := func(t *testing.T, args []string, expectedRetName string, expectedRetValid bool) { |
|
called := false |
|
cmd := &cli.Command{ |
|
DefaultCommand: "test", |
|
Commands: []*cli.Command{ |
|
{ |
|
Name: "test", |
|
Action: func(ctx context.Context, command *cli.Command) error { |
|
retName, retValid := isValidDefaultSubCommand(command) |
|
assert.Equal(t, expectedRetName, retName) |
|
assert.Equal(t, expectedRetValid, retValid) |
|
called = true |
|
return nil |
|
}, |
|
}, |
|
}, |
|
} |
|
assert.NoError(t, cmd.Run(t.Context(), args)) |
|
assert.True(t, called) |
|
} |
|
test(t, []string{"./gitea"}, "", true) |
|
test(t, []string{"./gitea", "test"}, "", true) |
|
test(t, []string{"./gitea", "other"}, "other", false) |
|
}
|
|
|