Skip to content

Commit cb9328f

Browse files
author
hvalev
committed
fixed tests for updated header and footer table outlines
1 parent 1b49791 commit cb9328f

File tree

1 file changed

+12
-14
lines changed

1 file changed

+12
-14
lines changed

tests/test_markdown_table.py

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -114,27 +114,25 @@ def test_bad_data(data):
114114

115115

116116
@pytest.mark.parametrize("params, expected_output", [
117-
({}, "```\n+----------------------------------------+\n| title | time | date |seats|\n+------------+-----------+---------+-----+\n|Vrij Zwemmen|21:30-23:00|Wed 09.12|24/24|\n+------------+-----------+---------+-----+\n|Vrij Zwemmen|12:00-13:00|Thu 10.12|18/18|\n+------------+-----------+---------+-----+\n|Vrij Zwemmen| 7:30-8:30 |Fri 11.12|18/18|\n+------------+-----------+---------+-----+\n|Vrij Zwemmen|13:15-14:15|Sat 12.12|18/18|\n+----------------------------------------+```"),
118-
({"row_sep": "topbottom"}, "```\n+----------------------------------------+\n| title | time | date |seats|\n|Vrij Zwemmen|21:30-23:00|Wed 09.12|24/24|\n|Vrij Zwemmen|12:00-13:00|Thu 10.12|18/18|\n|Vrij Zwemmen| 7:30-8:30 |Fri 11.12|18/18|\n|Vrij Zwemmen|13:15-14:15|Sat 12.12|18/18|\n+----------------------------------------+```"),
117+
({}, "```\n+------------+-----------+---------+-----+\n| title | time | date |seats|\n+------------+-----------+---------+-----+\n|Vrij Zwemmen|21:30-23:00|Wed 09.12|24/24|\n+------------+-----------+---------+-----+\n|Vrij Zwemmen|12:00-13:00|Thu 10.12|18/18|\n+------------+-----------+---------+-----+\n|Vrij Zwemmen| 7:30-8:30 |Fri 11.12|18/18|\n+------------+-----------+---------+-----+\n|Vrij Zwemmen|13:15-14:15|Sat 12.12|18/18|\n+------------+-----------+---------+-----+```"),
118+
({"row_sep": "topbottom"}, "```\n+------------+-----------+---------+-----+\n| title | time | date |seats|\n|Vrij Zwemmen|21:30-23:00|Wed 09.12|24/24|\n|Vrij Zwemmen|12:00-13:00|Thu 10.12|18/18|\n|Vrij Zwemmen| 7:30-8:30 |Fri 11.12|18/18|\n|Vrij Zwemmen|13:15-14:15|Sat 12.12|18/18|\n+------------+-----------+---------+-----+```"),
119119
({"row_sep": "markdown"}, "```| title | time | date |seats|\n|------------|-----------|---------|-----|\n|Vrij Zwemmen|21:30-23:00|Wed 09.12|24/24|\n|Vrij Zwemmen|12:00-13:00|Thu 10.12|18/18|\n|Vrij Zwemmen| 7:30-8:30 |Fri 11.12|18/18|\n|Vrij Zwemmen|13:15-14:15|Sat 12.12|18/18|```"),
120120
({"row_sep": "markdown", "quote": False}, "| title | time | date |seats|\n|------------|-----------|---------|-----|\n|Vrij Zwemmen|21:30-23:00|Wed 09.12|24/24|\n|Vrij Zwemmen|12:00-13:00|Thu 10.12|18/18|\n|Vrij Zwemmen| 7:30-8:30 |Fri 11.12|18/18|\n|Vrij Zwemmen|13:15-14:15|Sat 12.12|18/18|"),
121-
({"row_sep": "topbottom", "padding_weight": "right"}, "```\n+----------------------------------------+\n|title |time |date |seats|\n|Vrij Zwemmen|21:30-23:00|Wed 09.12|24/24|\n|Vrij Zwemmen|12:00-13:00|Thu 10.12|18/18|\n|Vrij Zwemmen|7:30-8:30 |Fri 11.12|18/18|\n|Vrij Zwemmen|13:15-14:15|Sat 12.12|18/18|\n+----------------------------------------+```"),
122-
({"row_sep": "topbottom", "padding_width": 5, "padding_weight": "left"}, "```\n+------------------------------------------------------------+\n| title| time| date| seats|\n| Vrij Zwemmen| 21:30-23:00| Wed 09.12| 24/24|\n| Vrij Zwemmen| 12:00-13:00| Thu 10.12| 18/18|\n| Vrij Zwemmen| 7:30-8:30| Fri 11.12| 18/18|\n| Vrij Zwemmen| 13:15-14:15| Sat 12.12| 18/18|\n+------------------------------------------------------------+```"),
123-
({"row_sep": "topbottom", "padding_width": 5, "padding_weight": "centerright"}, "```\n+------------------------------------------------------------+\n| title | time | date | seats |\n| Vrij Zwemmen | 21:30-23:00 | Wed 09.12 | 24/24 |\n| Vrij Zwemmen | 12:00-13:00 | Thu 10.12 | 18/18 |\n| Vrij Zwemmen | 7:30-8:30 | Fri 11.12 | 18/18 |\n| Vrij Zwemmen | 13:15-14:15 | Sat 12.12 | 18/18 |\n+------------------------------------------------------------+```"),
124-
({"row_sep": "always", "padding_width": 5, "padding_weight": "centerright", "padding_char": "."}, "```\n+------------------------------------------------------------+\n|......title......|......time......|.....date.....|..seats...|\n+-----------------+----------------+--------------+----------+\n|..Vrij Zwemmen...|..21:30-23:00...|..Wed 09.12...|..24/24...|\n+-----------------+----------------+--------------+----------+\n|..Vrij Zwemmen...|..12:00-13:00...|..Thu 10.12...|..18/18...|\n+-----------------+----------------+--------------+----------+\n|..Vrij Zwemmen...|...7:30-8:30....|..Fri 11.12...|..18/18...|\n+-----------------+----------------+--------------+----------+\n|..Vrij Zwemmen...|..13:15-14:15...|..Sat 12.12...|..18/18...|\n+------------------------------------------------------------+```"),
125-
({"row_sep": "always", "padding_width": {"title": 2, "time": 4, "date": 3, "seats": 1}, "padding_weight": {"title": "left", "time": "right", "date": "centerleft", "seats": "centerright"}}, "```\n+--------------------------------------------------+\n| title|time | date |seats |\n+--------------+---------------+------------+------+\n| Vrij Zwemmen|21:30-23:00 | Wed 09.12 |24/24 |\n+--------------+---------------+------------+------+\n| Vrij Zwemmen|12:00-13:00 | Thu 10.12 |18/18 |\n+--------------+---------------+------------+------+\n| Vrij Zwemmen|7:30-8:30 | Fri 11.12 |18/18 |\n+--------------+---------------+------------+------+\n| Vrij Zwemmen|13:15-14:15 | Sat 12.12 |18/18 |\n+--------------------------------------------------+```"),
121+
({"row_sep": "topbottom", "padding_weight": "right"}, "```\n+------------+-----------+---------+-----+\n|title |time |date |seats|\n|Vrij Zwemmen|21:30-23:00|Wed 09.12|24/24|\n|Vrij Zwemmen|12:00-13:00|Thu 10.12|18/18|\n|Vrij Zwemmen|7:30-8:30 |Fri 11.12|18/18|\n|Vrij Zwemmen|13:15-14:15|Sat 12.12|18/18|\n+------------+-----------+---------+-----+```"),
122+
({"row_sep": "topbottom", "padding_width": 5, "padding_weight": "left"}, "```\n+-----------------+----------------+--------------+----------+\n| title| time| date| seats|\n| Vrij Zwemmen| 21:30-23:00| Wed 09.12| 24/24|\n| Vrij Zwemmen| 12:00-13:00| Thu 10.12| 18/18|\n| Vrij Zwemmen| 7:30-8:30| Fri 11.12| 18/18|\n| Vrij Zwemmen| 13:15-14:15| Sat 12.12| 18/18|\n+-----------------+----------------+--------------+----------+```"),
123+
({"row_sep": "topbottom", "padding_width": 5, "padding_weight": "centerright"}, "```\n+-----------------+----------------+--------------+----------+\n| title | time | date | seats |\n| Vrij Zwemmen | 21:30-23:00 | Wed 09.12 | 24/24 |\n| Vrij Zwemmen | 12:00-13:00 | Thu 10.12 | 18/18 |\n| Vrij Zwemmen | 7:30-8:30 | Fri 11.12 | 18/18 |\n| Vrij Zwemmen | 13:15-14:15 | Sat 12.12 | 18/18 |\n+-----------------+----------------+--------------+----------+```"),
124+
({"row_sep": "always", "padding_width": 5, "padding_weight": "centerright", "padding_char": "."}, "```\n+-----------------+----------------+--------------+----------+\n|......title......|......time......|.....date.....|..seats...|\n+-----------------+----------------+--------------+----------+\n|..Vrij Zwemmen...|..21:30-23:00...|..Wed 09.12...|..24/24...|\n+-----------------+----------------+--------------+----------+\n|..Vrij Zwemmen...|..12:00-13:00...|..Thu 10.12...|..18/18...|\n+-----------------+----------------+--------------+----------+\n|..Vrij Zwemmen...|...7:30-8:30....|..Fri 11.12...|..18/18...|\n+-----------------+----------------+--------------+----------+\n|..Vrij Zwemmen...|..13:15-14:15...|..Sat 12.12...|..18/18...|\n+-----------------+----------------+--------------+----------+```"),
125+
({"row_sep": "always", "padding_width": {"title": 2, "time": 4, "date": 3, "seats": 1}, "padding_weight": {"title": "left", "time": "right", "date": "centerleft", "seats": "centerright"}}, "```\n+--------------+---------------+------------+------+\n| title|time | date |seats |\n+--------------+---------------+------------+------+\n| Vrij Zwemmen|21:30-23:00 | Wed 09.12 |24/24 |\n+--------------+---------------+------------+------+\n| Vrij Zwemmen|12:00-13:00 | Thu 10.12 |18/18 |\n+--------------+---------------+------------+------+\n| Vrij Zwemmen|7:30-8:30 | Fri 11.12 |18/18 |\n+--------------+---------------+------------+------+\n| Vrij Zwemmen|13:15-14:15 | Sat 12.12 |18/18 |\n+--------------+---------------+------------+------+```"),
126126
])
127127
def test_formatting(params, expected_output):
128128
mt = markdown_table(formatting_data).set_params(**params).get_markdown()
129129
assert mt == expected_output
130130

