1
0
Fork 0
terminaltables3/tests/test_all_tables_e2e/test_porcelain_table.py
Daniel Baumann 07735c967b
Merging upstream version 4.0.0 (Closes: #1095814).
Signed-off-by: Daniel Baumann <daniel@debian.org>
2025-02-12 15:00:49 +01:00

62 lines
2.3 KiB
Python

"""PorcelainTable end to end testing."""
from terminaltables3 import PorcelainTable
def test_single_line():
"""Test single-lined cells."""
table_data = [
["Name", "Color", "Type"],
["Avocado", "green", "nut"],
["Tomato", "red", "fruit"],
["Lettuce", "green", "vegetable"],
["Watermelon", "green"],
]
table = PorcelainTable(table_data)
table.justify_columns[0] = "left"
table.justify_columns[1] = "center"
table.justify_columns[2] = "right"
actual = table.table
expected = (
" Name | Color | Type \n"
" Avocado | green | nut \n"
" Tomato | red | fruit \n"
" Lettuce | green | vegetable \n"
" Watermelon | green | "
)
assert actual == expected
def test_multi_line():
"""Test multi-lined cells."""
table_data = [
["Show", "Characters"],
[
"Rugrats",
"Tommy Pickles, Chuckie Finster, Phillip DeVille, Lillian DeVille, Angelica Pickles,\nDil Pickles",
],
["South Park", "Stan Marsh, Kyle Broflovski, Eric Cartman, Kenny McCormick"],
]
table = PorcelainTable(table_data)
# Test defaults.
actual = table.table
expected = (
" Show | Characters \n"
" Rugrats | Tommy Pickles, Chuckie Finster, Phillip DeVille, Lillian DeVille, Angelica Pickles, \n"
" | Dil Pickles \n"
" South Park | Stan Marsh, Kyle Broflovski, Eric Cartman, Kenny McCormick "
)
assert actual == expected
# Justify right.
table.justify_columns = {1: "right"}
actual = table.table
expected = (
" Show | Characters \n"
" Rugrats | Tommy Pickles, Chuckie Finster, Phillip DeVille, Lillian DeVille, Angelica Pickles, \n"
" | Dil Pickles \n"
" South Park | Stan Marsh, Kyle Broflovski, Eric Cartman, Kenny McCormick "
)
assert actual == expected