monkey VS fast_check_once

Compare monkey vs fast_check_once and see what are their differences.

monkey

Monkey patching in Go (by bouk)

fast_check_once

Fast One Time Predicate Checker (by mgraczyk)
Our great sponsors
  • Nanos - Run Linux Software Faster and Safer than Linux with Unikernels
  • Scout APM - A developer's best friend. Try free for 14-days
  • SaaSHub - Software Alternatives and Reviews
monkey fast_check_once
8 1
2,370 1
- -
0.0 0.0
over 1 year ago about 5 years ago
Go C
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

monkey

Posts with mentions or reviews of monkey. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-16.
  • is there an easy (python like way) to do mocks?
    reddit.com/r/golang | 2021-10-16
    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!
  • Oops!
  • Monkey Patching in Go (2015)
    news.ycombinator.com | 2021-08-22
  • 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.
  • Project includes a dependancy that has a license that forbids its use
    news.ycombinator.com | 2021-08-22
    From the explaining blog post [0]

    > If you’re not interested in how it works and you just want to do monkey patching, then you can find the library here.

    Also

    > 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[1]:

    > 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[2] when it was released.

    [0] https://bou.ke/blog/monkey-patching-in-go/

    [1] https://github.com/bouk/monkey

    [2] https://news.ycombinator.com/item?id=9290917

    news.ycombinator.com | 2021-08-22
    "This is as unsafe as it sounds and I don't recommend anyone do it outside of a testing environment."

    [1]: https://github.com/bouk/monkey#i-thought-that-monkeypatching...

  • is Test_xxx func safe to access shared data?
    reddit.com/r/golang | 2021-06-25
    WRT monkeypatch, again, this is a "global" thing and assuming you are talking about bouk's monkeypatch library the author makes the note that
  • Go partial mocks?
    reddit.com/r/golang | 2021-05-10
    For example: https://github.com/bouk/monkey

fast_check_once

Posts with mentions or reviews of fast_check_once. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-08-22.

What are some alternatives?

When comparing monkey and fast_check_once you can also consider the following projects:

gomock - GoMock is a mocking framework for the Go programming language.

Mmock - Mmock is an HTTP mocking application for testing and fast prototyping

go-txdb - Immutable transaction isolated sql driver for golang

hoverfly - Lightweight service virtualization/API simulation tool for developers and testers

httpmock - HTTP mocking for Golang

minimock - Powerful mock generation tool for Go programming language

gock - HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽

dapr - Dapr is a portable, event-driven, runtime for building distributed applications across cloud and edge.

mockit - Library that make mocking of Go functions/methods easy

mockitout - A language agnostic HTTP mock server for quick stub testing

mockery - A mock code autogenerator for Golang

counterfeiter - A tool for generating self-contained, type-safe test doubles in go