mockery
is
Our great sponsors
mockery | is | |
---|---|---|
20 | 7 | |
5,599 | 1,709 | |
2.4% | - | |
8.8 | 2.7 | |
6 days ago | 2 months ago | |
Go | Go | |
BSD 3-clause "New" or "Revised" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
mockery
-
I Write Tests in Go
I'm far too lazy to write mocks by hand in go. You can generate a mock for a given interface with mockery https://github.com/vektra/mockery
-
go-ecommerce-microservices: A practical e-commerce microservices, built with cqrs, event sourcing, vertical slice architecture, event-driven architecture.
Some of the features: - ✅ Using Vertical Slice Architecture as a high level architecture - ✅ Using Event Driven Architecture on top of RabbitMQ Message Broker with a custom [Event Bus](pkg/messaging/bus/) - ✅ Using Event Sourcing in Audit Based services like [Orders Service](services/orders/) - ✅ Using CQRS Pattern and Mediator Patternon top of Go-MediatR library - ✅ Using Dependency Injection and Inversion of Controlon top of uber-go/fx library - ✅ Using RESTFul api with Echo framework and using swagger with swaggo/swag library - ✅ Using Postgres and EventStoreDB to write databases with fully supports transactions(ACID) - ✅ Using MongoDB and Elastic Search for read databases (NOSQL) - ✅ Using OpenTelemetry for collection Distributed Tracing with using Jaeger and Zipkin - ✅ Using OpenTelemetry for collection Metrics with using Prometheus and Grafana - ✅ Using Unit Test for testing small units with mocking dependent classes and using Mockery for mocking dependencies - ✅ Using End2End Test and Integration Test for testing features with all of their real dependeinces using docker containers (cleanup tests) and testcontainers-go library
- Direction of mockery: absorb different styles of mocks into this project · vektra mockery · Discussion #671
-
Go: Write Mock Test cases using Mockery and
Read mockery documentation: https://vektra.github.io/mockery/
-
Mocking unexported interfaces?
https://github.com/vektra/mockery is the better mocking framework in my biased opinion. The Google maintainers for gomock seem to have neglected the project.
-
I want to contribute to open source but don't know where to start
There are some one liner changes you can implement in https://github.com/vektra/mockery
-
Is gomock still maintained and recommended?
When there's just one heavyweight dependency you're interacting with, perhaps a one-off stub/fake is simpler, but I would posit that auto-generated mocks via things like mockery + go:generate leave less test code to maintain vs. perhaps many stubs across the project.
-
vektra/mockery: v2.21.0 includes "packages" config section, allowing 5x faster mock generation and more fine-grained control over mocks
Please take a look at the documentation linked here, and the related discussion topic that spawned this.
-
Issue implementing interface method that returns another interface
As you can see, the package has a chained method Logical().Write() . Since I want to create tests for PublicFunctionIWantToTest, I want to pass down all the functionality as interface so that I can use https://vektra.github.io/mockery/ to create mocks for it.
- FEEDBACK REQUESTED: Deprecation of automatic interface discovery · Discussion #549 · vektra/mockery
is
- The Go libraries that never failed us: 22 libraries you need to know
-
is there a way to write test in a sane way?
I use https://github.com/matryer/is which is a simplified version of testify.
-
Testing frameworks, which to use?
testify off steroids, all you ever need: is
-
What are the REST API reference projects that can be used as a guide in 2021?
However your point is valid. Check matryer/is for unit test writing. DATA-DOG/go-sqlmock to test database interactions.
-
Beginner here, I'm wondering how ok it is to omit err return values as I am trying to approach things from test-driven perspective
Even better, use https://github.com/matryer/is.
-
"is" testing framework?
Probably they talking about https://github.com/matryer/is ?
- fluentassert - a prototype of yet another assertion library
What are some alternatives?
gomock - GoMock is a mocking framework for the Go programming language.
Testify - A toolkit with common assertions and mocks that plays nicely with the standard library
counterfeiter - A tool for generating self-contained, type-safe test doubles in go
verify - Extensible, type-safe, fluent assertion Go library.
minimock - Powerful mock generation tool for Go programming language
GoAws - AWS (SQS/SNS) Clone for Development testing
go-sqlmock - Sql mock driver for golang to test database interactions
gnomock - Test your code without writing mocks with ephemeral Docker containers 📦 Setup popular services with just a couple lines of code ⏱️ No bash, no yaml, only code 💻
hoverfly - Lightweight service virtualization/ API simulation / API mocking tool for developers and testers
gotest.tools - A collection of packages to augment the go testing package and support common patterns.
moq - Interface mocking tool for go generate
Hamcrest - Hamcrest matchers for the Go programming language