]> git.lizzy.rs Git - micro.git/blob - src/stack_test.go
Update todolist
[micro.git] / src / stack_test.go
1 package main
2
3 import "testing"
4
5 func TestStack(t *testing.T) {
6         stack := new(Stack)
7
8         if stack.Len() != 0 {
9                 t.Errorf("Len failed")
10         }
11         stack.Push(5)
12         stack.Push("test")
13         stack.Push(10)
14         if stack.Len() != 3 {
15                 t.Errorf("Len failed")
16         }
17
18         var popped interface{}
19         popped = stack.Pop()
20         if popped != 10 {
21                 t.Errorf("Pop failed")
22         }
23
24         popped = stack.Pop()
25         if popped != "test" {
26                 t.Errorf("Pop failed")
27         }
28
29         stack.Push("test")
30         popped = stack.Pop()
31         if popped != "test" {
32                 t.Errorf("Pop failed")
33         }
34         stack.Pop()
35         popped = stack.Pop()
36         if popped != nil {
37                 t.Errorf("Pop failed")
38         }
39 }