123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- package flags
- import (
- "fmt"
- "testing"
- "github.com/zeromicro/go-zero/tools/goctl/test"
- )
- func TestFlags_Get(t *testing.T) {
- setTestData(t, []byte(`{"host":"0.0.0.0","port":8888,"service":{"host":"{{.host}}","port":"{{.port}}","invalid":"{{.service.invalid}}"}}`))
- f := MustLoad()
- executor := test.NewExecutor[string, string]()
- executor.Add([]test.Data[string, string]{
- {
- Name: "key_host",
- Input: "host",
- Want: "0.0.0.0",
- },
- {
- Name: "key_port",
- Input: "port",
- Want: "8888",
- },
- {
- Name: "key_service.host",
- Input: "service.host",
- Want: "0.0.0.0",
- },
- {
- Name: "key_service.port",
- Input: "service.port",
- Want: "8888",
- },
- {
- Name: "key_not_exists",
- Input: "service.port.invalid",
- },
- {
- Name: "key_service.invalid",
- Input: "service.invalid",
- E: fmt.Errorf("the variable can not be self: %q", "service.invalid"),
- },
- }...)
- executor.RunE(t, f.Get)
- }
- func Test_Get(t *testing.T) {
- setTestData(t, []byte(`{"host":"0.0.0.0","port":8888,"service":{"host":"{{.host}}","port":"{{.port}}","invalid":"{{.service.invalid}}"}}`))
- executor := test.NewExecutor[string, string]()
- executor.Add([]test.Data[string, string]{
- {
- Name: "key_host",
- Input: "host",
- Want: "0.0.0.0",
- },
- {
- Name: "key_port",
- Input: "port",
- Want: "8888",
- },
- {
- Name: "key_service.host",
- Input: "service.host",
- Want: "0.0.0.0",
- },
- {
- Name: "key_service.port",
- Input: "service.port",
- Want: "8888",
- },
- {
- Name: "key_not_exists",
- Input: "service.port.invalid",
- },
- }...)
- executor.Run(t, Get)
- }
|