Comments (5)
ok i managed to get it work using combination of jest.useRealTimers(), setTimeout and done.
no jest.runAllTimers() / jest.useFakeTimers('modern')
simply do
it('i am testing', done => {
wrapper.find('button').prop('onClick')()
setTimeout(()=>{
done()
},600)
})
from use-debounce.
I've made an example of your case, everything seems to work properly.
Here is the code, I hope It would help you to determine the problem: https://github.com/xnimorz/use-debounce/compare/tmp?expand=1#diff-f2501e1cc67f3029fe72847a2b1dba6abfeabf59289997bcdb06eed7ca3d8b11R13
Please, check your config and whether or not jest.useFakeTimers('modern');
is used
from use-debounce.
Hi @Miteshdv
Thank you for the issue!
Could you provide some context, please?
At the moment we have https://github.com/xnimorz/use-debounce/blob/master/test/useDebouncedCallback.test.tsx for callback and https://github.com/xnimorz/use-debounce/blob/master/test/useDebounce.test.tsx for values.
You can find examples of testing components with these hooks inside these 2 files. The general piece of advice is to use stubs for timeouts and run them "to time" or run them all to test your components.
from use-debounce.
Thanks For Reply ,
I tried various ways , but i am getting error
ran 100000 timers, and there are still more! assuming we've hit an infinite recursion and bailing out
when i do jest.runAllTimers()
from use-debounce.
I have a component
const Time = ()=>{
debounced = useDebouncedCallback(()=>{
//CANT COVER THIS LINE IN TEST COVERAGE
console.log('test')
},500)
return <button onClick={debounced .callback}/>
}
i do
wrapper.find('button').prop('onClick')()
the callback function is not covered
i did
act(()=>{
jest.runAllTimers()})
i get error
from use-debounce.
Related Issues (20)
- ` useDebouncedCallback` does not have ` equalityFn` option in the type definition. HOT 2
- value controller reference changes on every render HOT 2
- Add types to package.json export HOT 3
- "leading: true" not working for v7 HOT 8
- create-react-app 5 compatibility HOT 4
- useDebouncedCallback does not update state when react-dev-tools is open HOT 2
- errors in debounce fn are not propagated HOT 1
- useDebouncedCallback gives incorrect import suggestion in VSCode HOT 2
- Jest 28.0.0 and jest-environment-jsdom fails to import use-debounce in tests HOT 6
- Seems like useDebouncedCallback is executing async functions in render scope HOT 2
- use-debounce to auto-save multi input form HOT 1
- useDebouncedCallback should return the callback function HOT 3
- Cannot use import statement outside of a module - running with jest in ESM mode HOT 1
- Cannot find module 'use-debounce' HOT 6
- [9.0.1] TS7016: Could not find a declaration file for module 'use-debounce'. HOT 8
- Not react hook? HOT 1
- useDebouncedCallback - doesnt update when inner function updates HOT 2
- API of hooks are not documented HOT 2
- Incorrect return type for flush() function HOT 4
- useDebouncedCallback major change in v6.0.0. If you use older version you should go through Changelog to get a fresh API HOT 2
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 use-debounce.