77 lines
3.4 KiB
Python
77 lines
3.4 KiB
Python
"""GithubFlavoredMarkdownTable end to end testing."""
|
|
|
|
from terminaltables import GithubFlavoredMarkdownTable
|
|
|
|
|
|
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 = GithubFlavoredMarkdownTable(table_data)
|
|
table.inner_footing_row_border = True
|
|
table.justify_columns[0] = 'left'
|
|
table.justify_columns[1] = 'center'
|
|
table.justify_columns[2] = 'right'
|
|
actual = table.table
|
|
|
|
expected = (
|
|
'| Name | Color | Type |\n'
|
|
'|:-----------|:-----:|----------:|\n'
|
|
'| Avocado | green | nut |\n'
|
|
'| Tomato | red | fruit |\n'
|
|
'| Lettuce | green | vegetable |\n'
|
|
'| Watermelon | green | |\n'
|
|
'| | | |'
|
|
)
|
|
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 = GithubFlavoredMarkdownTable(table_data)
|
|
|
|
# Test defaults.
|
|
actual = table.table
|
|
expected = (
|
|
'| Show | Characters |\n'
|
|
'|------------|-------------------------------------------------------------------------------------|\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
|
|
|
|
# Test inner row border.
|
|
table.inner_row_border = True
|
|
actual = table.table
|
|
expected = (
|
|
'| Show | Characters |\n'
|
|
'|------------|-------------------------------------------------------------------------------------|\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'
|
|
'|------------|------------------------------------------------------------------------------------:|\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
|