Slide 20
Slide 20 text
ςελϏϦςΟͷ্
ϞοΫΛ͏͜ͱͰςετ͕ॻ͖͘͢
ઃܭվળͰಘΒΕͨϝϦοτ
{
name: "return error when post failed",
hoge: &types.Hoge{ HogeID: "invalid” },
injector: func(r *mocks.MockHogeRepository) *mocks.MockHogeRepository {
r.EXPECT().Post(gomock.Any(), types.Hoge{HogeID: "invalid"}).
Return(nil, errors.New("some error"))
return r
},
want: nil,
wantErr: true,
}
// ...
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
ctrl := gomock.NewController(t)
defer ctrl.Finish()
mockRepo := mocks.NewMockHogeRepository(ctrl)
mockRepo = tt.injector(mockRepo)
// ...
}
}