1
를 사용에서는 window.location 설정할 수 없다
나는 무 테스트에 내가하고 싶은 구성 요소 반응있어 :이 들어가거나 효소와 농담
...
function NavigationLink() {
var _href = '#' + AppConstants.PERSONAL_INFORMATION_SECTION;
var firstElementToFocus = AppConstants.FIRST_NAME_ID;
function _onClick (event) {
event.preventDefault();
window.location = _href;
document.getElementById(firstElementToFocus).focus();
}
return (
<div>
<a href={_href} id="skip-nav" onClick={_onClick} >{'Skip to main content'}</a>
</div>
);
}
module.exports = NavigationLink;
다음과 같이이 파일에 대한 내 단위 테스트는 현재 :
jest.dontMock('../NavigationLink.react.js');
var React = require('react');
var enzyme = require('enzyme');
var shallow = enzyme.shallow;
var wrapper;
var AppConstants = require('../../constants/AppConstants');
var ProductStore = require('../../stores/ProductStore');
var NavigationLink = require('../NavigationLink.react.js');
var mockPreventDefault = jest.fn();
describe('NavigationLink', function() {
describe('when the user is on a consumer application', function() {
beforeEach(function setup() {
var fieldToFocus = AppConstants.FIRST_NAME_ID;
document.getElementById = function (mockData) {
return {
focus: function() {
return true;
}
}
}
ProductStore.getProductDetailsState.mockReturnValue({
...
});
wrapper = shallow(
<NavigationLink />
);
});
it('sets the window location to the Personal Information Section when the skip navigation link is selected by the user', function() {
wrapper.find('#skip-nav').simulate('click', { preventDefault: mockPreventDefault });
expect(window.location.hash).toEqual('#' + AppConstants.PERSONAL_INFORMATION_SECTION);
});
});
});
농담이 나를 던져 오류 :
expect(received).toEqual(expected)
Expected value to equal:
"#formBody"
Received:
""
내가 모두 내 compone의 다른 부분에 프린트 안감을 시도 NT와 테스트 그리고 Jest/Enzyme이 window
객체에 액세스 할 수없는 것처럼 보입니다.
내가 뭘 잘못하고 있니?