fifobuffer_test.go 627 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package door
  2. // Need net, flag for setupSockets
  3. import (
  4. "testing"
  5. )
  6. func TestFIFOEmpty(t *testing.T) {
  7. buffer := NewFIFOBuffer(3)
  8. defer func() {
  9. if r := recover(); r == nil {
  10. t.Error("Pop of empty FIFO Buffer did not panic.")
  11. }
  12. }()
  13. buffer.Push(1)
  14. x := buffer.Pop()
  15. if x != 1 {
  16. t.Errorf("Buffer did not return expected value 1: %d", x)
  17. }
  18. _ = buffer.Pop()
  19. }
  20. func TestFIFOOverflow(t *testing.T) {
  21. buffer := NewFIFOBuffer(3)
  22. defer func() {
  23. if r := recover(); r == nil {
  24. t.Error("Pop of empty FIFO Buffer did not panic.")
  25. }
  26. }()
  27. buffer.Push(1)
  28. buffer.Push(2)
  29. buffer.Push(3)
  30. buffer.Push(4)
  31. }