mock
Mocking library for Elixir language (by jjh42)
mimic
A mocking library for Elixir (by edgurgel)
Our great sponsors
mock | mimic | |
---|---|---|
2 | 3 | |
626 | 349 | |
- | - | |
4.3 | 4.8 | |
2 months ago | 18 days ago | |
Elixir | Elixir | |
MIT License | Apache License 2.0 |
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.
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.
mock
Posts with mentions or reviews of mock.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-18.
-
An Introduction to Mocking Tools for Elixir
It also maintains separate mocks for each process, so you can continue using async tests. It’s a great alternative to Mock — but that also means the same caveat applies: be careful about what you mock.
-
How to ignore a child of a Supervisor not being able to start during tests?
In order to do this you may use mock (which is simple to use), mox (they have pretty compelling arguments why not to mock traditionally), or specifically for http requests, bypass.
mimic
Posts with mentions or reviews of mimic.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-18.
-
An Introduction to Mocking Tools for Elixir
If you are used to Mocha for other languages, you can check out Mimic. It lets you define stubs and expectations during tests by keeping track of the stubbed module in an ETS table.
-
Purity injection in Elixir
By adjusting the mindset to stop thinking about dependencies and start to think about behaviours (functions) we were able to extract the impure parts of the number generator function. Then, by making them injectable we transformed the impure function to the one into which we can inject purity in tests, making it essentially pure and thus much easier to test. We also didn't need any fancy tool like Mox, Mimic or Rewire to define replacement modules for us. The code is hopefully understandable and uses only built-in Elixir idioms, without macros.
-
Testing in elixir
Check out https://github.com/edgurgel/mimic for mocking purposes
What are some alternatives?
When comparing mock and mimic you can also consider the following projects:
mox - Mocks and explicit contracts in Elixir
meck - A mocking library for Erlang
mocha - Mocha is a mocking and stubbing library for Ruby
Stubr - Stubr is a set of functions helping people to create stubs and spies in Elixir.
ex_machina - Create test data for Elixir applications
ExVCR - HTTP request/response recording library for elixir, inspired by VCR.
plug_cowboy - Plug adapter for the Cowboy web server
ecto_it - Ecto plugin with default configuration for repos for testing different ecto plugins with databases
ElixirMock - Creates clean, concurrent, inspectable mocks from elixir modules
definject - Unobtrusive Dependency Injector for Elixir