|
from jinja2 import Environment, FileSystemLoader
|
|
import time
|
|
import sys
|
|
|
|
# Set up Jinja2 environment to load templates from the 'templates' directory
|
|
env = Environment(loader=FileSystemLoader('templates'))
|
|
|
|
def render_template(template_name, times=1000):
|
|
template = env.get_template(template_name)
|
|
|
|
start_time = time.time()
|
|
for _ in range(times):
|
|
rendered_content = template.render({
|
|
"name": "Retoor",
|
|
"stats": {"notifications": 3},
|
|
"repos": [{"name": "snek"}],
|
|
})
|
|
end_time = time.time()
|
|
|
|
total_time = end_time - start_time
|
|
avg_time_per_render = total_time / times if times > 0 else 0
|
|
print(f"Total time for {times} renders: {total_time:.6f} seconds")
|
|
print(f"Average time per render: {avg_time_per_render:.6f} seconds")
|
|
|
|
if __name__ == '__main__':
|
|
if len(sys.argv) < 2:
|
|
print('Usage: python render_template.py <template_name>')
|
|
sys.exit(1)
|
|
template_name = sys.argv[1]
|
|
render_template(template_name)
|
|
|