123456789101112131415161718192021222324252627282930313233343536373839 |
- package tsgen
- import (
- "testing"
- "github.com/stretchr/testify/assert"
- "github.com/wuntsong-org/go-zero-plus/tools/goctlwt/api/spec"
- )
- func TestGenTsType(t *testing.T) {
- member := spec.Member{
- Name: "foo",
- Type: spec.PrimitiveType{RawName: "string"},
- Tag: `json:"foo,options=foo|bar|options|123"`,
- Comment: "",
- Docs: nil,
- IsInline: false,
- }
- ty, err := genTsType(member)
- if err != nil {
- t.Fatal(err)
- }
- assert.Equal(t, `'foo' | 'bar' | 'options' | '123'`, ty)
- member.IsInline = true
- ty, err = genTsType(member)
- if err != nil {
- t.Fatal(err)
- }
- assert.Equal(t, `'foo' | 'bar' | 'options' | '123'`, ty)
- member.Type = spec.PrimitiveType{RawName: "int"}
- member.Tag = `json:"foo,options=1|3|4|123"`
- ty, err = genTsType(member)
- if err != nil {
- t.Fatal(err)
- }
- assert.Equal(t, `1 | 3 | 4 | 123`, ty)
- }
|