InteliJ から golang のテストを書くんですが、なんか、構造体の配列を作ってループするみたいな感じのコードが生成されるんですが、
配列の書き方が良くわからん
結局、
type args struct {
u fileIO.FileIO
}
u1 := fileIO.FileIO{}
var tests = []struct {
name string
args args
}{
{"test",args{u1}},
}
で、通ったのですが、いろいろ納得いかん。最後の「,」はなんだよ。これがないと
main_test.go:18:20: missing ',' before newline in composite literal
ううーん。あと、
args{u1}},
これ。単に u1 とか{u1}だと通らない。
{"test",u1},
main_test.go:18:11: cannot use u1 (type fileIO.FileIO) as type args in field value
{"test",{u1}},
main_test.go:18:11: missing type in composite literal
いや、まぁ、気持ちはわからなくもない。{} だと anonymous type になるってことでしょ。でも、それくらい推論できるだろ? しない理由あるのか?
No comments:
Post a Comment