Skip to content

Commit

Permalink
chore: Fix Page.emulateMedia doclint failure
Browse files Browse the repository at this point in the history
This is expected as we now alias `emulateMedia` in `index.js` which
isn't a file checked by DocLint. We alias there to avoid having the
function overriden by the `asyncInstallHooks` code.

This commit updates doclint to know about methods that we expect it will
find are missing and in that case just skip over them. We should only do
this for methods where we plan to deprecate them or we have to define
them in an odd way to work around some problem (and if that's the case
long term we should fix that problem so we can define them as normal).
  • Loading branch information
jackfranklin committed Apr 3, 2020
1 parent 7f7887e commit 66d01fa
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion utils/doclint/check_public_api/index.js
Expand Up @@ -154,6 +154,13 @@ function checkDuplicates(doc) {
return errors;
}

const expectedNonExistingMethods = new Map([
/* Expected to be missing as the method is deprecated
* and we alias it to Page.prototype.emulateMediaType in index.js
* which is not checked by DocLint
*/
['Page', new Set(['emulateMedia'])],
]);
/**
* @param {!Documentation} actual
* @param {!Documentation} expected
Expand All @@ -176,8 +183,12 @@ function compareDocumentations(actual, expected) {
const actualMethods = Array.from(actualClass.methods.keys()).sort();
const expectedMethods = Array.from(expectedClass.methods.keys()).sort();
const methodDiff = diff(actualMethods, expectedMethods);
for (const methodName of methodDiff.extra)
for (const methodName of methodDiff.extra) {
const missingMethodsForClass = expectedNonExistingMethods.get(className);
const methodNameIsExpectedMissing = missingMethodsForClass ? missingMethodsForClass.has(methodName) : false;
if (methodNameIsExpectedMissing) continue;
errors.push(`Non-existing method found: ${className}.${methodName}()`);
}
for (const methodName of methodDiff.missing)
errors.push(`Method not found: ${className}.${methodName}()`);

Expand Down

0 comments on commit 66d01fa

Please sign in to comment.