diff options
| author | Quey-Liang Kao <s101062801@m101.nthu.edu.tw> | 2017-08-20 21:44:56 +0800 |
|---|---|---|
| committer | Quey-Liang Kao <s101062801@m101.nthu.edu.tw> | 2017-08-20 21:44:56 +0800 |
| commit | 7877f0735dab782f66af157b39d6de3539c97102 (patch) | |
| tree | ddb228b1c8154a4ccee0b6438da5c0bcd7eda7b5 /todolist/app_test.go | |
| parent | e1ed1a2357bbf5083e96c883071339235ac0f02e (diff) | |
| parent | 620a9f3aff090063f79285fb20437a62ce089a4e (diff) | |
Merge github.com:gammons/todolist into note_patch_set
Diffstat (limited to 'todolist/app_test.go')
| -rw-r--r-- | todolist/app_test.go | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/todolist/app_test.go b/todolist/app_test.go index f29a1b6..2fb7717 100644 --- a/todolist/app_test.go +++ b/todolist/app_test.go @@ -108,3 +108,32 @@ func TestListbyContext(t *testing.T) { } assert.Equal(true, hasACompletedTodo) } + +func TestGetId(t *testing.T) { + assert := assert.New(t) + app := &App{TodoList: &TodoList{}, TodoStore: &MemoryStore{}} + // not a valid id + assert.Equal(-1, app.getId("p")) + // a single digit id + assert.Equal(6, app.getId("6")) + // a double digit id + assert.Equal(66, app.getId("66")) +} + +func TestGetIds(t *testing.T) { + assert := assert.New(t) + app := &App{TodoList: &TodoList{}, TodoStore: &MemoryStore{}} + // no valid id here + assert.Equal(0, len(app.getIds("p"))) + // one valid value here + assert.Equal([]int{6}, app.getIds("6")) + // lots of single post numbers + assert.Equal([]int{6, 10, 8, 4}, app.getIds("6,10,8,4")) + // a correct range + assert.Equal([]int{6, 7, 8}, app.getIds("6-8")) + // some incorrect ranges + assert.Equal(0, len(app.getIds("6-6"))) + assert.Equal(0, len(app.getIds("8-6"))) + // some compsite ranges + assert.Equal([]int{5, 6, 7, 8, 10, 11, 9}, app.getIds("5,6-8,10-11,9")) +} |
