Files
packages/lang/python/python-dotenv/test.sh
Alexandru Ardelean 82d10f567f python-dotenv: bump to 1.2.2
Changes since 1.0.1:
- Added support for Python 3.14 (including free-threaded build)
- CLI now forwards flags directly to commands
- Improved symlink handling with explicit follow_symlinks option
- Added FIFO file support on Unix systems
- Changed file mode preservation to maintain original permissions

Also add test.sh to verify dotenv_values parsing and load_dotenv.

Note: PyPI renamed the source tarball from python-dotenv-*.tar.gz
to python_dotenv-*.tar.gz; add PYPI_SOURCE_NAME accordingly.

Link: https://github.com/theskumar/python-dotenv/blob/main/CHANGELOG.md
Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2026-04-02 19:23:54 +03:00

32 lines
870 B
Bash

#!/bin/sh
[ "$1" = python3-dotenv ] || exit 0
python3 - << 'EOF'
import os
import tempfile
from dotenv import dotenv_values, load_dotenv, set_key, get_key
# Write a temp .env file and parse it
with tempfile.NamedTemporaryFile(mode='w', suffix='.env', delete=False) as f:
f.write('FOO=bar\n')
f.write('BAZ=123\n')
f.write('QUOTED="hello world"\n')
env_path = f.name
try:
values = dotenv_values(env_path)
assert values['FOO'] == 'bar', f"got FOO={values['FOO']}"
assert values['BAZ'] == '123', f"got BAZ={values['BAZ']}"
assert values['QUOTED'] == 'hello world', f"got QUOTED={values['QUOTED']}"
# Test load_dotenv sets environment variables
load_dotenv(env_path, override=True)
assert os.environ.get('FOO') == 'bar'
assert os.environ.get('BAZ') == '123'
finally:
os.unlink(env_path)
print("python-dotenv OK")
EOF