Поскольку LoginContainer
является упаковкой с HOC, вам нужно либо экспортировать компонент без withStyles
HOC, либо использовать dive
в оболочке, чтобы получить экземпляр компонента.Также state
- это функция для component instance
, и, следовательно, вам необходимо вызвать ее для доступа к состоянию
describe("<LoginContainer/>", () => {
let wrapper;
beforeEach(() => {
wrapper = shallow(<LoginContainer />);
});
it("toggle showpassword value", () => {
const comp = wrapper.dive();
comp.dive().setState({ showPassword: false });
comp.instance().handleClickShowPassword();
expect(comp.state("showPassword")).toEqual(true);
});
});
Рабочая демонстрация