stringsubject.go 755 B

123456789101112131415161718192021222324252627282930313233
  1. package assert
  2. import (
  3. "github.com/v2ray/v2ray-core/common/serial"
  4. )
  5. func StringLiteral(value string) *StringSubject {
  6. return String(serial.StringLiteral((value)))
  7. }
  8. func String(value serial.String) *StringSubject {
  9. return &StringSubject{value: value}
  10. }
  11. type StringSubject struct {
  12. Subject
  13. value serial.String
  14. }
  15. func (subject *StringSubject) Named(name string) *StringSubject {
  16. subject.Subject.Named(name)
  17. return subject
  18. }
  19. func (subject *StringSubject) DisplayString() string {
  20. return subject.Subject.DisplayString(subject.value.String())
  21. }
  22. func (subject *StringSubject) Equals(expectation string) {
  23. if subject.value.String() != expectation {
  24. subject.Fail(subject.DisplayString(), "is equal to", serial.StringLiteral(expectation))
  25. }
  26. }