Files
packages/lang/python/itsdangerous/test.sh
T
Alexandru Ardelean e18923ab66 itsdangerous: update to 2.2.0; add test.sh
- bump 2.1.2 -> 2.2.0
- add test.sh

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2026-04-18 08:07:33 +03:00

29 lines
699 B
Bash

#!/bin/sh
[ "$1" = python3-itsdangerous ] || exit 0
python3 - << 'EOF'
from itsdangerous import URLSafeSerializer, URLSafeTimedSerializer, BadSignature
s = URLSafeSerializer("secret-key")
token = s.dumps({"user_id": 42, "role": "admin"})
assert isinstance(token, str)
data = s.loads(token)
assert data["user_id"] == 42
assert data["role"] == "admin"
# Test that tampered tokens are rejected
try:
s.loads(token + "tampered")
assert False, "should have raised BadSignature"
except BadSignature:
pass
# Test timed serializer
ts = URLSafeTimedSerializer("another-secret")
timed_token = ts.dumps("payload")
assert ts.loads(timed_token) == "payload"
print("python3-itsdangerous OK")
EOF