From cc736093e7e4521ad392b13f74cf3da51308bf18 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 9 Jan 2015 02:04:19 +0100 Subject: Initial import --- stack_test.go | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 stack_test.go (limited to 'stack_test.go') diff --git a/stack_test.go b/stack_test.go new file mode 100644 index 0000000..773f6cf --- /dev/null +++ b/stack_test.go @@ -0,0 +1,53 @@ +package stack + +import "testing" + +func TestInt(t *testing.T) { + s := NewStack() + s.Push(1) + i, _ := s.Pop() + if i != 1 { + t.Error("Expected 1, got ", i) + } +} + +func TestComplex(t *testing.T) { + s := NewStack() + s.Push(1+1i) + i, _ := s.Pop() + if i != 1+1i { + t.Error("Expected 1+1i, got ", i) + } +} + +func TestMeny(t *testing.T) { + s := NewStack() + s.Push(1) + s.Push(2) + i, _ := s.Pop() + if i != 2 { + t.Error("Expected 2, got ", i) + } + i, _ = s.Pop() + if i != 1 { + t.Error("Expected 1, got ", i) + } +} + +func BenchmarkPushPopSingle(b *testing.B) { + s := NewStack() + for i := 0; i < b.N; i++ { + s.Push(1) + s.Pop() + } +} + +func BenchmarkPushPopAlot(b *testing.B) { + s := NewStack() + for i := 0; i < b.N; i++ { + s.Push(i) + } + for i := 0; i < b.N; i++ { + s.Pop() + } +} -- cgit v1.2.3