Skip to content

tests: improve dx

Bastien DUMONT requested to merge mock-store into dev

Related to #000

What does this MR do and why?

This MR improves DX and removes a lot of code that was unnecessary

  • Adds autocompletion and type checking on mocked store
before after
image Zero type checking. image Type checking, you can provide a single value of an object if a component does not uses the whole state.

This also corrects, some cases where the values given to the store was unused / not of the type expected

image

  • Removes <Provider> that were used for no reason in tests files that were not accessing any state.

  • Remove useSelectorSpy.mockReturnValue(globalStateData) and mockUseSelector.mockReturnValue because sometimes dupplicate store were used. And its better to have redux mocks harmonized.

  • removes duplicate mocked states files and harmonize file names

Screenshots or screen recordings

These are strongly recommended to assist reviewers and reduce the time to merge your change.

How to set up and validate locally (or on alpha)

List all steps to set up and validate the changes on local environment.

MR acceptance checklist

To be completed by the chosen reviewer.

Quality Bugs - Code Smells

  • For the code that this change impacts, I believe that the automated tests validate functionality that is highly important to users. If the existing automated tests do not cover this functionality, I have added the necessary additional tests or I have added an issue to describe the automation testing gap and linked it to this MR.
  • I have made sure that the sonar quality coverage is up to standards.
  • I have considered the impact of this change on the front-end, back-end, and database portions of the system where appropriate and applied.
  • I have tested this MR in all supported browsers or determined that this testing is not needed.
  • I have confirmed that this change is backwards compatible across updates (migrate up needs a migrate down), or I have decided that this does not apply.

Performance, reliability and availability

  • I am confident that this MR does not harm performance, or I have asked a reviewer to help assess the performance impact.
  • I have considered the scalability risk based on future predicted growth.

Documentation

  • The MR is named after the desired squash commit to feed the changelog linked to the current milestone.
  • I have added/updated documentation (also updated if the changes feature a deprecation) or I have decided that documentation changes are not needed for this MR.

Security Security Rating

  • I have confirmed that if this MR does not contains any sensitive informations hidden in the changes.

Deployment

  • When featured on a self-data project release, I have made sure my app version in the manifest and package.json is incremented and any relative changes to the permissions are clearly written and transmitted to Cozy.
Edited by Bastien DUMONT

Merge request reports

Loading