From 7fe1499dfb082045c5d7e3e76363a13e9d8e3618 Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Fri, 10 Feb 2017 18:18:17 -0200 Subject: [#922] Adds integration test for translations with @tayanefernandes --- web-ui/test/integration/i18n.js | 14 ++++++++++++++ web-ui/test/integration/setup.js | 15 +++++++++++++++ web-ui/test/integration/translations.spec.js | 21 +++++++++++++++++++++ 3 files changed, 50 insertions(+) create mode 100644 web-ui/test/integration/i18n.js create mode 100644 web-ui/test/integration/setup.js create mode 100644 web-ui/test/integration/translations.spec.js (limited to 'web-ui/test') diff --git a/web-ui/test/integration/i18n.js b/web-ui/test/integration/i18n.js new file mode 100644 index 00000000..099df2d7 --- /dev/null +++ b/web-ui/test/integration/i18n.js @@ -0,0 +1,14 @@ +import i18n from 'i18next'; +import translations from '../../app/locales/en_US/translation.json'; + +i18n + .init({ + lng: 'en', + resources: { + en: { + translation: translations + } + } + }); + +export default i18n; diff --git a/web-ui/test/integration/setup.js b/web-ui/test/integration/setup.js new file mode 100644 index 00000000..49cd381e --- /dev/null +++ b/web-ui/test/integration/setup.js @@ -0,0 +1,15 @@ +// Enzyme setup file +// https://github.com/airbnb/enzyme/blob/master/docs/guides/jsdom.md +var jsdom = require('jsdom').jsdom; + +global.document = jsdom(''); +global.window = document.defaultView; +Object.keys(document.defaultView).forEach((property) => { + if (typeof global[property] === 'undefined') { + global[property] = document.defaultView[property]; + } +}); + +global.navigator = { + userAgent: 'node.js' +}; diff --git a/web-ui/test/integration/translations.spec.js b/web-ui/test/integration/translations.spec.js new file mode 100644 index 00000000..1173695d --- /dev/null +++ b/web-ui/test/integration/translations.spec.js @@ -0,0 +1,21 @@ +import { mount } from 'enzyme'; +import expect from 'expect'; +import React from 'react'; +import App from 'src/backup_account/app'; +import testI18n from './i18n' + +describe('App', () => { + let app; + + beforeEach(() => { + app = mount(); + }); + + it('renders translated header logout text', () => { + expect(app.find('header').text()).toContain('Logout'); + }); + + it('renders translated footer text', () => { + expect(app.find('footer').text()).toContain('Product in development. Feedback and issues to team@pixelated-project.org'); + }); +}); -- cgit v1.2.3