# MR template # Code Review Fill out the sections relevant to your merge request. Use your best judgment on which sections are applicable. If unsure, reach out to your Director of Engineering. - [x] This Merge Request is marked as a Work In Progress (mandatory) - [x] Related ticket: https://team10up.atlassian.net/browse/MSR-3013 ## Merge Request Guidelines #### Functional Testing & Documentation - [ ] This code has passed all automated testing including [PHPCS](https://github.com/10up/phpcs-composer) and [JavaScript Linting](https://www.npmjs.com/package/@10up/eslint-config) - [ ] My code follows the 10up [Engineering Best Practices](https://10up.github.io/Engineering-Best-Practices/) - [ ] All [MSR QA plan](https://docs.google.com/document/d/11_INXYq1YFh6x0OkPkXR9raxQKNpbwQyiCsPuBejXlI/edit#) functionality related to this ticket has been tested locally and verified to work properly - [ ] The functionality of this feature addresses all required items described in the ticket. If this feature doesn’t match its requirements, I've outlined why. #### Accessibility Testing - [ ] This feature passes [Microsoft Accessibility Standards compliance](https://drive.google.com/drive/u/2/folders/1B4aRZhgCp9pVu2NV0Bdp71ABUjBtfzcC) - [ ] This feature is fully functional without the use of a mouse. - [ ] This feature has all the correct HTML and alternative text (including screen reader text). #### Visual Testing on Local - [ ] This feature has been compared to and matches the design at all provided breakpoints. If this feature doesn’t match the design, I’ve outlined why. - [ ] This feature has been tested in all browsers that this project supports. - [ ] Chrome, latest - [ ] Firefox, latest - [ ] Safari, latest - [ ] Edge - [ ] IE 11 (front-end only, not supported in the Dashboard) #### Does this changeset introduce new screens or modified URLs? - [ ] No - [ ] Yes, they were added to Visual Regression Testing and Manual Regression Test documentation - [ ] Yes, they were noted in the release documentation ## Code Quality Guidelines #### Does this changeset create new functions in PHP? - [ ] No - [ ] Yes, and each new function includes database-independent Unit Tests - [ ] Yes, and each new use case is included in an Acceptance Test or Regression Test plan - [ ] Yes, and each new function includes Type Hints and Return Types - [ ] Yes, and each new function has fewer than 30 lines. - [ ] Yes, and each new function has at most 2 indentations. #### Does this changeset modify existing functions? - [ ] No - [ ] Yes, it modifies an existing behavior and does not introduce new behavior - [ ] Yes, all possible uses of the function were tested for regressions #### If a function is being modified: - [ ] Is it larger than 50 lines? - [ ] Is it deeper than 3 indentations? - [ ] Is it used in many places or contexts? If any of the above is true, please consider creating a wrapping the original function or using the [Sprout Method](http://taswar.zeytinsoft.com/learn-the-sprout-method-for-adding-new-functionality/) to move your change to a new function instead. #### Does this changeset touch front-end markup? - [ ] No - [ ] Yes, and all data-attributes and meta-tags related to tracking functionality (data-bi-* or awa-*) have been checked for accuracy and fixed accordingly, based on the [Tracking Directives documentation](https://docs.google.com/document/d/1zfcgO7b_vB-aQ3AJIiQJFMZ_LP9IfqcWlmypvnSJ_94/edit#) - [ ] Yes, and the css associated with it is loaded conditionally - [ ] Yes, and any new partials were created into a scoped folder inside `partials/` - [ ] Yes, and any classes/ids removed or modified were checked for potential usages in javascript - [ ] Yes, and any classes/ids removed were also removed from scss files #### Does this changeset include client-side validation in the Dashboard? - [ ] Not needed - [ ] Yes, and it uses the [MSR Front-end validation library](https://gitlab.10up.com/microsoft/microsoft-research/microsoft-research/-/blob/master/themes/microsoft-research-theme/assets/js/admin/lib/validation.js) #### Does this changeset include creating/updating post-meta? - [ ] No - [ ] Yes, and it uses the [MSR Shared Architecture for Post Meta](https://docs.google.com/document/d/19VDz3R4NpeXmW_JvX-jKYJYUXUIvxiAXpS4uJe-Q8AA/edit#heading=h.3v5g5t1kayj5)