Files
packages/lang/python/openpyxl/test.sh
Alexandru Ardelean a6f91c626a python3-openpyxl: update to 3.1.5
Update package to 3.1.5.

Changes since 3.0.10:

3.1.0: Added support for data table formulae; Rich Text in cells; Custom
Document Properties; mapped chartspace graphical properties to charts.
Breaking: removed deprecated workbook methods (get_named_range,
add_named_range, remove_named_range) and several worksheet properties.
Bug fixes: fixed table filters being overridden, various dataframe and
multiindex alignment issues.

3.1.1: Fixed DocumentProperties times being set only at module import;
fixed missing worksheet-specific definitions.

3.1.2: Fixed reading worksheets in read-only mode with locally scoped
definitions; fixed empty custom properties causing invalid files.

3.1.3: Major performance fixes -- column name caching, pivot table
loading, custom properties reading; fixed rich-text save without lxml;
fixed file handler leaks; fixed timedelta reading in read-only mode;
improved duplicate named styles handling.

3.1.4: Minor bug fixes and stability improvements.

3.1.5: Latest stable release with cumulative fixes.

Add test.sh to verify write/read roundtrip of xlsx workbooks.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2026-04-10 14:01:09 +03:00

34 lines
760 B
Bash
Executable File

#!/bin/sh
[ "$1" = python3-openpyxl ] || exit 0
python3 - << 'EOF'
import openpyxl
import tempfile
import os
# Create a workbook and write data
wb = openpyxl.Workbook()
ws = wb.active
ws.title = "TestSheet"
ws["A1"] = "Hello"
ws["B1"] = 42
ws["A2"] = "World"
ws["B2"] = 3.14
# Save to a temp file and reload
with tempfile.NamedTemporaryFile(suffix=".xlsx", delete=False) as f:
path = f.name
try:
wb.save(path)
wb2 = openpyxl.load_workbook(path)
ws2 = wb2["TestSheet"]
assert ws2["A1"].value == "Hello", f"Expected 'Hello', got {ws2['A1'].value}"
assert ws2["B1"].value == 42, f"Expected 42, got {ws2['B1'].value}"
assert ws2["A2"].value == "World"
assert abs(ws2["B2"].value - 3.14) < 1e-9
finally:
os.unlink(path)
EOF