番茄钟功能测试与界面构建
1. 番茄钟业务逻辑测试
在实现了番茄钟业务逻辑和内存仓库之后,我们需要对业务逻辑进行测试。为了简洁起见,仅对业务逻辑添加测试,这会在使用仓库时间接测试仓库。对于实际生产应用,建议也为仓库实现编写单元测试。
1.1 创建仓库辅助函数
部分测试需要访问仓库,由于可能有不同的仓库实现,我们先创建一个辅助函数 getRepo
来获取仓库实例。具体操作步骤如下:
1. 切换到 pomodoro
包目录,创建 inmemory_test.go
文件:
$ cd $HOME/pragprog.com/rggo/interactiveTools/pomo/pomodoro
- 编辑
inmemory_test.go
文件,添加包定义和导入部分:
package pomodoro_test
import (
"testing"
"pragprog.com/rggo/interactiveTools/pomo/pomodoro"
"pragprog.com/rggo/interactiveTools/pomo/pomodoro/repository"
)
func getRepo(t *testing.T) (pomodoro.Repository, func()) {
t.