1
0
mirror of https://github.com/venthur/blag.git synced 2025-11-25 12:42:41 +00:00

Merge branch 'performance' into rebuild_needed_only

This commit is contained in:
Bastian Venthur
2025-01-22 14:46:42 +01:00
2 changed files with 35 additions and 0 deletions

View File

@@ -65,6 +65,10 @@ serve-docs: $(VENV)
manpage: $(VENV)
help2man $(BIN)/blag --no-info -n "blog-aware, static site generator" -o debian/blag.1
.PHONY: benchmark
benchmark: $(VENV)
$(BIN)/pytest --no-cov -s -rP tests/benchmark.py
.PHONY: clean
clean:
rm -rf build dist *.egg-info

31
tests/benchmark.py Normal file
View File

@@ -0,0 +1,31 @@
import os
import blag
from blag.blag import build
def test_performance(args) -> None:
FILES = 1000
print(f"Generating {FILES} 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
print(t_first)
t = time()
build(args)
t_second = time() - t
print(t_second)
print(f"First run: {t_first:.2f}s, second run: {t_second:.2f}s")
print(f"Speedup: {t_first/t_second:.2f}")