Add 'fiscal/' from commit '102ba84500dbd9655a0471288c3e278652593ca9'

git-subtree-dir: fiscal
git-subtree-mainline: d95165fc8f
git-subtree-split: 102ba84500
This commit is contained in:
gti
2026-09-29 14:43:23 -03:00
868 changed files with 566394 additions and 0 deletions
@@ -0,0 +1,66 @@
"""Installation code (install_code) for the Windows installer EXE flow.
Covers central/app/enrollment.py install-code functions: Crockford Base32
generation, normalization (case + hyphen), hashing, and the grouped display
format. Never stores the plaintext code.
"""
import re
import pytest
from central.app import enrollment
def test_generated_code_is_16_crockford_chars_in_4_groups():
for _ in range(50):
code = enrollment.generate_install_code()
assert re.fullmatch(r"[0-9A-HJKMNP-TV-Z]{4}-[0-9A-HJKMNP-TV-Z]{4}-[0-9A-HJKMNP-TV-Z]{4}-[0-9A-HJKMNP-TV-Z]{4}", code)
def test_generated_code_has_good_entropy():
seen = {enrollment.generate_install_code() for _ in range(2000)}
assert len(seen) > 1900 # 80 bits of entropy: collisions essentially impossible
def test_crockford_alphabet_excludes_ambiguous_chars():
alphabet = set(enrollment.INSTALL_CODE_ALPHABET)
for ambiguous in "ILOU":
assert ambiguous not in alphabet
def test_normalization_uppercases_and_strips_separators():
assert enrollment.normalize_install_code("abcd-efgh-jkmn-pqrz") == "ABCDEFGHJKMNPQRZ"
assert enrollment.normalize_install_code(" abcd efgh jkmn pqrz ") == "ABCDEFGHJKMNPQRZ"
assert enrollment.normalize_install_code("ABCD-EFGH-JKMN-PQRZ") == "ABCDEFGHJKMNPQRZ"
def test_normalization_maps_crockford_lookalikes():
# Crockford Base32 treats 0/O and 1/I/L as transliterations; a human
# retyping "O" and "I/L" means "0" and "1".
assert enrollment.normalize_install_code("OOOI-LLLL-0000-0001") == "0001111100000001"
assert enrollment.normalize_install_code("0O0O-1L1I-0000-0001") == enrollment.normalize_install_code("0000-1111-0000-0001")
def test_digest_is_sha256_hex_and_deterministic():
code = enrollment.generate_install_code()
normalized = enrollment.normalize_install_code(code)
assert enrollment.install_code_digest(code) == enrollment.install_code_digest(normalized)
assert enrollment.install_code_digest(code) == enrollment.install_code_digest(code.lower().replace("-", ""))
assert len(enrollment.install_code_digest(code)) == 64
def test_hashes_cannot_be_reversed_into_plaintext():
code = enrollment.generate_install_code()
digest = enrollment.install_code_digest(code)
assert digest != code
assert code not in digest
def test_valid_install_code():
code = enrollment.generate_install_code()
assert enrollment.valid_install_code(code)
assert enrollment.valid_install_code(code.lower().replace("-", ""))
assert not enrollment.valid_install_code("")
assert not enrollment.valid_install_code("ABCD-EFGH-JKMN-PQRU") # U excluded from Crockford
assert not enrollment.valid_install_code("ABCD")
assert not enrollment.valid_install_code("!BCD-EFGH-JKMN-PQRZ")