131131

132-
133-
134132
@pytest.mark.parametrize("params, expected_output", [
135-
({"padding_width": 0, "padding_weight": "centerleft", "multiline": {"A": 25, "B": 12, "C": 9}}, "```\n+------------------------------------------------+\n| A | B | C |\n+-------------------------+------------+---------+\n| row1_A and additional | row1_B | row1_C |\n| stuff | | |\n+-------------------------+------------+---------+\n| row2_A | row2_B and | row2_C |\n| | additional | |\n| | stuff | |\n+-------------------------+------------+---------+\n| row3_A | row3_B | row3_C |\n+------------------------------------------------+```"),
136-
({"padding_width": 2, "padding_weight": "centerleft", "multiline": {"A": 25, "B": 12, "C": 9}}, "```\n+------------------------------------------------------------+\n| A | B | C |\n+-----------------------------+----------------+-------------+\n| row1_A and additional stuff | row1_B | row1_C |\n+-----------------------------+----------------+-------------+\n| row2_A | row2_B and | row2_C |\n| | additional | |\n| | stuff | |\n+-----------------------------+----------------+-------------+\n| row3_A | row3_B | row3_C |\n+------------------------------------------------------------+```"),
137-
({"row_sep": "always", "padding_width": {"A": 2, "B": 4, "C": 3}, "padding_weight": {"A": "left", "B": "right", "C": "centerleft"}}, "```\n+-----------------------------------------------------------------------+\n| A|B | C |\n+-----------------------------+-------------------------------+---------+\n| row1_A and additional stuff|row1_B | row1_C |\n+-----------------------------+-------------------------------+---------+\n| row2_A|row2_B and additional stuff | row2_C |\n+-----------------------------+-------------------------------+---------+\n| row3_A|row3_B | row3_C |\n+-----------------------------------------------------------------------+```"),
133+
({"padding_width": 0, "padding_weight": "centerleft", "multiline": {"A": 25, "B": 12, "C": 9}}, "```\n+-------------------------+------------+---------+\n| A | B | C |\n+-------------------------+------------+---------+\n| row1_A and additional | row1_B | row1_C |\n| stuff | | |\n+-------------------------+------------+---------+\n| row2_A | row2_B and | row2_C |\n| | additional | |\n| | stuff | |\n+-------------------------+------------+---------+\n| row3_A | row3_B | row3_C |\n+-------------------------+------------+---------+```"),
134+
({"padding_width": 2, "padding_weight": "centerleft", "multiline": {"A": 25, "B": 12, "C": 9}}, "```\n+-----------------------------+----------------+-------------+\n| A | B | C |\n+-----------------------------+----------------+-------------+\n| row1_A and additional stuff | row1_B | row1_C |\n+-----------------------------+----------------+-------------+\n| row2_A | row2_B and | row2_C |\n| | additional | |\n| | stuff | |\n+-----------------------------+----------------+-------------+\n| row3_A | row3_B | row3_C |\n+-----------------------------+----------------+-------------+```"),
135+
({"row_sep": "always", "padding_width": {"A": 2, "B": 4, "C": 3}, "padding_weight": {"A": "left", "B": "right", "C": "centerleft"}}, "```\n+-----------------------------+-------------------------------+---------+\n| A|B | C |\n+-----------------------------+-------------------------------+---------+\n| row1_A and additional stuff|row1_B | row1_C |\n+-----------------------------+-------------------------------+---------+\n| row2_A|row2_B and additional stuff | row2_C |\n+-----------------------------+-------------------------------+---------+\n| row3_A|row3_B | row3_C |\n+-----------------------------+-------------------------------+---------+```"),
138136
])
139137
def test_multiline_data(params, expected_output):
140138
mt = markdown_table(multiline_data).set_params(**params).get_markdown()
@@ -150,15 +148,15 @@ def test_multirow_header_data(params, expected_output):
150148

