@@ -114,27 +114,25 @@ def test_bad_data(data):
114
114
115
115
116
116
@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 +------------+ -----------+ ---------+ -----+```" ),
119
119
({"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|```" ),
120
120
({"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 +--------------+ ---------------+ ------------+ ------+```" ),
126
126
])
127
127
def test_formatting (params , expected_output ):
128
128
mt = markdown_table (formatting_data ).set_params (** params ).get_markdown ()
129
129
assert mt == expected_output
130
130
131
131
132
-
133
-
134
132
@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 +-----------------------------+ -------------------------------+ ---------+```" ),
138
136
])
139
137
def test_multiline_data (params , expected_output ):
140
138
mt = markdown_table (multiline_data ).set_params (** params ).get_markdown ()
@@ -150,15 +148,15 @@ def test_multirow_header_data(params, expected_output):
150
148
151
149
152
150
@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 +------------+ -----------+ ---------+ ------+```" ),
154
152
])
155
153
def test_emoji_data (params , expected_output ):
156
154
mt = markdown_table (emoji_data ).set_params (** params ).get_markdown ()
157
155
assert mt == expected_output
158
156
159
157
160
158
@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 +-------+ -----------+ -----+ -----+```" ),
162
160
])
163
161
def test_emoji_multiline_data (params , expected_output ):
164
162
mt = markdown_table (emoji_multiline_data ).set_params (** params ).get_markdown ()
0 commit comments