Files
odoo_source/addons/website/tests/__init__.py
T
Paul Morelle ece83df99a [FIX] website,http: make EndPoint object reusable
It may happen than the routing map is cleared while rendering a qweb
view. For example, if an asset bundle is regenerated, the previous one
is unlinked, which causes a cache clearing.

Previously-generated EndPoint objects aren't found any more in the new
routing map, so `request.endpoint` cannot be used any more after a cache
clearing.

This commit adds hash and comparison magic methods on http.EndPoint so
that EndPoint objects created by a previous routing map generation can
still be used after a cache clearing.

Two tests were added: one to test the comparison and hash methods, and
the other to test them in a real-case rendering.

Commit 80a04f7ebed fixed this bug too, but introduced another issue
which caused many OPW, so it was quickly reverted by deb23450f18 along
with its performance improvement 33167b3928c. This commit replaces
80a04f7ebed with another way to fix the issue.
A third test has been added in order to avoid reintroducing this other
issue.

By the way, this commit also removes the EndPoint.arguments attribute,
as commit 17f1992698 removed all usages of this attribute in Odoo 9.0,
but left this initialization here.

OPW-2834546
OPW-2834549
OPW-2834625

X-original-commit: bdc45422f5c715782b147eecda2403386ba7eb4a
Part-of: odoo/odoo#91034
2022-05-12 13:42:57 +02:00

30 lines
956 B
Python

# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from . import test_attachment
from . import test_auth_signup_uninvited
from . import test_automatic_editor
from . import test_base_url
from . import test_configurator
from . import test_controllers
from . import test_converter
from . import test_crawl
from . import test_disable_unused_snippets_assets
from . import test_fuzzy
from . import test_get_current_website
from . import test_http_endpoint
from . import test_lang_url
from . import test_menu
from . import test_page
from . import test_performance
from . import test_qweb
from . import test_res_users
from . import test_snippets
from . import test_theme
from . import test_ui
from . import test_views
from . import test_views_inherit_module_update
from . import test_website_favicon
from . import test_website_form_editor
from . import test_website_reset_password
from . import test_website_visitor