mirror of
https://github.com/venthur/blag.git
synced 2025-11-25 20:52:43 +00:00
38 lines
981 B
Python
38 lines
981 B
Python
"""Benchmark the performance of the blag build command."""
|
|
|
|
import logging
|
|
import os
|
|
from argparse import Namespace
|
|
|
|
from pytest import LogCaptureFixture
|
|
|
|
import blag
|
|
from blag.blag import build
|
|
|
|
|
|
def test_performance(args: Namespace, caplog: LogCaptureFixture) -> None:
|
|
"""Test performance of the build command."""
|
|
caplog.set_level(logging.ERROR)
|
|
|
|
FILES = 10000
|
|
print(f"Generating {FILES} markdown files")
|
|
# create random markdown files in the content directory
|
|
with open(os.path.join(blag.__path__[0], "content", "testpage.md")) as fh:
|
|
markdown = fh.read()
|
|
for i in range(FILES):
|
|
with open(f"content/{i}.md", "w") as f:
|
|
f.write(markdown)
|
|
f.write(str(i))
|
|
|
|
from time import time
|
|
|
|
t = time()
|
|
build(args)
|
|
t_first = time() - t
|
|
|
|
t = time()
|
|
build(args)
|
|
t_second = time() - t
|
|
print(f"First run: {t_first:.2f}s, second run: {t_second:.2f}s")
|
|
print(f"Speedup: {t_first/t_second:.2f}")
|