Enable the ESLint no-var rule in the test/font/ folder

This was done automatically, using the `gulp lint --fix` command.
This commit is contained in:
Jonas Jenwald 2020-10-26 12:20:03 +01:00
parent 6967b9dd96
commit 15a5f66973
8 changed files with 67 additions and 57 deletions

10
test/font/.eslintrc Normal file
View File

@ -0,0 +1,10 @@
{
"extends": [
"../.eslintrc"
],
"rules": {
// ECMAScript 6
"no-var": "error",
},
}

View File

@ -1,7 +1,7 @@
import { decodeFontData, ttx, verifyTtxOutput } from "./fontutils.js"; import { decodeFontData, ttx, verifyTtxOutput } from "./fontutils.js";
describe("font1", function () { describe("font1", function () {
var font1_1 = decodeFontData( const font1_1 = decodeFontData(
// eslint-disable-next-line max-len // eslint-disable-next-line max-len
"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"
); );

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -14,20 +14,20 @@
* limitations under the License. * limitations under the License.
*/ */
var base64alphabet = const base64alphabet =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
function decodeFontData(base64) { function decodeFontData(base64) {
var result = []; const result = [];
var bits = 0, let bits = 0,
bitsLength = 0; bitsLength = 0;
for (var i = 0, ii = base64.length; i < ii; i++) { for (let i = 0, ii = base64.length; i < ii; i++) {
var ch = base64[i]; const ch = base64[i];
if (ch <= " ") { if (ch <= " ") {
continue; continue;
} }
var index = base64alphabet.indexOf(ch); const index = base64alphabet.indexOf(ch);
if (index < 0) { if (index < 0) {
throw new Error("Invalid character"); throw new Error("Invalid character");
} }
@ -38,7 +38,7 @@ function decodeFontData(base64) {
bitsLength += 6; bitsLength += 6;
if (bitsLength >= 8) { if (bitsLength >= 8) {
bitsLength -= 8; bitsLength -= 8;
var code = (bits >> bitsLength) & 0xff; const code = (bits >> bitsLength) & 0xff;
result.push(code); result.push(code);
} }
} }
@ -46,16 +46,16 @@ function decodeFontData(base64) {
} }
function encodeFontData(data) { function encodeFontData(data) {
var buffer = ""; let buffer = "";
var i, n; let i, n;
for (i = 0, n = data.length; i < n; i += 3) { for (i = 0, n = data.length; i < n; i += 3) {
var b1 = data[i] & 0xff; const b1 = data[i] & 0xff;
var b2 = data[i + 1] & 0xff; const b2 = data[i + 1] & 0xff;
var b3 = data[i + 2] & 0xff; const b3 = data[i + 2] & 0xff;
var d1 = b1 >> 2, const d1 = b1 >> 2,
d2 = ((b1 & 3) << 4) | (b2 >> 4); d2 = ((b1 & 3) << 4) | (b2 >> 4);
var d3 = i + 1 < n ? ((b2 & 0xf) << 2) | (b3 >> 6) : 64; const d3 = i + 1 < n ? ((b2 & 0xf) << 2) | (b3 >> 6) : 64;
var d4 = i + 2 < n ? b3 & 0x3f : 64; const d4 = i + 2 < n ? b3 & 0x3f : 64;
buffer += buffer +=
base64alphabet.charAt(d1) + base64alphabet.charAt(d1) +
base64alphabet.charAt(d2) + base64alphabet.charAt(d2) +
@ -66,10 +66,10 @@ function encodeFontData(data) {
} }
function ttx(data, callback) { function ttx(data, callback) {
var xhr = new XMLHttpRequest(); const xhr = new XMLHttpRequest();
xhr.open("POST", "/ttx"); xhr.open("POST", "/ttx");
var encodedData = encodeFontData(data); const encodedData = encodeFontData(data);
xhr.setRequestHeader("Content-type", "text/plain"); xhr.setRequestHeader("Content-type", "text/plain");
xhr.setRequestHeader("Content-length", encodedData.length); xhr.setRequestHeader("Content-length", encodedData.length);
@ -86,7 +86,7 @@ function ttx(data, callback) {
} }
function verifyTtxOutput(output) { function verifyTtxOutput(output) {
var m = /^<error>(.*?)<\/error>/.exec(output); const m = /^<error>(.*?)<\/error>/.exec(output);
if (m) { if (m) {
throw m[1]; throw m[1];
} }

View File

@ -60,36 +60,36 @@ async function initializePDFJS(callback) {
jasmineRequire.html(jasmine); jasmineRequire.html(jasmine);
var env = jasmine.getEnv(); const env = jasmine.getEnv();
var jasmineInterface = jasmineRequire.interface(jasmine, env); const jasmineInterface = jasmineRequire.interface(jasmine, env);
extend(window, jasmineInterface); extend(window, jasmineInterface);
// Runner Parameters // Runner Parameters
var queryString = new jasmine.QueryString({ const queryString = new jasmine.QueryString({
getWindowLocation() { getWindowLocation() {
return window.location; return window.location;
}, },
}); });
var config = { const config = {
failFast: queryString.getParam("failFast"), failFast: queryString.getParam("failFast"),
oneFailurePerSpec: queryString.getParam("oneFailurePerSpec"), oneFailurePerSpec: queryString.getParam("oneFailurePerSpec"),
hideDisabled: queryString.getParam("hideDisabled"), hideDisabled: queryString.getParam("hideDisabled"),
}; };
var random = queryString.getParam("random"); const random = queryString.getParam("random");
if (random !== undefined && random !== "") { if (random !== undefined && random !== "") {
config.random = random; config.random = random;
} }
var seed = queryString.getParam("seed"); const seed = queryString.getParam("seed");
if (seed) { if (seed) {
config.seed = seed; config.seed = seed;
} }
// Reporters // Reporters
var htmlReporter = new jasmine.HtmlReporter({ const htmlReporter = new jasmine.HtmlReporter({
env, env,
navigateWithNewParam(key, value) { navigateWithNewParam(key, value) {
return queryString.navigateWithNewParam(key, value); return queryString.navigateWithNewParam(key, value);
@ -112,13 +112,13 @@ async function initializePDFJS(callback) {
env.addReporter(htmlReporter); env.addReporter(htmlReporter);
if (queryString.getParam("browser")) { if (queryString.getParam("browser")) {
var testReporter = new TestReporter(queryString.getParam("browser")); const testReporter = new TestReporter(queryString.getParam("browser"));
env.addReporter(testReporter); env.addReporter(testReporter);
} }
// Filter which specs will be run by matching the start of the full name // Filter which specs will be run by matching the start of the full name
// against the `spec` query param. // against the `spec` query param.
var specFilter = new jasmine.HtmlSpecFilter({ const specFilter = new jasmine.HtmlSpecFilter({
filterString() { filterString() {
return queryString.getParam("spec"); return queryString.getParam("spec");
}, },
@ -136,7 +136,7 @@ async function initializePDFJS(callback) {
// Replace the browser window's `onload`, ensure it's called, and then run // Replace the browser window's `onload`, ensure it's called, and then run
// all of the loaded specs. This includes initializing the `HtmlReporter` // all of the loaded specs. This includes initializing the `HtmlReporter`
// instance and then executing the loaded Jasmine environment. // instance and then executing the loaded Jasmine environment.
var currentWindowOnload = window.onload; const currentWindowOnload = window.onload;
window.onload = function () { window.onload = function () {
if (currentWindowOnload) { if (currentWindowOnload) {
@ -150,7 +150,7 @@ async function initializePDFJS(callback) {
}; };
function extend(destination, source) { function extend(destination, source) {
for (var property in source) { for (const property in source) {
destination[property] = source[property]; destination[property] = source[property];
} }
return destination; return destination;

View File

@ -16,34 +16,34 @@
"use strict"; "use strict";
var fs = require("fs"); const fs = require("fs");
var path = require("path"); const path = require("path");
var spawn = require("child_process").spawn; const spawn = require("child_process").spawn;
var ttxResourcesHome = path.join(__dirname, "..", "ttx"); const ttxResourcesHome = path.join(__dirname, "..", "ttx");
var nextTTXTaskId = Date.now(); let nextTTXTaskId = Date.now();
function runTtx(ttxResourcesHomePath, fontPath, registerOnCancel, callback) { function runTtx(ttxResourcesHomePath, fontPath, registerOnCancel, callback) {
fs.realpath(ttxResourcesHomePath, function (error, realTtxResourcesHomePath) { fs.realpath(ttxResourcesHomePath, function (error, realTtxResourcesHomePath) {
var fontToolsHome = path.join(realTtxResourcesHomePath, "fonttools-code"); const fontToolsHome = path.join(realTtxResourcesHomePath, "fonttools-code");
fs.realpath(fontPath, function (errorFontPath, realFontPath) { fs.realpath(fontPath, function (errorFontPath, realFontPath) {
var ttxPath = path.join("Tools", "ttx"); const ttxPath = path.join("Tools", "ttx");
if (!fs.existsSync(path.join(fontToolsHome, ttxPath))) { if (!fs.existsSync(path.join(fontToolsHome, ttxPath))) {
callback("TTX was not found, please checkout PDF.js submodules"); callback("TTX was not found, please checkout PDF.js submodules");
return; return;
} }
var ttxEnv = { const ttxEnv = {
PYTHONPATH: path.join(fontToolsHome, "Lib"), PYTHONPATH: path.join(fontToolsHome, "Lib"),
PYTHONDONTWRITEBYTECODE: true, PYTHONDONTWRITEBYTECODE: true,
}; };
var ttxStdioMode = "ignore"; const ttxStdioMode = "ignore";
var ttx = spawn("python", [ttxPath, realFontPath], { const ttx = spawn("python", [ttxPath, realFontPath], {
cwd: fontToolsHome, cwd: fontToolsHome,
stdio: ttxStdioMode, stdio: ttxStdioMode,
env: ttxEnv, env: ttxEnv,
}); });
var ttxRunError; let ttxRunError;
registerOnCancel(function (reason) { registerOnCancel(function (reason) {
ttxRunError = reason; ttxRunError = reason;
callback(reason); callback(reason);
@ -68,10 +68,10 @@ exports.translateFont = function translateFont(
registerOnCancel, registerOnCancel,
callback callback
) { ) {
var buffer = Buffer.from(content, "base64"); const buffer = Buffer.from(content, "base64");
var taskId = (nextTTXTaskId++).toString(); const taskId = (nextTTXTaskId++).toString();
var fontPath = path.join(ttxResourcesHome, taskId + ".otf"); const fontPath = path.join(ttxResourcesHome, taskId + ".otf");
var resultPath = path.join(ttxResourcesHome, taskId + ".ttx"); const resultPath = path.join(ttxResourcesHome, taskId + ".ttx");
fs.writeFileSync(fontPath, buffer); fs.writeFileSync(fontPath, buffer);
runTtx(ttxResourcesHome, fontPath, registerOnCancel, function (err) { runTtx(ttxResourcesHome, fontPath, registerOnCancel, function (err) {