diff --git a/src/shared/util.js b/src/shared/util.js index c4752522fcde9..006c416b0db49 100644 --- a/src/shared/util.js +++ b/src/shared/util.js @@ -1075,21 +1075,12 @@ function normalizeUnicode(str) { function getUuid() { if ( (typeof PDFJSDev !== "undefined" && PDFJSDev.test("MOZCENTRAL")) || - (typeof crypto !== "undefined" && typeof crypto?.randomUUID === "function") + typeof crypto.randomUUID === "function" ) { return crypto.randomUUID(); } const buf = new Uint8Array(32); - if ( - typeof crypto !== "undefined" && - typeof crypto?.getRandomValues === "function" - ) { - crypto.getRandomValues(buf); - } else { - for (let i = 0; i < 32; i++) { - buf[i] = Math.floor(Math.random() * 255); - } - } + crypto.getRandomValues(buf); return bytesToString(buf); } diff --git a/test/unit/util_spec.js b/test/unit/util_spec.js index c5a9e07da1a72..9d96e118e11a1 100644 --- a/test/unit/util_spec.js +++ b/test/unit/util_spec.js @@ -18,6 +18,7 @@ import { bytesToString, createValidAbsoluteUrl, getModificationDate, + getUuid, string32, stringToBytes, stringToPDFString, @@ -248,4 +249,12 @@ describe("util", function () { expect(getModificationDate(date)).toEqual("31410609020653"); }); }); + + describe("getUuid", function () { + it("should get uuid string", function () { + const uuid = getUuid(); + expect(typeof uuid).toEqual("string"); + expect(uuid.length).toBeGreaterThanOrEqual(32); + }); + }); });