diff --git a/src/components/language-selector/language-selector.jsx b/src/components/language-selector/language-selector.jsx index e7fd2fda46f95edc3605fefe76c2eae0dad66637..fd4caef5f93590ddcd5878920ca4c084d292545c 100644 --- a/src/components/language-selector/language-selector.jsx +++ b/src/components/language-selector/language-selector.jsx @@ -7,8 +7,9 @@ import styles from './language-selector.css'; // supported languages to exclude from the menu, but allow as a URL option const ignore = ['he']; -const LanguageSelector = ({currentLocale, onChange}) => ( +const LanguageSelector = ({currentLocale, label, onChange}) => ( <select + aria-label={label} className={styles.languageSelect} value={currentLocale} onChange={onChange} @@ -30,6 +31,7 @@ const LanguageSelector = ({currentLocale, onChange}) => ( LanguageSelector.propTypes = { currentLocale: PropTypes.string, + label: PropTypes.string, onChange: PropTypes.func }; diff --git a/src/components/menu-bar/menu-bar.jsx b/src/components/menu-bar/menu-bar.jsx index 98bf19bc5b1835dba6a88c357bc6cd706b080ac7..67e026edda6be1abc5112a5c327028fa22a9948d 100644 --- a/src/components/menu-bar/menu-bar.jsx +++ b/src/components/menu-bar/menu-bar.jsx @@ -177,7 +177,7 @@ class MenuBar extends React.Component { src={dropdownCaret} /> </div> - <LanguageSelector aria-label={this.props.intl.formatMessage(ariaMessages.language)} /> + <LanguageSelector label={this.props.intl.formatMessage(ariaMessages.language)} /> </div> <div className={classNames(styles.menuBarItem, styles.hoverable, { diff --git a/test/integration/localization.test.js b/test/integration/localization.test.js index 9c9193b97a5b7657be0039f0280b17ead6e08dce..cf02aa86b1bc2c9707950fbb7317506302c836c5 100644 --- a/test/integration/localization.test.js +++ b/test/integration/localization.test.js @@ -25,7 +25,7 @@ describe('Localization', () => { test('Localization', async () => { await loadUri(uri); await clickXpath('//button[@title="Try It"]'); - await clickXpath('//*[@aria-label="language selector"]/following-sibling::select'); + await clickXpath('//*[@aria-label="language selector"]'); await clickText('Deutsch'); await new Promise(resolve => setTimeout(resolve, 1000)); // wait for blocks refresh