error.go 647 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package assert
  2. func (this *Assert) Error(value error) *ErrorSubject {
  3. valueStr := ""
  4. if value != nil {
  5. valueStr = value.Error()
  6. }
  7. return &ErrorSubject{
  8. Subject: Subject{
  9. a: this,
  10. disp: valueStr,
  11. },
  12. value: value,
  13. }
  14. }
  15. type ErrorSubject struct {
  16. Subject
  17. value error
  18. }
  19. func (subject *ErrorSubject) Equals(expectation error) {
  20. if subject.value != expectation {
  21. subject.Fail("is equal to", expectation.Error())
  22. }
  23. }
  24. func (subject *ErrorSubject) IsNil() {
  25. if subject.value != nil {
  26. subject.Fail("is", "nil")
  27. }
  28. }
  29. func (subject *ErrorSubject) IsNotNil() {
  30. if subject.value == nil {
  31. subject.Fail("is not", "nil")
  32. }
  33. }