https://github.com/jimeh/go-mocktesting
Go package that mocks *testing.T for the purpose of testing test helpers.
https://github.com/jimeh/go-mocktesting
go go-testing golang golang-package mock test-helper testing
Last synced: about 2 months ago
JSON representation
Go package that mocks *testing.T for the purpose of testing test helpers.
- Host: GitHub
- URL: https://github.com/jimeh/go-mocktesting
- Owner: jimeh
- License: mit
- Created: 2021-11-16T00:58:09.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-11-22T03:23:52.000Z (over 3 years ago)
- Last Synced: 2025-04-02T00:09:55.012Z (about 2 months ago)
- Topics: go, go-testing, golang, golang-package, mock, test-helper, testing
- Language: Go
- Homepage: https://pkg.go.dev/github.com/jimeh/go-mocktesting
- Size: 36.1 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
go-mocktesting
Mock *testing.T for the purpose of testing test helpers.
## Import
```go
import "github.com/jimeh/go-mocktesting"
```## Usage
```go
func ExampleT_Error() {
assertTrue := func(t testing.TB, v bool) {
if v != true {
t.Error("expected false to be true")
}
}mt := mocktesting.NewT("TestMyBoolean1")
assertTrue(mt, true)
fmt.Printf("Name: %s\n", mt.Name())
fmt.Printf("Failed: %+v\n", mt.Failed())
fmt.Printf("Aborted: %+v\n", mt.Aborted())mt = mocktesting.NewT("TestMyBoolean2")
assertTrue(mt, false)
fmt.Printf("Name: %s\n", mt.Name())
fmt.Printf("Failed: %+v\n", mt.Failed())
fmt.Printf("Aborted: %+v\n", mt.Aborted())
fmt.Printf("Output: %s\n", strings.Join(mt.Output(), ""))// Output:
// Name: TestMyBoolean1
// Failed: false
// Aborted: false
// Name: TestMyBoolean2
// Failed: true
// Aborted: false
// Output: expected false to be true
}
``````go
func ExampleT_Fatal() {
requireTrue := func(t testing.TB, v bool) {
if v != true {
t.Fatal("expected false to be true")
}
}mt := mocktesting.NewT("TestMyBoolean1")
fmt.Printf("Name: %s\n", mt.Name())
requireTrue(mt, true)
fmt.Printf("Failed: %+v\n", mt.Failed())
fmt.Printf("Aborted: %+v\n", mt.Aborted())mt = mocktesting.NewT("TestMyBoolean2")
fmt.Printf("Name: %s\n", mt.Name())
mocktesting.Go(func() {
requireTrue(mt, false)
fmt.Println("This is never executed.")
})
fmt.Printf("Failed: %+v\n", mt.Failed())
fmt.Printf("Aborted: %+v\n", mt.Aborted())
fmt.Printf("Output:\n - %s\n", strings.Join(mt.Output(), "\n - "))// Output:
// Name: TestMyBoolean1
// Failed: false
// Aborted: false
// Name: TestMyBoolean2
// Failed: true
// Aborted: true
// Output:
// - expected false to be true
}
``````go
func ExampleT_Run() {
requireTrue := func(t testing.TB, v bool) {
if v != true {
t.Fatal("expected false to be true")
}
}mt := mocktesting.NewT("TestMyBoolean")
fmt.Printf("Name: %s\n", mt.Name())
mt.Run("true", func(t testing.TB) {
requireTrue(t, true)
})
fmt.Printf("Failed: %+v\n", mt.Failed())
fmt.Printf("Sub1-Name: %s\n", mt.Subtests()[0].Name())
fmt.Printf("Sub1-Failed: %+v\n", mt.Subtests()[0].Failed())
fmt.Printf("Sub1-Aborted: %+v\n", mt.Subtests()[0].Aborted())mt.Run("false", func(t testing.TB) {
requireTrue(t, false)
fmt.Println("This is never executed.")
})
fmt.Printf("Failed: %+v\n", mt.Failed())
fmt.Printf("Sub2-Name: %s\n", mt.Subtests()[1].Name())
fmt.Printf("Sub2-Failed: %+v\n", mt.Subtests()[1].Failed())
fmt.Printf("Sub2-Aborted: %+v\n", mt.Subtests()[1].Aborted())
fmt.Printf("Sub2-Output:\n - %s\n",
strings.Join(mt.Subtests()[1].Output(), "\n - "),
)// Output:
// Name: TestMyBoolean
// Failed: false
// Sub1-Name: TestMyBoolean/true
// Sub1-Failed: false
// Sub1-Aborted: false
// Failed: true
// Sub2-Name: TestMyBoolean/false
// Sub2-Failed: true
// Sub2-Aborted: true
// Sub2-Output:
// - expected false to be true
}
```## Documentation
Please see the
[Go Reference](https://pkg.go.dev/github.com/jimeh/go-mocktesting#section-documentation)
for documentation and examples.## License
[MIT](https://github.com/jimeh/go-mocktesting/blob/main/LICENSE)