mirror of
https://github.com/jesseduffield/lazygit.git
synced 2024-12-04 10:34:55 +02:00
59 lines
1.2 KiB
Go
59 lines
1.2 KiB
Go
package components
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
type IntMatcher struct {
|
|
*Matcher[int]
|
|
}
|
|
|
|
func (self *IntMatcher) EqualsInt(target int) *IntMatcher {
|
|
self.appendRule(matcherRule[int]{
|
|
name: fmt.Sprintf("equals %d", target),
|
|
testFn: func(value int) (bool, string) {
|
|
return value == target, fmt.Sprintf("Expected %d to equal %d", value, target)
|
|
},
|
|
})
|
|
|
|
return self
|
|
}
|
|
|
|
func (self *IntMatcher) GreaterThan(target int) *IntMatcher {
|
|
self.appendRule(matcherRule[int]{
|
|
name: fmt.Sprintf("greater than %d", target),
|
|
testFn: func(value int) (bool, string) {
|
|
return value > target, fmt.Sprintf("Expected %d to greater than %d", value, target)
|
|
},
|
|
})
|
|
|
|
return self
|
|
}
|
|
|
|
func (self *IntMatcher) LessThan(target int) *IntMatcher {
|
|
self.appendRule(matcherRule[int]{
|
|
name: fmt.Sprintf("less than %d", target),
|
|
testFn: func(value int) (bool, string) {
|
|
return value < target, fmt.Sprintf("Expected %d to less than %d", value, target)
|
|
},
|
|
})
|
|
|
|
return self
|
|
}
|
|
|
|
func AnyInt() *IntMatcher {
|
|
return &IntMatcher{Matcher: &Matcher[int]{}}
|
|
}
|
|
|
|
func EqualsInt(target int) *IntMatcher {
|
|
return AnyInt().EqualsInt(target)
|
|
}
|
|
|
|
func GreaterThan(target int) *IntMatcher {
|
|
return AnyInt().GreaterThan(target)
|
|
}
|
|
|
|
func LessThan(target int) *IntMatcher {
|
|
return AnyInt().LessThan(target)
|
|
}
|