151149

152150
@pytest.mark.parametrize("params, expected_output", [
153-
({"row_sep": "topbottom", "emoji_spacing": "mono"}, "```\n+-----------------------------------------+\n| title | time | date | seats|\n|Vrij Zwemmen|21:30-23:00| 😊 | 24/24|\n|Vrij Zwemmen|12:00-13:00|Thu 10.12| 18/18|\n|Vrij Zwemmen| 7:30-8:30 |Fri 11.12|😊🌍🎉|\n|Vrij Zwemmen|13:15-14:15|Sat 12.12| 20/20|\n+-----------------------------------------+```"),
151+
({"row_sep": "topbottom", "emoji_spacing": "mono"}, "```\n+------------+-----------+---------+------+\n| title | time | date | seats|\n|Vrij Zwemmen|21:30-23:00| 😊 | 24/24|\n|Vrij Zwemmen|12:00-13:00|Thu 10.12| 18/18|\n|Vrij Zwemmen| 7:30-8:30 |Fri 11.12|😊🌍🎉|\n|Vrij Zwemmen|13:15-14:15|Sat 12.12| 20/20|\n+------------+-----------+---------+------+```"),
154152
])
155153
def test_emoji_data(params, expected_output):
156154
mt = markdown_table(emoji_data).set_params(**params).get_markdown()
157155
assert mt == expected_output
158156

