You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

52 lines
967 B

  1. package gomock
  2. import (
  3. "testing"
  4. )
  5. type mockTestReporter struct {
  6. errorCalls int
  7. fatalCalls int
  8. }
  9. func (o *mockTestReporter) Errorf(format string, args ...interface{}) {
  10. o.errorCalls++
  11. }
  12. func (o *mockTestReporter) Fatalf(format string, args ...interface{}) {
  13. o.fatalCalls++
  14. }
  15. func (o *mockTestReporter) Helper() {}
  16. func TestCall_After(t *testing.T) {
  17. t.Run("SelfPrereqCallsFatalf", func(t *testing.T) {
  18. tr1 := &mockTestReporter{}
  19. c := &Call{t: tr1}
  20. c.After(c)
  21. if tr1.fatalCalls != 1 {
  22. t.Errorf("number of fatal calls == %v, want 1", tr1.fatalCalls)
  23. }
  24. })
  25. t.Run("LoopInCallOrderCallsFatalf", func(t *testing.T) {
  26. tr1 := &mockTestReporter{}
  27. tr2 := &mockTestReporter{}
  28. c1 := &Call{t: tr1}
  29. c2 := &Call{t: tr2}
  30. c1.After(c2)
  31. c2.After(c1)
  32. if tr1.errorCalls != 0 || tr1.fatalCalls != 0 {
  33. t.Error("unexpected errors")
  34. }
  35. if tr2.fatalCalls != 1 {
  36. t.Errorf("number of fatal calls == %v, want 1", tr2.fatalCalls)
  37. }
  38. })
  39. }