forked from mirrors/gecko-dev
Removes the labeling of individual languages as being in beta or not, from the UI components of translations. Differential Revision: https://phabricator.services.mozilla.com/D184177
78 lines
2.4 KiB
JavaScript
78 lines
2.4 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
"use strict";
|
|
|
|
add_task(async function test_about_translations_language_directions() {
|
|
await openAboutTranslations({
|
|
languagePairs: [
|
|
// English (en) is LTR and Arabic (ar) is RTL.
|
|
{ fromLang: "en", toLang: "ar" },
|
|
{ fromLang: "ar", toLang: "en" },
|
|
],
|
|
runInPage: async ({ selectors }) => {
|
|
const { document, window } = content;
|
|
Cu.waiveXrays(window).DEBOUNCE_DELAY = 5; // Make the timer run faster for tests.
|
|
|
|
await ContentTaskUtils.waitForCondition(
|
|
() => {
|
|
return document.body.hasAttribute("ready");
|
|
},
|
|
"Waiting for the document to be ready.",
|
|
100,
|
|
200
|
|
);
|
|
|
|
/** @type {HTMLSelectElement} */
|
|
const fromSelect = document.querySelector(selectors.fromLanguageSelect);
|
|
/** @type {HTMLSelectElement} */
|
|
const toSelect = document.querySelector(selectors.toLanguageSelect);
|
|
/** @type {HTMLTextAreaElement} */
|
|
const translationTextarea = document.querySelector(
|
|
selectors.translationTextarea
|
|
);
|
|
/** @type {HTMLDivElement} */
|
|
const translationResult = document.querySelector(
|
|
selectors.translationResult
|
|
);
|
|
|
|
fromSelect.value = "en";
|
|
fromSelect.dispatchEvent(new Event("input"));
|
|
toSelect.value = "ar";
|
|
toSelect.dispatchEvent(new Event("input"));
|
|
translationTextarea.value = "This text starts as LTR.";
|
|
translationTextarea.dispatchEvent(new Event("input"));
|
|
|
|
is(
|
|
window.getComputedStyle(translationTextarea).direction,
|
|
"ltr",
|
|
"The English input is LTR"
|
|
);
|
|
is(
|
|
window.getComputedStyle(translationResult).direction,
|
|
"rtl",
|
|
"The Arabic results are RTL"
|
|
);
|
|
|
|
toSelect.value = "";
|
|
toSelect.dispatchEvent(new Event("input"));
|
|
fromSelect.value = "ar";
|
|
fromSelect.dispatchEvent(new Event("input"));
|
|
toSelect.value = "en";
|
|
toSelect.dispatchEvent(new Event("input"));
|
|
translationTextarea.value = "This text starts as RTL.";
|
|
translationTextarea.dispatchEvent(new Event("input"));
|
|
|
|
is(
|
|
window.getComputedStyle(translationTextarea).direction,
|
|
"rtl",
|
|
"The Arabic input is RTL"
|
|
);
|
|
is(
|
|
window.getComputedStyle(translationResult).direction,
|
|
"ltr",
|
|
"The English results are LTR"
|
|
);
|
|
},
|
|
});
|
|
});
|