summaryrefslogtreecommitdiff
path: root/addons/web/static/lib/qweb/qweb-test-extend.xml
AgeCommit message (Collapse)Author
2020-07-10[FIX] web: qweb old inheritance mechanismAaron Bohy
Before this commit, defining a extension of a template by using the combination of directives 't-name' and 't-extend' ignored potential extensions that could have been defined beforehand. For instance, let's assume the following templates. ```xml <t t-name="a"> <div><span>1</span></div> </t> <t t-extend="a"> <t t-jquery="span" t-operation="replace"> <span>2</span> </t> </t> <t t-name="b" t-extend="a"> <t t-jquery="div" t-operation="append"> <span>b</span> </t> </t> ``` Rendering template "b" displayed "1b" whereas we would expect "2b". Moreover, when the extended template is itself an extension of another template: ```xml <t t-name="a"> <div><span>a</span></div> </t> <t t-name="b" t-extend="a"> <t t-jquery="div" t-operation="append"> <span>b</span> </t> </t> <t t-name="c" t-extend="b"> <t t-jquery="div" t-operation="append"> <span>c</span> </t> </t> ``` Rendering template "a" displayed "a", template "b" displayed "ab", but template "c" displayed "ac", whereas we would expect "abc". With this commit, other extensions done to a template are kept when a new extension is defined. It relies on the templates order, and takes into account all extensions that have *already* been defined. This is exactly how the new qweb inheritance mechanism (using 't-inherit' and 't-inherit-mode') behaves. closes odoo/odoo#54315 Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-01-30[FIX] web: support full attribute syntaxMartin Trigaux
Only the syntax <t t-operation="attributes"> <attribute name="foo">bar</attribute> </t> was currently supported for attributes while the syntax <t t-operation="attributes"> <attribute name="foo" value="bar" /> </t> Is also correct and supported server side. Using value instead of the node content is needed to avoid translating the node while it is parsed by babel to extract translatable content
2014-10-06[IMP] qweb doc, testsXavier Morel
* document qweb based (mostly) on JS version * convert JS qweb tests to (mostly) language-independent XML so they can be used for JS and Python implementations * add some more tests (e.g. precedence between t-value and body in t-set) * remove ``t-import`` * fix parity in foreach(dict) (and rename some variables to make array and object versions more similar)
2012-01-18[IMP] LOWERCASE ALL THE THINGSXavier Morel
MSIE serializes nodes to UPPERCASE EVERYTHING (unless the known are generic/unknown), which breaks tests as JS doesn't really have case-insensitive comparisons bzr revid: xmo@openerp.com-20120118110118-pfiy1n2g4yhfjtso
2011-09-05rename base into web part1Antony Lesuisse
bzr revid: al@openerp.com-20110905110309-egx167t1ni1fzho1