mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-20 15:18:08 +02:00
[Editor] Corrrectly get the words from the alt-text when reporting the telemetry (bug 1929311)
This commit is contained in:
parent
f8d11a3a3a
commit
e161826a44
3 changed files with 93 additions and 4 deletions
|
@ -897,6 +897,9 @@ describe("Stamp Editor", () => {
|
|||
eventBus.on("annotationeditoruimanager", ({ uiManager }) => {
|
||||
window.uiManager = uiManager;
|
||||
});
|
||||
eventBus.on("reporttelemetry", ({ details }) => {
|
||||
(window.telemetry ||= []).push(structuredClone(details));
|
||||
});
|
||||
},
|
||||
},
|
||||
{
|
||||
|
@ -917,6 +920,7 @@ describe("Stamp Editor", () => {
|
|||
}
|
||||
await page.evaluate(() => {
|
||||
window.uiManager.reset();
|
||||
window.telemetry = [];
|
||||
});
|
||||
// Disable editing mode.
|
||||
await switchToStamp(page, /* disable */ true);
|
||||
|
@ -953,7 +957,7 @@ describe("Stamp Editor", () => {
|
|||
// Check that AI guessed the correct alt text.
|
||||
await page.waitForFunction(
|
||||
`document.getElementById("newAltTextDescriptionTextarea").value ===
|
||||
"Fake alt text"`
|
||||
"Fake alt text."`
|
||||
);
|
||||
|
||||
// Check that the dialog has the correct title: "Edit..."
|
||||
|
@ -1182,6 +1186,82 @@ describe("Stamp Editor", () => {
|
|||
await page.waitForSelector("#newAltTextDisclaimer[hidden]");
|
||||
}
|
||||
});
|
||||
|
||||
it("must check that the data in telemetry are correct", async () => {
|
||||
// Run sequentially to avoid clipboard issues.
|
||||
for (const [browserName, page] of pages) {
|
||||
await page.evaluate(() => {
|
||||
window.PDFViewerApplication.mlManager.enableAltTextModelDownload = true;
|
||||
});
|
||||
await switchToStamp(page);
|
||||
|
||||
// Add an image.
|
||||
await copyImage(page, "../images/firefox_logo.png", 0);
|
||||
const editorSelector = getEditorSelector(0);
|
||||
await page.waitForSelector(editorSelector);
|
||||
await waitForSerialized(page, 1);
|
||||
|
||||
// Wait for the dialog to be visible.
|
||||
await page.waitForSelector("#newAltTextDialog", { visible: true });
|
||||
|
||||
// Check that AI guessed the correct alt text.
|
||||
await page.waitForFunction(
|
||||
`document.getElementById("newAltTextDescriptionTextarea").value ===
|
||||
"Fake alt text."`
|
||||
);
|
||||
// Clear the input and check that the title changes to "Add..."
|
||||
await clearInput(
|
||||
page,
|
||||
"#newAltTextDescriptionTextarea",
|
||||
/* waitForInputEvent = */ true
|
||||
);
|
||||
// Save the empty text.
|
||||
await page.click("#newAltTextSave");
|
||||
await page.waitForSelector("#newAltTextDialog", { visible: false });
|
||||
|
||||
// Get the telemetry data and clean.
|
||||
let telemetry = await page.evaluate(() => {
|
||||
const tel = window.telemetry;
|
||||
window.telemetry = [];
|
||||
return tel;
|
||||
});
|
||||
let saveTelemetry = telemetry.find(
|
||||
details => details.data.action === "pdfjs.image.alt_text.user_edit"
|
||||
);
|
||||
expect(saveTelemetry.data.data)
|
||||
.withContext(`In ${browserName}`)
|
||||
.toEqual({
|
||||
total_words: 3,
|
||||
words_removed: 3,
|
||||
words_added: 0,
|
||||
});
|
||||
|
||||
// Click on the Review button.
|
||||
const buttonSelector = `${editorSelector} button.altText.new`;
|
||||
await page.waitForSelector(buttonSelector, { visible: true });
|
||||
await page.click(buttonSelector);
|
||||
await page.waitForSelector("#newAltTextDialog", { visible: true });
|
||||
|
||||
// Add a new alt text and check that the title changes to "Edit..."
|
||||
await page.type("#newAltTextDescriptionTextarea", "Fake text alt foo.");
|
||||
|
||||
// Save the empty text.
|
||||
await page.click("#newAltTextSave");
|
||||
await page.waitForSelector("#newAltTextDialog", { visible: false });
|
||||
|
||||
telemetry = await page.evaluate(() => window.telemetry);
|
||||
saveTelemetry = telemetry.find(
|
||||
details => details.data.action === "pdfjs.image.alt_text.user_edit"
|
||||
);
|
||||
expect(saveTelemetry.data.data)
|
||||
.withContext(`In ${browserName}`)
|
||||
.toEqual({
|
||||
total_words: 3,
|
||||
words_removed: 0,
|
||||
words_added: 1,
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
describe("New alt-text flow (bug 1920515)", () => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue