mirror of https://github.com/v2ray/v2ray-core
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.
50 lines
1.2 KiB
50 lines
1.2 KiB
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 Port(value v2net.Port) *PortSubject {
|
|
return &PortSubject{value: value}
|
|
}
|
|
|
|
type PortSubject struct {
|
|
assert.Subject
|
|
value v2net.Port
|
|
}
|
|
|
|
func (subject *PortSubject) Named(name string) *PortSubject {
|
|
subject.Subject.Named(name)
|
|
return subject
|
|
}
|
|
|
|
func (subject *PortSubject) DisplayString() string {
|
|
return subject.Subject.DisplayString(subject.value.String())
|
|
}
|
|
|
|
func (subject *PortSubject) Equals(expectation v2net.Port) {
|
|
if subject.value.Value() != expectation.Value() {
|
|
subject.Fail(subject.DisplayString(), "is equal to", expectation)
|
|
}
|
|
}
|
|
|
|
func (subject *PortSubject) GreaterThan(expectation v2net.Port) {
|
|
if subject.value.Value() <= expectation.Value() {
|
|
subject.Fail(subject.DisplayString(), "is greater than", expectation)
|
|
}
|
|
}
|
|
|
|
func (subject *PortSubject) LessThan(expectation v2net.Port) {
|
|
if subject.value.Value() >= expectation.Value() {
|
|
subject.Fail(subject.DisplayString(), "is less than", expectation)
|
|
}
|
|
}
|
|
|
|
func (subject *PortSubject) IsValid() {
|
|
if subject.value == 0 {
|
|
subject.Fail(subject.DisplayString(), "is", serial.StringLiteral("a valid port"))
|
|
}
|
|
}
|