第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將測試數(shù)據(jù)傳遞到嵌套結(jié)構(gòu)

將測試數(shù)據(jù)傳遞到嵌套結(jié)構(gòu)

Go
森林海 2022-09-19 10:20:22
我正試圖掌握Go中的測試,我遇到了一些絆腳石。我有以下代碼:package mainimport (    "fmt"    "testing")type ConformanceChange struct {    Val   string    Proxy struct {        Address string        Port    string    }}func Item(conformance ConformanceChange) string {    service := conformance.Proxy.Address    services := map[string]string{        "Word": "Now",    }    service = services[service]    fmt.Println("Service: ", service)    return service}func Test_Item(t *testing.T) {    type args struct {        conformance ConformanceChange    }    tests := []struct {        name string        args args        want string    }{        // TODO: Add test cases.        {name: "empty", args: args{            conformance: ConformanceChange{},        }, want: ""},        {name: "value", args: args{            conformance: ConformanceChange{Val: "test", Proxy: {Address: "d", Port: "d"}},        }, want: ""},    }    for _, tt := range tests {        t.Run(tt.name, func(t *testing.T) {            if got := Item(tt.args.conformance); got != tt.want {                t.Errorf("getService() = %v, want %v", got, tt.want)            }        })    }}我希望能夠在運(yùn)行測試時將數(shù)據(jù)傳遞給 。我可以將數(shù)據(jù)傳遞給它,它的工作原理。ConformanceChange.Proxy.AddressConformanceChange.Val有人可以讓我知道正確的語法嗎?更新祝福提供的解決方案奏效了。從這里開始,如果我有以下代碼:package mainimport (    "fmt"    "testing")type ConformanceChange struct {    Val   string    Proxy struct {        Address string `json:address`        Port    string `json:port`    }}func Item(conformance ConformanceChange) string {    service := conformance.Proxy.Address    services := map[string]string{        "Word": "Now",    }    service = services[service]    fmt.Println("Service: ", service)    return service}我不想指定測試中的所有字段(因為它可能會變得混亂),我可以只指定一個字段嗎?在上面的代碼中,它失敗了:json:端口Cannot use 'struct { Port string  }(struct { Port string }{Port: "d"})' (type struct {...}) as the type struct {...}
查看完整描述

1 回答

?
ITMISS

TA貢獻(xiàn)1871條經(jīng)驗 獲得超8個贊

創(chuàng)建結(jié)構(gòu)值時,應(yīng)指定結(jié)構(gòu)。


{name: "value", args: args{

    conformance: ConformanceChange{Val: "test", Proxy: struct{Address string; Port string}{Address: "d", Port: "d"}},

}, want: ""},

為了避免重復(fù),您可以定義一個結(jié)構(gòu)Proxy


type Proxy struct {

    Address string

    Port    string

}


type ConformanceChange struct {

    Val   string

    Proxy Proxy

}

然后在初始化結(jié)構(gòu)值時引用它


{name: "value", args: args{

    conformance: ConformanceChange{Val: "test", Proxy: Proxy{Address: "d", Port: "d"}},

}, want: ""},


查看完整回答
反對 回復(fù) 2022-09-19
  • 1 回答
  • 0 關(guān)注
  • 90 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號