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

Serialize empty URL as string when creating menu items #4616

Merged
merged 3 commits into from
Aug 8, 2019

Conversation

maarcingebala
Copy link
Member

@maarcingebala maarcingebala commented Aug 8, 2019

get_menu_item_as_dict function used to serialize menus to JSON (which is used by Storefront 1.0 for rendering menus) was serializing empty URLs as None. As a result, one could create menu items that were rendered in Storefront as http://localhost:8000/en/None. This PR changes this behavior to link to the homepage in such case.

Pull Request Checklist

  1. Privileged views and APIs are guarded by proper permission checks.
  2. All visible strings are translated with proper context.
  3. All data-formatting is locale-aware (dates, numbers, and so on).
  4. Database queries are optimized and the number of queries is constant.
  5. Database migration files are up to date.
  6. The changes are tested.
  7. GraphQL schema and type definitions are up to date.
  8. Changes are mentioned in the changelog.

@maarcingebala maarcingebala changed the title Serialize empty URL as string when creating Serialize empty URL as string when creating menu items Aug 8, 2019
Copy link

Here is the report for 461a162 (mirumee/saleor @ fix-serializing-menu-to-json)
Base comparison is 0922898.

No differences were found. (click me)

# api.benchmark checkout
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  add billing address to checkout     	         34	         34	             20
  add shipping to checkout            	          7	          7	              0
  checkout payment charge             	         14	         14	              0
  complete checkout                   	          6	          6	              0
  create checkout                     	         48	         48	             24

# api.benchmark homepage
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  retrieve main menu                  	          5	          5	              0
  retrieve product list               	          4	          4	              0
  retrieve secondary menu             	          5	          5	              0
  retrieve shop                       	          2	          2	              0

# api.benchmark product
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  product details                     	         13	         13	              3

# api.benchmark variant
  test name                           	left count 	right count	duplicate count
  ------------------------------------	-----------	-----------	---------------
  retrieve variant list               	         15	         15	              8

@codecov
Copy link

codecov bot commented Aug 8, 2019

Codecov Report

Merging #4616 into master will decrease coverage by 0.11%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #4616      +/-   ##
==========================================
- Coverage   91.37%   91.25%   -0.12%     
==========================================
  Files         307      301       -6     
  Lines       18198    17970     -228     
  Branches     1813     1788      -25     
==========================================
- Hits        16628    16399     -229     
- Misses       1056     1071      +15     
+ Partials      514      500      -14
Impacted Files Coverage Δ
saleor/extensions/plugins/vatlayer/plugin.py 59.47% <0%> (-12.12%) ⬇️
saleor/extensions/base_plugin.py 78.57% <0%> (-9.75%) ⬇️
saleor/extensions/plugins/avatax/plugin.py 60.63% <0%> (-7.09%) ⬇️
saleor/extensions/plugins/avatax/__init__.py 76.04% <0%> (-1.85%) ⬇️
saleor/core/permissions.py 100% <0%> (ø) ⬆️
saleor/graphql/api.py 100% <0%> (ø) ⬆️
saleor/graphql/extensions/mutations.py
saleor/graphql/extensions/enums.py
saleor/extensions/models.py
saleor/graphql/extensions/types.py
... and 4 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1b5141e...a1e7ab6. Read the comment docs.

@maarcingebala maarcingebala merged commit 1450650 into master Aug 8, 2019
@maarcingebala maarcingebala deleted the fix-serializing-menu-to-json branch August 8, 2019 18:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants