Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate "Catalog > Files" page #10550

Open
matks opened this issue Sep 20, 2018 · 3 comments
Assignees

Comments

@matks
Copy link
Contributor

@matks matks commented Sep 20, 2018

Part of Symfony migration project
Type: page

Status

Todo:

Check-List (copied from #13989)

App layer

Controller / routing

  • All controller actions are migrated and protected with @AdminSecurity annotations when eligible and @DemoRestricted annotations when eligible
  • All links targeting this page are updated: either using _legacy_link or updating the code
  • The new SF routes have _legacy_link and _legacy_parameters provided and explained
  • Controller catches Domain Exception and translate them nicely
  • Add/Edit controllers must catch global Exception in order to handle ModuleErrorException

Template

  • Twig templates must contain relevant blocks to allow partial extension by modules
  • Twig forms must have form_rest() and form_errors()
  • JS being used on the page can be used as enabled extensions and use a PageMap for selectors
  • Use @PrestaShop instead of PrestaShopBundle for template root path aliasing
Conventions
  • The new controller actions comply with our naming convention
  • The new SF routes names and paths comply with our naming convention
  • The new Twig template names comply actions with our naming convention
  • Created files (controller, JS assets, CSS assets and twig views) must be in the right folder following the convention
  • CSS being added must follow theme conventions

Core layer

  • Commands and Queries only use native types but internally use VOs
  • All Handlers must have an Interface
Conventions
  • The created SF service names comply with our naming convention
  • The created files must follow the folder convention (Domain, Core, Adapter...)

Polishing

  • The legacy controller and templates files are gone
  • If PR includes a new concept/mechanism, documentation must be written
  • JS and CSS assets must be compiled and up-to-date
  • License headers must be up-to-date
  • New hooks have been added to the hooks list and the SQL updates
  • Performance must be correct: page loading time, filtering/sorting/searching response time, actions response time

Testing

  • Commands and Queries are tested with Behat tests
  • Eligible Core classes are covered with unit tests*
  • Controller is covered with survival test
  • (soon) Controller is covered with E2E tests using puppeeter
  • If we break E2E tests because IDs change, we must update the E2E tests

*Eligible = easy to isolate and unit tests provide values (for example testing getters/setters is useless)

@matks matks added the migration label Sep 20, 2018
@matks matks added this to To do in Symfony Migration via automation Sep 20, 2018
@BilalDr

This comment has been minimized.

Copy link

@BilalDr BilalDr commented Oct 5, 2018

This page needs to have an Empty States.
Check : files
https://projects.invisionapp.com/share/5FRLCBENAS4#/screens/358670486
Thanks

@colinegin colinegin moved this from Backlog to To do in Symfony Migration May 20, 2019
@matks

This comment has been minimized.

Copy link
Contributor Author

@matks matks commented Jul 26, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Symfony Migration
  
In progress
5 participants
You can’t perform that action at this time.