back to table · edit · history · where entries came from · files · download
1177 bytes, as of the version from 2026-10-25 11:31 (current). Recorded here, not run.
"""Verify the repaired live T484 document and generator; key may arrive on stdin.
sage -python verify_stored.py
Uses NUMBERDB_API_KEY unless NUMBERDB_KEY_FROM_STDIN=1 is set.
"""
import json, os, sys, platform
from importlib.metadata import version
from pathlib import Path
import numberdb.sage as numberdb
from sage.version import version as sage_version
from generate import AnimalGrowth
if os.environ.get('NUMBERDB_KEY_FROM_STDIN')=='1':
key=sys.stdin.read().strip()
if '=' in key and key.split('=',1)[0].isupper():
key=key.split('=',1)[1].strip().strip('\"\'')
numberdb.configure(api_key=key)
print(json.dumps({'python':platform.python_version(),'sage':sage_version,'numberdb':version('numberdb')}))
expected=json.loads((Path(__file__).resolve().parent/'T484-proposed.json').read_text())
live=numberdb.table('T484')
assert live==expected, 'Live table differs from checked repair'
g=AnimalGrowth()
for p in g.enumerate():
row=live['Numbers']
for k in g.parameters: row=row[p[k]]
assert row==g.value(p,g.digits)
print('All four live rows match generator values and comments.')
result=g.verify(sample=None)
print(result)
assert result.ok