159157

160158
@pytest.mark.parametrize("params, expected_output", [
161-
({"row_sep": "topbottom", "emoji_spacing": "mono", "multiline": {"title that is maybe too long": 7, "time": 11, "date": 5, "seats": 5}, "multiline_strategy": "rows_and_header"}, "```\n+-------------------------------+\n| title | time | date|seats|\n|that is| | | |\n| maybe | | | |\n| too | | | |\n| long | | | |\n| Vrij |21:30-23:00| 😊 |24/24|\n|Zwemmen| | | |\n| Vrij |12:00-13:00| Thu |18/18|\n|Zwemmen| |10.12| |\n| Vrij | 7:30-8:30 | Fri | 😊 |\n|Zwemmen| |11.12|🌍 🎉|\n| Vrij |13:15-14:15| Sat |20/20|\n|Zwemmen| |12.12| |\n| Vrij | 7:30-8:30 | Fri | asd |\n|Zwemmen| |11.12| 😊-|\n| | | | 🌍: |\n| | | | 🎉 |\n|Zwemmen|13:15-14:15| Sat |20/20|\n| | |12.12| |\n+-------------------------------+```"),
159+
({"row_sep": "topbottom", "emoji_spacing": "mono", "multiline": {"title that is maybe too long": 7, "time": 11, "date": 5, "seats": 5}, "multiline_strategy": "rows_and_header"}, "```\n+-------+-----------+-----+-----+\n| title | time | date|seats|\n|that is| | | |\n| maybe | | | |\n| too | | | |\n| long | | | |\n| Vrij |21:30-23:00| 😊 |24/24|\n|Zwemmen| | | |\n| Vrij |12:00-13:00| Thu |18/18|\n|Zwemmen| |10.12| |\n| Vrij | 7:30-8:30 | Fri | 😊 |\n|Zwemmen| |11.12|🌍 🎉|\n| Vrij |13:15-14:15| Sat |20/20|\n|Zwemmen| |12.12| |\n| Vrij | 7:30-8:30 | Fri | asd |\n|Zwemmen| |11.12| 😊-|\n| | | | 🌍: |\n| | | | 🎉 |\n|Zwemmen|13:15-14:15| Sat |20/20|\n| | |12.12| |\n+-------+-----------+-----+-----+```"),
162160
])
163161
def test_emoji_multiline_data(params, expected_output):
164162
mt = markdown_table(emoji_multiline_data).set_params(**params).get_markdown()

0 commit comments

Comments
 (0)