Our great sponsors
|30 days ago||almost 3 years ago|
|MIT License||GNU General Public License v3.0 or later|
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.
We haven't tracked posts mentioning Mmock yet.
Tracking mentions began in Dec 2020.
Many reasons to always read the LICENSE
2 projects | /r/linuxmasterrace | 9 Apr 2023
Library for monkey-patching functions
3 projects | /r/golang | 3 Apr 2022
This person did not read the license of the original library https://github.com/bouk/monkey/blob/master/LICENSE.md
Alternative for Monkey patching
3 projects | /r/golang | 23 Mar 2022
I am a new gopher. I was looking into the Monkey Patching module and it is archived now. I was wondering if there is an alternative for that.
Why go plugin addresses do not load with go binary
3 projects | /r/golang | 31 Oct 2021
Here is an example of this in Go - but as he says, don't actually do this. https://github.com/bouk/monkey
is there an easy (python like way) to do mocks?
3 projects | /r/golang | 16 Oct 2021
I discovered this lib a few days ago. https://github.com/bouk/monkey it allows you to monkey patch entire functions, replacing them by whatever you want. Perfect for mocking. It's simple to use. The program is hard patching the code using assembly to replace the function address at runtime. You should not use this lib out of your tests since it's absolutely not safe. It's only compatible with linux and windows. But it works great!
Monkey Patching in Go (2015)
2 projects | news.ycombinator.com | 22 Aug 2021
I do not give anyone permissions to use this tool for any purpose. Don’t use it. I’m not interested in changing this license. Please don’t ask.
2 projects | /r/programmingcirclejerk | 22 Aug 2021
Project includes a dependancy that has a license that forbids its use
15 projects | news.ycombinator.com | 22 Aug 2021
From the explaining blog post 
> If you’re not interested in how it works and you just want to do monkey patching, then you can find the library here.
> Wrapping it up in a nice library
> I took the above code and put it in an easy to use library. It supports 32 bit, reversing patches, and patching instance methods. I wrote a couple of examples and put those in the README.
Then in the README:
> Make sure you read the notes at the bottom of the README if you intend to use this library.
Either the author is confused or has decided that he doesn't want to maintain an hack. Anyway license is pretty clear.
There was an HN thread when it was released.
 https://github.com/bouk/monkey15 projects | news.ycombinator.com | 22 Aug 2021
"This is as unsafe as it sounds and I don't recommend anyone do it outside of a testing environment."
What are some alternatives?
gomock - GoMock is a mocking framework for the Go programming language.
gotests - Automatically generate Go test boilerplate from your source code.
counterfeiter - A tool for generating self-contained, type-safe test doubles in go
gock - HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽
go-sqlmock - Sql mock driver for golang to test database interactions
go-txdb - Immutable transaction isolated sql driver for golang
rust-by-example - Learn Rust with examples (Live code editor included)
mockhttp - Mock object for Go http.ResponseWriter
timex - A test-friendly replacement for golang's time package
httpmock - HTTP mocking for Golang