Provides some addons functions for usage together with gocheck.
Install dependencies:
go get -u github.com/echocat/gocheck-addons
Import in source code files:
import (
. "github.com/echocat/gocheck-addons"
. "gopkg.in/check.v1"
)
Check for a panic message that should occur.
Example:
c.Assert(func() {
panic(errors.New("foo123"))
}, ThrowsPanicThatMatches, "foo1.3")
c.Assert(func() {
panic(enclosesString{string: "foo123"})
}, ThrowsPanicThatMatches, "foo1.3")
c.Assert(func() {
panic("foo123")
}, ThrowsPanicThatMatches, "foo1.3")
Check that a value is empty. Currently support strings, arrays and maps.
Example:
c.Assert("abc", Not(IsEmpty))
c.Assert("", IsEmpty)
c.Assert([]string{"abc"}, Not(IsEmpty))
c.Assert([]string{}, IsEmpty)
c.Assert([]int{1}, Not(IsEmpty))
c.Assert([]int{}, IsEmpty)
c.Assert(map[string]int{"abc": 1}, Not(IsEmpty))
c.Assert(map[string]int{}, IsEmpty)
Check that a specific value is contained in another. Currently support only strings.
Example:
c.Assert("abc", Contains, "a")
c.Assert("abc", Contains, "b")
c.Assert("abc", Contains, "c")
c.Assert("abc", Contains, "abc")
c.Assert("abc", Contains, "")
c.Assert("abc", Not(Contains), "x")
Check that a specific value prefixes another. Currently support only strings.
Example:
c.Assert("abc", HasPrefix, "a")
c.Assert("abc", HasPrefix, "ab")
c.Assert("abc", HasPrefix, "abc")
c.Assert("abc", HasPrefix, "")
c.Assert("abc", Not(HasPrefix), "b")
c.Assert("abc", Not(HasPrefix), "c")
Check that a specific value suffixes another. Currently support only strings.
Example:
c.Assert("abc", HasSuffix, "c")
c.Assert("abc", HasSuffix, "bc")
c.Assert("abc", HasSuffix, "abc")
c.Assert("abc", HasSuffix, "")
c.Assert("abc", Not(HasSuffix), "a")
c.Assert("abc", Not(HasSuffix), "b")
Check that a value is less than to provided.
Example:
c.Assert(22, IsLessThan, 66)
c.Assert(22, Not(IsLessThan), 11)
c.Assert(22, Not(IsLessThan), 22)
c.Assert(22.5, IsLessThan, 66.5)
c.Assert(22.5, Not(IsLessThan), 11.5)
c.Assert(22.5, Not(IsLessThan), 22.5)
c.Assert(time.Duration(22), IsLessThan, time.Duration(66))
Check that a value is less than or equal to provided.
Example:
c.Assert(22, IsLessThanOrEqualTo, 66)
c.Assert(22, IsLessThanOrEqualTo, 22)
c.Assert(22, Not(IsLessThanOrEqualTo), 11)
c.Assert(22.5, IsLessThanOrEqualTo, 66.5)
c.Assert(22.5, IsLessThanOrEqualTo, 22.5)
c.Assert(22.5, Not(IsLessThanOrEqualTo), 11.5)
c.Assert(time.Duration(22), IsLessThanOrEqualTo, time.Duration(66))
c.Assert(time.Duration(22), IsLessThanOrEqualTo, time.Duration(22))
Check that a value is larger than to provided.
Example:
c.Assert(22, IsLargerThan, 11)
c.Assert(22, Not(IsLargerThan), 66)
c.Assert(22, Not(IsLargerThan), 22)
c.Assert(66.5, IsLargerThan, 22.5)
c.Assert(11.5, Not(IsLargerThan), 22.5)
c.Assert(22.5, Not(IsLargerThan), 22.5)
c.Assert(time.Duration(22), IsLargerThan, time.Duration(11))
Check that a value is larger than or equal to provided.
Example:
c.Assert(22, IsLargerThanOrEqualTo, 11)
c.Assert(22, Not(IsLargerThanOrEqualTo), 66)
c.Assert(22, IsLargerThanOrEqualTo, 22)
c.Assert(66.5, IsLargerThanOrEqualTo, 22.5)
c.Assert(11.5, Not(IsLargerThanOrEqualTo), 22.5)
c.Assert(22.5, IsLargerThanOrEqualTo, 22.5)
c.Assert(time.Duration(22), IsLargerThanOrEqualTo, time.Duration(11))
c.Assert(time.Duration(22), IsLargerThanOrEqualTo, time.Duration(22))
This includes download of all dependencies and also creation and upload of coverage reports.
No working golang installation is required but Java 8+ (in
PATH
orJAVA_HOME
set.).
# On Linux/macOS
$ ./gradlew test
# On Windows
$ gradlew test
gocheck-addons is an open source project by echocat. So if you want to make this project even better, you can contribute to this project on Github by fork us.
If you commit code to this project, you have to accept that this code will be released under the license of this project.
If you need support you can create a ticket in our issue tracker.
See the LICENSE file.