| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | 
							- package assert
 
- import (
 
- 	v2net "github.com/v2ray/v2ray-core/common/net"
 
- 	"github.com/v2ray/v2ray-core/common/serial"
 
- 	"github.com/v2ray/v2ray-core/testing/assert"
 
- )
 
- func Address(value v2net.Address) *AddressSubject {
 
- 	return &AddressSubject{value: value}
 
- }
 
- type AddressSubject struct {
 
- 	assert.Subject
 
- 	value v2net.Address
 
- }
 
- func (subject *AddressSubject) Named(name string) *AddressSubject {
 
- 	subject.Subject.Named(name)
 
- 	return subject
 
- }
 
- func (subject *AddressSubject) DisplayString() string {
 
- 	return subject.Subject.DisplayString(subject.value.String())
 
- }
 
- func (subject *AddressSubject) Equals(another v2net.Address) {
 
- 	if subject.value.IsIPv4() && another.IsIPv4() {
 
- 		IP(subject.value.IP()).Equals(another.IP())
 
- 	} else if subject.value.IsIPv6() && another.IsIPv6() {
 
- 		IP(subject.value.IP()).Equals(another.IP())
 
- 	} else if subject.value.IsDomain() && another.IsDomain() {
 
- 		assert.StringLiteral(subject.value.Domain()).Equals(another.Domain())
 
- 	} else {
 
- 		subject.Fail(subject.DisplayString(), "equals to", another)
 
- 	}
 
- }
 
- func (subject *AddressSubject) IsIPv4() {
 
- 	if !subject.value.IsIPv4() {
 
- 		subject.Fail(subject.DisplayString(), "is", serial.StringLiteral("an IPv4 address"))
 
- 	}
 
- }
 
- func (subject *AddressSubject) IsNotIPv4() {
 
- 	if subject.value.IsIPv4() {
 
- 		subject.Fail(subject.DisplayString(), "is not", serial.StringLiteral("an IPv4 address"))
 
- 	}
 
- }
 
- func (subject *AddressSubject) IsIPv6() {
 
- 	if !subject.value.IsIPv6() {
 
- 		subject.Fail(subject.DisplayString(), "is", serial.StringLiteral("an IPv6 address"))
 
- 	}
 
- }
 
- func (subject *AddressSubject) IsNotIPv6() {
 
- 	if subject.value.IsIPv6() {
 
- 		subject.Fail(subject.DisplayString(), "is not", serial.StringLiteral("an IPv6 address"))
 
- 	}
 
- }
 
- func (subject *AddressSubject) IsDomain() {
 
- 	if !subject.value.IsDomain() {
 
- 		subject.Fail(subject.DisplayString(), "is", serial.StringLiteral("a domain address"))
 
- 	}
 
- }
 
- func (subject *AddressSubject) IsNotDomain() {
 
- 	if subject.value.IsDomain() {
 
- 		subject.Fail(subject.DisplayString(), "is not", serial.StringLiteral("a domain address"))
 
- 	}
 
- }
 
 
  |