Ad
Getting 'NULL' Error While I Am Testing 'document.getElementByID' Line. I Already Tried AttachTo Approach But That Is Also Not Working
I am testing my react function using jest. While I am testing I am getting error focus of null for document.getElementById line.
I already tried this solution. jest + enzyme, using mount(), document.getElementById() returns null on component which appear after _method call But this is not working for me.
this is my abc.js
clearSearch = () => {
const { typeSearchBox } = this.props;
this.setState({ searchPlaceholderValue: PROMPTRAISED });
this.setState({ searchValue: '' });
this.setState({ showClearIcon: false });
const searchBox = document.getElementById(`SearchBox_${typeSearchBox}`);
searchBox.focus();
};
this is my abc.test.js
it('+++ inputs valid filtered search text', () => {
categoryWrapper.find('ClearIcon').prop('onClick')();
});
on click of clearIcon clearseach is trigger.
Ad
Answer
You need to mock document.getElementById
function to return an object with focus
function in your test file.
const mockUpObject = {
focus: () => null,
};
global.document.getElementById = jest.fn(() => mockUpObject);
Ad
source: stackoverflow.com
Related Questions
- → Import statement and Babel
- → should I choose reactjs+f7 or f7+vue.js?
- → Uncaught TypeError: Cannot read property '__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED' of undefined
- → .tsx webpack compile fails: Unexpected token <
- → React-router: Passing props to children
- → ListView.DataSource looping data for React Native
- → React Native with visual studio 2015 IDE
- → Can't test submit handler in React component
- → React + Flux - How to avoid global variable
- → Webpack, React & Babel, not rendering DOM
- → How do I determine if a new ReactJS session and/or Browser session has started?
- → Alt @decorators in React-Native
- → How to dynamically add class to parent div of focused input field?
Ad