Comments (4)
Here is shortened version of test that still reproduces the error, I hope It will be engouh.
Here is is sample of failed test output
1) test #init assert 6 (MyAppRouter.ConsumerListenerTest)
test/consumer_listener_test.exs:101
** (MatchError) no match of right hand side value: false
code: with_mocks(mocks) do
stacktrace:
test/consumer_listener_test.exs:104: anonymous fn/2 in MyAppRouter.ConsumerListenerTest."test #init assert 6"/1
(elixir) lib/enum.ex:1940: Enum."-reduce/3-lists^foldl/2-0-"/3
test/consumer_listener_test.exs:104: (test)
And one more detail: Our project uses umbrella. The case with flicker failing tests reporoduces only when running tests from the root direcrory of the whole project. When running from the directory of the application with specific test - the test always pass
from mock.
So is the same test failing/passing ephemerally?
Could you provide some example code so we can debug together?
from mock.
Hmm...
Given that you said this: When running from the directory of the application with specific test - the test always pass
and looking at the test you pasted, the only theory I have is that your tests are asynchronous, so there's a weird race condition happening when you are trying to mock things.
Can you try updating this line with use ExUnit.Case, async: true
and see if the error persists?
Reference: https://hexdocs.pm/ex_unit/ExUnit.Case.html
from mock.
No, tests are not asynchronous, if add async: true
, that way they will be asynchronous and they won't pass at all but with other errors.
Sorry for late reply
from mock.
Related Issues (20)
- defdelegate problem HOT 1
- Feature Request: Capture arguments
- assert_called with pattern matching HOT 10
- Assert called doesn't work on second function call
- Proposal: clearer calls assertions with pattern matching HOT 2
- Enable passing the caller module attributes to with_mocks macro HOT 1
- Proposal: add `assert_not_called` macro HOT 2
- Return different values depending on number of times a function is called HOT 5
- Cannot mock Logger.error/1 HOT 1
- Mocking the same function in 2 separate tests while async: false makes test fail.
- Feature Request: Support per-process mocking HOT 3
- Publish README with Documentation
- Feature request: support for `on_exit` style teardown with `setup_with_mocks`
- Typo in the Mock module. Location: `call_history` doc
- Problem with mock function HOT 1
- No Release to hex.pm since May, 2021 HOT 1
- Problems with Elixir 1.14.5 HOT 1
- Assert called does not assert equality when an argument is a map
- Mock is crashing process in umbella project HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mock.