K imH.ddlZddlZddlZddlmZmZmZddlmZm Z m Z m Z ddl m Z ddlZGddejZGddejZGd d ejZGd d ejZGd dejZy)N)utf8 native_str to_unicode)Template DictLoader ParseErrorLoader) ObjectDictceZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZdZdZdZdZej2ddZdZy) TemplateTestc^td}|j|jddyNzHello {{ name }}!Benname Hello Ben!r assertEqualgenerateselftemplates `/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/tornado/test/template_test.py test_simplezTemplateTest.test_simple s+/0 ***6 Fcptd}|j|jtddyrrrrrrs r test_byteszTemplateTest.test_bytess//0 **U *? **U *{% block title %}default title{% end %} {% block body %}default body{% end %} zb{% extends "base.html" %} {% block title %}page title{% end %} {% block body %}page body{% end %} ) base.html page.htmlr,s1page title page body r%r's r test_extendszTemplateTest.test_extends(sC     KK $ - - / B rctdddd}|j|jdjdy)Nz{% include '2.html' %}z{% include '../b/3.html' %}ok)a/1.htmlza/2.htmlzb/3.htmlr0sokr%r's rtest_relative_loadzTemplateTest.test_relative_load;s>49    Z099;UCrc|jtd|jtd|jtdj d|jtdj d|jtdj d|jtd j d y) NctdS)Nz{{rrrz,TemplateTest.test_escaping..F htnrctdS)Nz{%r4r5rrr6z,TemplateTest.test_escaping..Gr7rz{{!s{{z{%!s{%z{#!s{#z{{ 'expr' }} {{!jquery expr}}sexpr {{jquery expr}}) assertRaisesrrrrrs r test_escapingzTemplateTest.test_escapingEs *&<= *&<= %113U; %113U; %113U;  4 5 > > @ # rc~ttd}|j|jtdy)Nérrrrrs rtest_unicode_templatez"TemplateTest.test_unicode_templatePs-DN+ **,d8n=rc~ttd}|j|jtdy)Nu {{ "é" }}r=r>rs rtest_unicode_literal_expressionz,TemplateTest.test_unicode_literal_expressionTs1 D!123 **,d8n=rctddiddi}|j|jdjdy)N test.htmlz {{ inc(5) }}incc |dzS)Nr5xs rr6z4TemplateTest.test_custom_namespace..^s q1ur namespace6r%r's rtest_custom_namespacez"TemplateTest.test_custom_namespace\s? . )e_5M  [1::.uppercs779 rz{% apply upper %}foo{% end %}rPsFOOr>rrQrs r test_applyzTemplateTest.test_applybs7 D!@AB ***7@rcd}ttd}|j|j|tdy)Nc4t|jSrO)rrQrRs rrQz.TemplateTest.test_unicode_apply..upperjsa=&&( (r {% apply upper %}foo é{% end %}rPFOO Ér>rTs rtest_unicode_applyzTemplateTest.test_unicode_applyis< )D!GHI ***7l9KLrcd}ttd}|j|j|tdy)NcFtt|jSrO)rrrQrRs rrQz,TemplateTest.test_bytes_apply..upperqs 1 ++-. .rrXrPrYr>rTs rtest_bytes_applyzTemplateTest.test_bytes_applyps< /D!GHI ***7l9KLrcttd}|j|jdd|j|jddy)Nz&{% if x > 4 %}yes{% else %}no{% end %}rGsyessnor>rs rtest_ifzTemplateTest.test_ifwsND!IJK **Q*/8 **Q*/7rclttd}|j|jdy)Nz {% if True %}{% else %}{% end %}rr>rs rtest_if_empty_bodyzTemplateTest.test_if_empty_body|s+D!CDE **,c2rcttd}|j|jdd|j|jddy)Nzb{% try %} try{% set y = 1/x %} {% except %}-except {% else %}-else {% finally %}-finally {% end %}rFrGs try -else -finally rs try-except -finally r>rs rtest_tryzTemplateTest.test_trysY      **Q*/1LM **Q*/1LMrclttd}|j|jdy)Nz{% comment blah blah %}foosfoor>rs rtest_comment_directivez#TemplateTest.test_comment_directives+D!=>? **,f5rcttd}|j}dj|j }|j |dy)Nz{% for i in range(10) %} {% if i == 2 %} {% continue %} {% end %} {{ i }} {% if i == 6 %} {% break %} {% end %} {% end %}rs013456)rrrjoinsplitr)rrresults rtest_break_continuez TemplateTest.test_break_continuesM      ""$&,,.) +rc|jtd5ttddddy#1swYyxYw)NDid not get expected exceptionmsgz {% break %}r9rrrr:s rtest_break_outside_loopz$TemplateTest.test_break_outside_loops8   z/O  P * T-( ) * * *6?c|jtd5ttddddy#1swYyxYw)Nrnroz={% for i in [] %}{% apply foo %}{% break %}{% end %}{% end %}rqr:s rtest_break_in_applyz TemplateTest.test_break_in_applys>  z/O  P  TU    rszno testable future importsc~|jddtd}|j|jdy)Ng?z {{ 1 / 2 }}0)rrrrs rtest_no_inherit_futurez#TemplateTest.test_no_inherit_futures7 $M* **,c2rc|tddi}|j|jdjdy)Nu tést.htmlhelloshellor%r's rtest_non_ascii_namez TemplateTest.test_non_ascii_names5-w78 %56??A8LrN)__name__ __module__ __qualname__rrr r"r)r-r1r;r?rArLrUrZr]rarcrergrlrrruunittestskiprxr{r5rrr r sGM<M   &D  >>D AMM8 3 N6,(*X]]/0 31 3Mrr c6eZdZdZdZdZdZdZdZdZ y) StackTraceTestctddi} |jdj|jdy#t$r(|j dt jvYywxYw)NrCzone two{{1/0}} three did not get expected exception # test.html:2rr&rfailZeroDivisionError assertTrue traceback format_excr's r!test_error_line_number_expressionz0StackTraceTest.test_error_line_number_expressionl    G KK $ - - / II6 7  G OOOy/C/C/EE F G0A.A10A1ctddi} |jdj|jdy#t$r(|j dt jvYywxYw)NrCz'one two{%if 1/0%} three{%end%} rrrr's r test_error_line_number_directivez/StackTraceTest.test_error_line_number_directiverrc@dfd}tddddt|i jdj|j d y#t $r=t j}|jd |v|jd |vYywxYw) NcNJj|jdi|S)Nr5r&r)pathkwargsr(s r load_generatezCStackTraceTest.test_error_line_number_module..load_generates.% %%-6;;t$--77 7rz!{% module Template('sub.html') %}{{1/0}}r+sub.html _tt_modulesr4rIr+r # base.html:1z # sub.html:1) rr r&rrrrrr)rr exc_stackr(s @rtest_error_line_number_modulez,StackTraceTest.test_error_line_number_modules 8=9 U$j-&HI  9 KK $ - - / II6 7  9!,,.I OOOy8 9 OONi7 8 9s0AABBctddd} |jdj|jdy#t$r(|j dt jvYywxYw)Nz{% include 'sub.html' %}rrr+rz# sub.html:1 (via base.html:1)rr's rtest_error_line_number_includez-StackTraceTest.test_error_line_number_includesh4) L  X KK $ - - / II6 7  X OO< @T@T@VV W Xs0A.A21A2ctddd} |jdj|jd|jdy#t$rt j }Y2wxYw)Nrz{% extends 'base.html' %}rrrr)rr&rrrrrassertIn)rr(rs r)test_error_line_number_extends_base_errorz8StackTraceTest.test_error_line_number_extends_base_errorsk#1L M  / KK # , , . II6 7 oy1! /!,,.I /s0AA32A3ctddd} |jdj|jdy#t$r'|j dt jYywxYw)Nz{% block 'block' %}{% end %}zM {% extends 'base.html' %} {% block 'block' %} {{1/0}} {% end %} rrrz# sub.html:4 (via base.html:1)rr&rrrrrrr's r(test_error_line_number_extends_sub_errorz7StackTraceTest.test_error_line_number_extends_sub_error sj;    T KK # , , . II6 7  T MM:I{% autoescape None %}{% block name %}base: {{ name }}{% end %}zA{% autoescape xhtml_escape %}{% extends "unescaped_block.html" %}zn{% autoescape xhtml_escape %}{% extends "unescaped_block.html" %}{% block name %}extended: {{ name }}{% end %}z7{% autoescape None %}{% extends "escaped_block.html" %}zd{% autoescape None %}{% extends "escaped_block.html" %}{% block name %}extended: {{ name }}{% end %}zA{% autoescape xhtml_escape %}expr: {{ name }} raw: {% raw name %}) escaped.htmlunescaped.html default.html include.htmlescaped_block.htmlunescaped_block.htmlescaped_extends_unescaped.html escaped_overrides_unescaped.htmlunescaped_extends_escaped.html unescaped_overrides_escaped.htmlraw_expression.html) templatesr:s rsetUpzAutoEscapeTest.setUp;s<E?( #-%- /(11/&11$?# rct|jd}d}|j|jdj |d|j|jdj |d|j|jdj |d|j|jd j |d y) N autoescapeBobby srrBobby <table>srBobby
srrsPescaped: Bobby <table>s unescaped: Bobby
s default: Bobby
s rrrr&rrr(rs rtest_default_offzAutoEscapeTest.test_default_offasDNNt<  KK ' 0 0d 0 ;=T   KK( ) 2 2 2 =?P   KK ' 0 0d 0 ;=N   KK ' 0 0d 0 ; ) rct|jd}d}|j|jdj |d|j|jdj |d|j|jd j |d|j|jd j |d y) N xhtml_escaperrrrrrrrrsVescaped: Bobby <table>s unescaped: Bobby
s default: Bobby <table>s rrs rtest_default_onzAutoEscapeTest.test_default_onusDNN~F  KK ' 0 0d 0 ;=T   KK( ) 2 2 2 =?P   KK ' 0 0d 0 ;=T   KK ' 0 0d 0 ; / rct|j}d}|j|jdj |d|j|jdj |dy)N