Merge pull request #17161 from Snuffleupagus/NullL10n-test

Add a unit-test to ensure that `NullL10n` won't diverge from the `L10n`-class
This commit is contained in:
Jonas Jenwald 2023-10-24 20:28:34 +02:00 committed by GitHub
commit f098121644
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 16 additions and 6 deletions

View File

@ -30,6 +30,7 @@ import { AnnotationLayerBuilder } from "../../web/annotation_layer_builder.js";
import { DownloadManager } from "../../web/download_manager.js";
import { EventBus } from "../../web/event_utils.js";
import { GenericL10n } from "../../web/genericl10n.js";
import { L10n } from "../../web/l10n.js";
import { NullL10n } from "../../web/l10n_utils.js";
import { PDFHistory } from "../../web/pdf_history.js";
import { PDFPageView } from "../../web/pdf_page_view.js";
@ -72,4 +73,14 @@ describe("pdfviewer_api", function () {
XfaLayerBuilder,
});
});
it("checks that `NullL10n` implements all methods", function () {
const methods = Object.getOwnPropertyNames(NullL10n).sort();
const baseMethods = Object.getOwnPropertyNames(L10n.prototype)
.filter(m => m !== "constructor" && !m.startsWith("_"))
.sort();
expect(methods).toEqual(baseMethods);
});
});

View File

@ -25,7 +25,7 @@ import { L10n } from "./l10n.js";
class GenericL10n extends L10n {
constructor(lang) {
super({ lang });
this.setL10n(
this._setL10n(
new DOMLocalization(
[],
GenericL10n.#generateBundles.bind(

View File

@ -31,7 +31,7 @@ class L10n {
this.#dir = isRTL ?? L10n.#isRTL(this.#lang) ? "rtl" : "ltr";
}
setL10n(l10n) {
_setL10n(l10n) {
this.#l10n = l10n;
if (typeof PDFJSDev !== "undefined" && PDFJSDev.test("TESTING")) {
document.l10n = l10n;

View File

@ -144,16 +144,15 @@ class PDFFindBar {
const { findResultsCount } = this;
if (total > 0) {
const limit = MATCHES_COUNT_LIMIT,
isLimited = total > limit;
const limit = MATCHES_COUNT_LIMIT;
findResultsCount.setAttribute(
"data-l10n-id",
`pdfjs-find-match-count${isLimited ? "-limit" : ""}`
`pdfjs-find-match-count${total > limit ? "-limit" : ""}`
);
findResultsCount.setAttribute(
"data-l10n-args",
JSON.stringify(isLimited ? { limit } : { current, total })
JSON.stringify({ limit, current, total })
);
} else {
findResultsCount.removeAttribute("data-l10n-id");