This PR can be summarized in the following changelog entry:
[non-user-facing] Implements a collection of factory functions that create TreeAssessors for different kinds of SEO and readability analysis. The kind produced depends on factors like type of content (normal page/post, cornerstone, taxonomy page) and type of keyphrase (main or related).
Relevant technical choices:
I made some JSDoc submodules to keep relevant content together, whilst keeping them from all getting on the tree/assess module. I am not quite sure about the naming, so a second opinion would be nice!
The factory functions live in their own JSDoc module called tree/assess/assessors.
Cornerstone functions live in tree/assess/assessors/cornerstone.
I separated creating the assessment lists into separate factory functions, since they can grow quite big. They live in the submodule tree/assess/assessors/assessments and tree/assess/assessors/cornerstone/assessments respectively.
Test instructions
This PR can be tested by following these steps:
Run yarn test, check if the coverage is 100% for the tree/assess folder.
Check if the tests cover all edge cases.
Review the code a second time, check if you can find any missing functionality or code improvements.
Summary
This PR can be summarized in the following changelog entry:
TreeAssessor
s for different kinds of SEO and readability analysis. The kind produced depends on factors like type of content (normal page/post, cornerstone, taxonomy page) and type of keyphrase (main or related).Relevant technical choices:
I made some JSDoc submodules to keep relevant content together, whilst keeping them from all getting on the
tree/assess
module. I am not quite sure about the naming, so a second opinion would be nice!tree/assess/assessors
.tree/assess/assessors/cornerstone
.tree/assess/assessors/assessments
andtree/assess/assessors/cornerstone/assessments
respectively.Test instructions
This PR can be tested by following these steps:
yarn test
, check if the coverage is 100% for thetree/assess
folder.Fixes #2126