ook
I’m writting tests for a simple module which do HTTP requests.
As recommanded in Mocks and explicit contracts « Plataformatec Blog I use an environnement variable instead of mocking:
defmodule FaLogentriesParserEx do
@logentries_api Application.get_env(:fa_logentries_parser_ex, :logentries_api)
end
Of course, for dev and prod environment, the module to load in under lib/fa_logentries_parser_ex but since I don’t want test stuff under lib/ I created the “mock” module under test/fa_logentries_parser_ex/logentries_api_fake.exs
My problem: mix test can’t find that module:
1) test handle_pipeline_status (FaLogentriesParserExTest)
test/fa_logentries_parser_ex_test.exs:9
** (UndefinedFunctionError) function FaLogentriesParserExTest.LogEntriesApiFake.fetch/2 is undefined (module FaLogentriesParserExTest.LogEntriesApiFake is not available)
stacktrace:
FaLogentriesParserExTest.LogEntriesApiFake.fetch(1501576495019, 1501576555019)
(fa_logentries_parser_ex) lib/fa_logentries_parser_ex.ex:10: FaLogentriesParserEx.fetch/1
test/fa_logentries_parser_ex_test.exs:89: (test)
Could you help me to make that module loadable or advice a better way to test?
Trending in Questions
I’m working on a project that simulates the bumbl example in the programming phoenix book. It acts almost like an email client. We have a...
New
Hello,
I know there is an approach for handling lists that allows for optimized traversal, but I can’t recall the specific method (somet...
New
Documentation
While reading the Scoped Routes section, I noticed that the documentation currently refers to a problem without explainin...
New
I’m seeing that a list inside a Kino.DataTable will be interpreted as a charlist, even if the Kino.configure() is set to charlists: :as_l...
New
So my question is quite simple and i have found no conclusive answer on forum, google or AI.
Should we use :erlang.float for Integer to ...
New
Hi, I’ve just set up an application with ash_authentication. There is only magic link strategy for now, so there is no confirmation add o...
New
I recently noticed that Elixir’s Logger defaults its primary log level to :debug when no :logger, :level application configuration is pre...
New
Other Trending Topics
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
I am happy to introduce the very α version of the new programming language compiled to BEAM.
Welcome Cure.
It has literally three kille...
New
Hi there! We created Gust: A task orchestrator inspired by Airflow.
For those who have never heard about Aiflow, it’s a Python-based wor...
New
Hi everyone!
The first release candidate for the Expert language server project is now available!
We’ve published a press release detai...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixirconf-us
- #ai
- #blog-post
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #metaprogramming
- #hex
- #security










Showing Posts 1 to 2- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
peerreynders
Here is the way I did it with a behaviour:
1.) In the
mix.exsuseelixirc_paths:essentially this adds the “test/support” directory where the mock files are
2). in
config/config.exs:Essentially this will cause
test\support\hw_mock.exto load for testing through@hw_implinlib\hw.ex- otherwiselib\hw_output.exis loaded.3). Meanwhile
lib\hw.exlooks like this:while
test\support\hw_mock.exlooks like this:ook
Thanks a lot peerreynders,
elixirc_pathswas perfectly what I needed. I’ll check your way to go with behavior, too.