代码拉取完成,页面将自动刷新
package main
import (
"flag"
"reflect"
"testing"
)
func Test_gatherOptions(t *testing.T) {
cases := []struct {
name string
args map[string]string
expected func(*options)
err bool
}{
{
name: "minimal flags work",
},
{
name: "explicitly set --gitee-token",
args: map[string]string{
"--gitee-token": "/random/value",
},
expected: func(o *options) {
o.giteeToken = "/random/value"
},
},
{
name: "explicitly set --webhook-secret",
args: map[string]string{
"--webhook-secret": "/random/value",
},
expected: func(o *options) {
o.webhookSecret = "/random/value"
},
},
}
for _, tc := range cases {
t.Run(tc.name, func(t *testing.T) {
expected := &options{
port: 8765,
giteeToken: "token.conf",
webhookSecret: "secret.conf",
}
if tc.expected != nil {
tc.expected(expected)
}
argMap := map[string]string{}
for k, v := range tc.args {
argMap[k] = v
}
var args []string
for k, v := range argMap {
args = append(args, k+"="+v)
}
fs := flag.NewFlagSet("fake-flags", flag.PanicOnError)
actual := gatherOptions(fs, args...)
switch err := actual.Validate(); {
case err != nil:
if !tc.err {
t.Errorf("unexpected error: %v", err)
}
case tc.err:
t.Errorf("failed to receive expected error")
case !reflect.DeepEqual(*expected, actual):
t.Errorf("%#v != expected %#v", actual, *expected)
}
})
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。