import React from 'react' import assert from 'assert' import sinon from 'sinon' import { mount } from 'enzyme' import SettingsTab from '../index' describe('Settings Tab', function () { let wrapper const props = { setCurrentCurrency: sinon.spy(), displayWarning: sinon.spy(), setUseBlockie: sinon.spy(), updateCurrentLocale: sinon.spy(), setUseNativeCurrencyAsPrimaryCurrencyPreference: sinon.spy(), warning: '', currentLocale: 'en', useBlockie: false, currentCurrency: 'usd', conversionDate: 1, nativeCurrency: 'eth', useNativeCurrencyAsPrimaryCurrency: true, } beforeEach(function () { wrapper = mount( , { context: { t: str => str, }, } ) }) it('selects currency', async function () { const selectCurrency = wrapper.find({ placeholder: 'selectCurrency' }) selectCurrency.props().onSelect('eur') assert(props.setCurrentCurrency.calledOnce) }) it('selects locale', async function () { const selectLocale = wrapper.find({ placeholder: 'selectLocale' }) await selectLocale.props().onSelect('ja') assert(props.updateCurrentLocale.calledOnce) }) it('sets fiat primary currency', function () { const selectFiat = wrapper.find('#fiat-primary-currency') selectFiat.simulate('change') assert(props.setUseNativeCurrencyAsPrimaryCurrencyPreference.calledOnce) }) it('toggles blockies', function () { const toggleBlockies = wrapper.find({ type: 'checkbox' }) toggleBlockies.simulate('click') assert(props.setUseBlockie.calledOnce) }) })