import React from 'react'; import sinon from 'sinon'; import { mount } from 'enzyme'; import SecurityTab from './security-tab.container'; describe('Security Tab', () => { let wrapper; const props = { revealSeedConfirmation: sinon.spy(), showClearApprovalModal: sinon.spy(), setParticipateInMetaMetrics: sinon.spy(), displayWarning: sinon.spy(), showIncomingTransactions: false, setShowIncomingTransactionsFeatureFlag: sinon.spy(), history: { push: sinon.spy(), }, privacyMode: true, warning: '', participateInMetaMetrics: false, setUsePhishDetect: sinon.spy(), usePhishDetect: true, }; beforeEach(() => { wrapper = mount(, { context: { t: (str) => str, metricsEvent: () => undefined, }, }); }); it('navigates to reveal seed words page', () => { const seedWords = wrapper.find('.button.btn-danger.btn--large'); seedWords.simulate('click'); expect(props.history.push.calledOnce).toStrictEqual(true); expect(props.history.push.getCall(0).args[0]).toStrictEqual('/seed'); }); it('toggles incoming txs', () => { const incomingTxs = wrapper.find({ type: 'checkbox' }).at(0); incomingTxs.simulate('click'); expect( props.setShowIncomingTransactionsFeatureFlag.calledOnce, ).toStrictEqual(true); }); it('toggles phishing detection', () => { const phishDetect = wrapper.find({ type: 'checkbox' }).at(1); phishDetect.simulate('click'); expect(props.setUsePhishDetect.calledOnce).toStrictEqual(true); }); it('toggles metaMetrics', () => { const metaMetrics = wrapper.find({ type: 'checkbox' }).at(2); metaMetrics.simulate('click'); expect(props.setParticipateInMetaMetrics.calledOnce).toStrictEqual(true); }); });