mirror of https://github.com/v2ray/v2ray-core
				
				
				
			
		
			
				
	
	
		
			49 lines
		
	
	
		
			980 B
		
	
	
	
		
			Go
		
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			980 B
		
	
	
	
		
			Go
		
	
	
| package unit
 | |
| 
 | |
| import (
 | |
| 	"strconv"
 | |
| )
 | |
| 
 | |
| type BoolSubject struct {
 | |
| 	*Subject
 | |
| 	value bool
 | |
| }
 | |
| 
 | |
| func NewBoolSubject(base *Subject, value bool) *BoolSubject {
 | |
| 	return &BoolSubject{
 | |
| 		Subject: base,
 | |
| 		value:   value,
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (subject *BoolSubject) Named(name string) *BoolSubject {
 | |
| 	subject.Subject.Named(name)
 | |
| 	return subject
 | |
| }
 | |
| 
 | |
| func (subject *BoolSubject) Fail(verb string, other bool) {
 | |
| 	subject.FailWithMessage("Not true that " + subject.DisplayString() + " " + verb + " <" + strconv.FormatBool(other) + ">.")
 | |
| }
 | |
| 
 | |
| func (subject *BoolSubject) DisplayString() string {
 | |
| 	return subject.Subject.DisplayString(strconv.FormatBool(subject.value))
 | |
| }
 | |
| 
 | |
| func (subject *BoolSubject) Equals(expectation bool) {
 | |
| 	if subject.value != expectation {
 | |
| 		subject.Fail("is equal to", expectation)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (subject *BoolSubject) IsTrue() {
 | |
| 	if subject.value != true {
 | |
| 		subject.Fail("is", true)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (subject *BoolSubject) IsFalse() {
 | |
| 	if subject.value != false {
 | |
| 		subject.Fail("is", false)
 | |
| 	}
 | |
| }
 |