Skip to content

Add AccessibilityReportsComparer API

Max Orefice requested to merge mo-add-accessibility-report-comparer-entity into master

Part of #211389 (closed)

This feature will be behind a feature flag called accessibility_report_view.

What does this MR do?

Step #8 to introduce Accessibility Report comparison with our Merge Request Widget.

The entire feature has been developed on an MVC branch, this MR aims to break it down in smaller chunk.

Why are we doing this?

Following up !30224 (merged) where we introduced our AccessibilityReportsComparer class.

This MR adds its associated serializer to expose the API which will be consumed by the frontend in our MR widget.

Click here to see the JSON schema.

{
  :status=>"failed",
  :new_errors=>
  [
    {
      :code=>"WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.A.NoContent",
      :type=>"error",
      :type_code=>1,
      :message=>"Anchor element found with a valid href attribute, but no link content has been supplied.",
      :context=>"\n        ",
      :selector=>"html > body > header > div > nav > a",
      :runner=>"htmlcs",
      :runner_extras=>{}
    }
  ],
  :resolved_errors=>[],
  :existing_errors=>
  [
    {
      :code=>"WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.A.NoContent",
      :type=>"error",
      :type_code=>1,
      :message=>"Anchor element found with a valid href attribute, but no link content has been supplied.",
      :context=>"\n        ",
      :selector=>"html > body > header > div > nav > a",
      :runner=>"htmlcs",
      :runner_extras=>{}
    }
  ],
  :summary=>{
    :total=>1,
    :resolved=>0,
    :errored=>2
  }
}
  

Screenshots

You can see how the feature will look like with the screenshot provided below:

image

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team
Edited by Jackie Porter

Merge request reports