| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- package extra
- import (
- "github.com/json-iterator/go"
- "github.com/stretchr/testify/require"
- "testing"
- )
- func Test_lower_case_with_underscores(t *testing.T) {
- should := require.New(t)
- should.Equal("hello_world", LowerCaseWithUnderscores("helloWorld"))
- should.Equal("hello_world", LowerCaseWithUnderscores("HelloWorld"))
- SetNamingStrategy(LowerCaseWithUnderscores)
- output, err := jsoniter.Marshal(struct {
- UserName string
- FirstLanguage string
- }{
- UserName: "taowen",
- FirstLanguage: "Chinese",
- })
- should.Nil(err)
- should.Equal(`{"user_name":"taowen","first_language":"Chinese"}`, string(output))
- }
- func Test_set_naming_strategy_with_overrides(t *testing.T) {
- should := require.New(t)
- SetNamingStrategy(LowerCaseWithUnderscores)
- output, err := jsoniter.Marshal(struct {
- UserName string `json:"UserName"`
- FirstLanguage string
- }{
- UserName: "taowen",
- FirstLanguage: "Chinese",
- })
- should.Nil(err)
- should.Equal(`{"UserName":"taowen","first_language":"Chinese"}`, string(output))
- }
- func Test_set_naming_strategy_with_omitempty(t *testing.T) {
- should := require.New(t)
- SetNamingStrategy(LowerCaseWithUnderscores)
- output, err := jsoniter.Marshal(struct {
- UserName string
- FirstLanguage string `json:",omitempty"`
- }{
- UserName: "taowen",
- })
- should.Nil(err)
- should.Equal(`{"user_name":"taowen"}`, string(output))
- }
|