From 1997c401a5e67b76663d3996ec085eb6782c34e9 Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Thu, 23 Feb 2017 11:34:14 -0300 Subject: [#907] Adds integration test for translations For this test, we refactored the way translations were done for backup account and login, concentrating them in the common/app.js component. with @thaissiqueira --- web-ui/test/integration/translations.spec.js | 28 ++++++++------- web-ui/test/unit/login/app.spec.js | 53 ---------------------------- web-ui/test/unit/login/page.spec.js | 53 ++++++++++++++++++++++++++++ 3 files changed, 68 insertions(+), 66 deletions(-) delete mode 100644 web-ui/test/unit/login/app.spec.js create mode 100644 web-ui/test/unit/login/page.spec.js (limited to 'web-ui/test') diff --git a/web-ui/test/integration/translations.spec.js b/web-ui/test/integration/translations.spec.js index 1173695d..fe17838b 100644 --- a/web-ui/test/integration/translations.spec.js +++ b/web-ui/test/integration/translations.spec.js @@ -1,21 +1,23 @@ import { mount } from 'enzyme'; import expect from 'expect'; import React from 'react'; -import App from 'src/backup_account/app'; -import testI18n from './i18n' +import App from 'src/common/app'; +import BackupAccountPage from 'src/backup_account/page'; +import LoginPage from 'src/login/page'; +import testI18n from './i18n'; -describe('App', () => { - let app; - - beforeEach(() => { - app = mount(); - }); - - it('renders translated header logout text', () => { - expect(app.find('header').text()).toContain('Logout'); +describe('Translations', () => { + context('Backup Account Page', () => { + it('translates all key', () => { + const app = mount(} />); + expect(app.text()).toNotContain('untranslated', 'Unstranslated message found in the text: ' + app.text()); + }); }); - it('renders translated footer text', () => { - expect(app.find('footer').text()).toContain('Product in development. Feedback and issues to team@pixelated-project.org'); + context('Login Page', () => { + it('translates all key', () => { + const app = mount(} />); + expect(app.text()).toNotContain('untranslated', 'Unstranslated message found in the text: ' + app.text()); + }); }); }); diff --git a/web-ui/test/unit/login/app.spec.js b/web-ui/test/unit/login/app.spec.js deleted file mode 100644 index 39d21f04..00000000 --- a/web-ui/test/unit/login/app.spec.js +++ /dev/null @@ -1,53 +0,0 @@ -import { shallow } from 'enzyme'; -import expect from 'expect'; -import React from 'react'; -import { App } from 'src/login/app'; -import AuthError from 'src/login/error/auth_error'; -import GenericError from 'src/login/error/generic_error'; -import PixelatedWelcome from 'src/login/about/pixelated_welcome'; - -describe('App', () => { - let app; - const mockTranslations = key => key; - - it('renders login form', () => { - app = shallow(); - expect(app.find('form').props().action).toEqual('/login'); - }); - - it('renders welcome message when no error', () => { - app = shallow(); - expect(app.find(PixelatedWelcome).length).toEqual(1); - }); - - it('renders auth error message', () => { - app = shallow(); - expect(app.find(AuthError).length).toEqual(1); - }); - - it('renders generic error message when error', () => { - app = shallow(); - expect(app.find(GenericError).length).toEqual(1); - }); - - it('does not render welcome message when error', () => { - app = shallow(); - expect(app.find(PixelatedWelcome).length).toEqual(0); - }); - - it('does not render error message', () => { - app = shallow(); - expect(app.find(AuthError).length).toEqual(0); - expect(app.find(GenericError).length).toEqual(0); - }); - - it('adds small logo class when error', () => { - app = shallow(); - expect(app.find('.logo').props().className).toEqual('logo small-logo'); - }); - - it('does not add small logo class when no error', () => { - app = shallow(); - expect(app.find('.logo').props().className).toEqual('logo'); - }); -}); diff --git a/web-ui/test/unit/login/page.spec.js b/web-ui/test/unit/login/page.spec.js new file mode 100644 index 00000000..b4063222 --- /dev/null +++ b/web-ui/test/unit/login/page.spec.js @@ -0,0 +1,53 @@ +import { shallow } from 'enzyme'; +import expect from 'expect'; +import React from 'react'; +import { Page } from 'src/login/page'; +import AuthError from 'src/login/error/auth_error'; +import GenericError from 'src/login/error/generic_error'; +import PixelatedWelcome from 'src/login/about/pixelated_welcome'; + +describe('Page', () => { + let page; + const mockTranslations = key => key; + + it('renders login form', () => { + page = shallow(); + expect(page.find('form').props().action).toEqual('/login'); + }); + + it('renders welcome message when no error', () => { + page = shallow(); + expect(page.find(PixelatedWelcome).length).toEqual(1); + }); + + it('renders auth error message', () => { + page = shallow(); + expect(page.find(AuthError).length).toEqual(1); + }); + + it('renders generic error message when error', () => { + page = shallow(); + expect(page.find(GenericError).length).toEqual(1); + }); + + it('does not render welcome message when error', () => { + page = shallow(); + expect(page.find(PixelatedWelcome).length).toEqual(0); + }); + + it('does not render error message', () => { + page = shallow(); + expect(page.find(AuthError).length).toEqual(0); + expect(page.find(GenericError).length).toEqual(0); + }); + + it('adds small logo class when error', () => { + page = shallow(); + expect(page.find('.logo').props().className).toEqual('logo small-logo'); + }); + + it('does not add small logo class when no error', () => { + page = shallow(); + expect(page.find('.logo').props().className).toEqual('logo'); + }); +}); -- cgit v1.2.3