1+ package utils
2+
3+ import (
4+ "testing"
5+ )
6+
7+ func TestStack_Len (t * testing.T ) {
8+ var myStack Stack
9+ myStack .Push (1 )
10+ myStack .Push ("test" )
11+ if myStack .Len () == 2 {
12+ t .Log ("Pass Stack.Len" )
13+ } else {
14+ t .Error ("Failed Stack.Len" )
15+ }
16+ }
17+
18+ func TestStack_IsEmpty (t * testing.T ) {
19+ var mStack Stack
20+ if mStack .IsEmpty () {
21+ t .Log ("Pass Stack.IsEmpty" )
22+ } else {
23+ t .Error ("Failed Stack.IsEmpty" )
24+ }
25+ }
26+
27+ func TestStack_Cap (t * testing.T ) {
28+ myStack := make (Stack , 3 )
29+ if myStack .Cap () == 3 {
30+ t .Log ("Pass Stack.Cap" )
31+ } else {
32+ t .Error ("Failed Stack.Cap" )
33+ }
34+ }
35+
36+ func TestStack_Push (t * testing.T ) {
37+ var mStack Stack
38+ mStack .Push (3 )
39+ if mStack .Len () == 1 {
40+ t .Log ("Pass Stack.Push" )
41+ } else {
42+ t .Error ("Failed Stack.Push" )
43+ }
44+ }
45+
46+ func TestStack_Top (t * testing.T ) {
47+ var mStack Stack
48+ if _ , err := mStack .Top (); err == nil {
49+ t .Error ("Failed Stack.Top" )
50+ }
51+ mStack .Push (3 )
52+ if value , _ := mStack .Top (); value == 3 {
53+ t .Log ("Pass Stack.Top" )
54+ } else {
55+ t .Errorf ("Failed Stack.Top, value is %d" , value )
56+ }
57+ }
58+
59+ func TestStack_Pop (t * testing.T ) {
60+ var mStack Stack
61+ if _ , err := mStack .Pop (); err == nil {
62+ t .Error ("Failed Stack.Top" )
63+ }
64+ mStack .Push ("test" )
65+ mStack .Push (3 )
66+ if value , _ := mStack .Pop (); value == 3 && mStack .Len () == 1 {
67+ t .Log ("Pass Stack.Pop" )
68+ } else {
69+ t .Errorf ("Failed Stack.Pop, value is %d, len is %d" , value , mStack .Len ())
70+ }
71+ }
0 commit comments