feat: add proquint-based userid generation

This commit is contained in:
Johan Lundberg 2026-02-12 14:56:10 +01:00
parent e5220c97b1
commit b22325588a
No known key found for this signature in database
GPG key ID: A6C152738D03C7D1
2 changed files with 31 additions and 0 deletions

20
tests/test_userid.py Normal file
View file

@ -0,0 +1,20 @@
from fastapi_oidc_op.userid import generate_userid
def test_generate_userid_format() -> None:
userid = generate_userid()
# 32-bit proquint format: xxxxx-xxxxx
parts = userid.split("-")
assert len(parts) == 2
for part in parts:
assert len(part) == 5
def test_generate_userid_uniqueness() -> None:
ids = {generate_userid() for _ in range(100)}
assert len(ids) == 100 # All unique
def test_generate_userid_is_lowercase() -> None:
userid = generate_userid()
assert userid == userid.lower()