```
func GetNumberOfStudent(age int) int {
conn := db.NewMysql()
if 0 < age && age < 18 {
return conn.Query("select count(*) from students where age = 18")
} else {
return 0
}
}
```
这是待测试的函数,如果conn不是从参数传入,gomock似乎不能对这个函数做任何事。
是gomock还有其他的用法还是GetNumberOfStudent这个函数不应该这么写?
希望能给出一个测试GetNumberOfStudent函数的示例代码
备注:db模块代码
```
package db
type DatabaseConnect interface {
Query(sql string) int
}
type Mysql struct{}
func NewMysql() *Mysql {
return &Mysql{}
}
func (mysql Mysql) Query(sql string) int {
panic("network error")
return -1
}
```
有疑问加站长微信联系(非本文作者)